/[PAMELA software]/yoda/techmodel/TmtcReader.cpp
ViewVC logotype

Diff of /yoda/techmodel/TmtcReader.cpp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 6.3 by kusanagi, Tue May 30 19:10:03 2006 UTC revision 6.4 by mocchiut, Fri Sep 29 10:19:27 2006 UTC
# Line 1  Line 1 
1  /** @file  /** @file
2   * $Source: /home/cvsmanager/yoda/techmodel/TmtcReader.cpp,v $   * $Source: /afs/ba.infn.it/user/pamela/src/CVS/yoda/techmodel/TmtcReader.cpp,v $
3   * $Id: TmtcReader.cpp,v 6.2 2006/05/30 19:10:02 kusanagi Exp $   * $Id: TmtcReader.cpp,v 6.3 2006/05/30 19:10:03 kusanagi Exp $
4   * $Author: kusanagi $   * $Author: kusanagi $
5   *   *
6   * Implementation of the TmtcReader class.   * Implementation of the TmtcReader class.
# Line 30  TmtcReader::TmtcReader(void): Line 30  TmtcReader::TmtcReader(void):
30   */   */
31  std::string TmtcReader::GetVersionInfo(void) const {  std::string TmtcReader::GetVersionInfo(void) const {
32    return    return
33      "$Header: /home/cvsmanager/yoda/techmodel/TmtcReader.cpp,v 6.2 2006/05/30 19:10:02 kusanagi Exp $\n";      "$Header: /afs/ba.infn.it/user/pamela/src/CVS/yoda/techmodel/TmtcReader.cpp,v 6.3 2006/05/30 19:10:03 kusanagi Exp $\n";
34  }  }
35    
36  /**  /**
# Line 66  void TmtcReader::RunEvent(int EventNumbe Line 66  void TmtcReader::RunEvent(int EventNumbe
66      UINT16    readCRC = 0;    //partial CRC updated as mcmd packet is read (to compare with the last two bytes of this event)      UINT16    readCRC = 0;    //partial CRC updated as mcmd packet is read (to compare with the last two bytes of this event)
67      for(int i = 0; i < numRecords; i++) {      for(int i = 0; i < numRecords; i++) {
68          start = InputFile->tellg();          start = InputFile->tellg();
69            memset(subData,  0, sizeof(subData));
70          InputFile->read(subData, sizeof(subData));          InputFile->read(subData, sizeof(subData));
71            memset(CRCbuff,  0, sizeof(CRCbuff));
72          InputFile->read(CRCbuff, sizeof(CRCbuff));          InputFile->read(CRCbuff, sizeof(CRCbuff));
73                    
74          partialCRC = CM_Compute_CRC16(partialCRC, (UINT8*)&subData, TMTC_SUB_LENGTH);          partialCRC = CM_Compute_CRC16(partialCRC, (UINT8*)&subData, TMTC_SUB_LENGTH);
# Line 94  void TmtcReader::RunEvent(int EventNumbe Line 96  void TmtcReader::RunEvent(int EventNumbe
96              logger->warn(oss.str().c_str());              logger->warn(oss.str().c_str());
97          }          }
98      }          }    
99        memset(eventCRC,  0, sizeof(eventCRC));
100      InputFile->read(eventCRC, sizeof(eventCRC));      InputFile->read(eventCRC, sizeof(eventCRC));
101      readCRC = (((UINT16)(eventCRC[0]<<8))&0xFF00) + (((UINT16)eventCRC[1])&0x00FF);      readCRC = (((UINT16)(eventCRC[0]<<8))&0xFF00) + (((UINT16)eventCRC[1])&0x00FF);
102      if(partialCRC != readCRC) throw WrongCRCException(" Wrong Global CRC for TMTC Packet ");      if(partialCRC != readCRC) throw WrongCRCException(" Wrong Global CRC for TMTC Packet ");

Legend:
Removed from v.6.3  
changed lines
  Added in v.6.4

  ViewVC Help
Powered by ViewVC 1.1.23