#include <CalibMicrorocParser.hh>
Inheritance diagram for CalibMicrorocParser:
Public Member Functions | |
CalibMicrorocParser (Run &aRun, FILE *aFile, ui32 firstEventId, bool _testMicroroc=false) | |
virtual | ~CalibMicrorocParser () |
int | getNextEvent (Event &eventToFill) |
Static Public Member Functions | |
static const char * | type () |
Protected Member Functions | |
int | getLine (FILE *file, std::string &line) |
Private Member Functions | |
unsigned int | getData (FILE *inputFile, const int nBytes, bool computeCRC=true) |
unsigned int | getDecimalData (FILE *inputFile, const int nBytes) |
unsigned int | checkData (FILE *inputFile, const int nBytes) |
int | getDacValue (std::string line) |
void | setMotifValue (std::string line) |
void | setChargeValue (std::string line) |
unsigned int | grayToBinary (unsigned int gray) |
int | newHit (Event &event, const Detector &detector, int data, const int chNum, const int chipId, const int difId) |
std::string | binaire (unsigned int nombre) |
void | reset () |
void | initParsing (FILE *inputFile) |
bool | checkNextLine (FILE *inputFile, std::string target) |
virtual std::string | getCtestString (void) |
Private Attributes | |
MicrorocSCReader * | scReader |
bool | init |
bool | motif [MOTIFNB] |
float | charge |
bool | newCalibration |
bool | newDif |
bool | newHR |
int | difId |
int | dac [3] |
char | shaper [2] |
bool | testMicroroc |
Definition at line 32 of file CalibMicrorocParser.hh.
CalibMicrorocParser::CalibMicrorocParser | ( | Run & | aRun, | |
FILE * | aFile, | |||
ui32 | firstEventId, | |||
bool | _testMicroroc = false | |||
) |
Definition at line 55 of file CalibMicrorocParser.cpp.
00056 : AcquisitionParser(aRun, aFile, _firstEventId), scReader(NULL) 00057 { 00058 00059 testMicroroc = _testMicroroc; 00060 run.setCalibrationRun(true); 00061 run.setName("Microroc calibration Run"); 00062 00063 reset(); 00064 }
CalibMicrorocParser::~CalibMicrorocParser | ( | ) | [virtual] |
static const char* CalibMicrorocParser::type | ( | ) | [inline, static] |
Reimplemented in TestMicrorocParser.
Definition at line 38 of file CalibMicrorocParser.hh.
Referenced by main().
00038 { return CALIBMICRORC; }
int CalibMicrorocParser::getNextEvent | ( | Event & | eventToFill | ) | [virtual] |
Implements AcquisitionParser.
Reimplemented in TestMicrorocParser.
Definition at line 252 of file CalibMicrorocParser.cpp.
Referenced by TestMicrorocParser::getNextEvent().
00253 { 00254 unsigned int nbHits = 0; 00255 // The first line does not contains needed informations 00256 // init fill the motifCtest and place streaming just before the first event 00257 if ( ! init) 00258 { 00259 initParsing(inputFile); 00260 init = true; 00261 } 00262 00263 string line; 00264 00265 if ( newCalibration) 00266 { // get calibration parameters ( DAC_2, DAC_1, D AC_0 values ) 00267 FILE_LOG(logDEBUG1) << "New calibration !" << endl; 00268 size_t found; 00269 00270 do 00271 { 00272 int result = getLine ( inputFile, line); 00273 if (result == EOF) 00274 { 00275 FILE_LOG(logDEBUG1) << "End of file !" << endl; 00276 reset(); 00277 FILE_LOG(logDEBUG1) << "return LAST_FILE_EVENT:[" << LAST_FILE_EVENT << endl; 00278 return LAST_FILE_EVENT; 00279 } 00280 00281 // Get DAC_2 00282 found=line.find("DAC_2"); 00283 } 00284 while (found==string::npos); 00285 00286 dac[0] = -1; 00287 dac[1] = -1; 00288 dac[2] = getDacValue(line); 00289 00290 // Get DAC_1 00291 if ( getLine ( inputFile, line) != EOF ) 00292 { 00293 if ( line.find("DAC_1")!=string::npos) { dac[1] = getDacValue(line); } 00294 else { return EVENT_ERROR; } // DAC_1 value not found 00295 } 00296 00297 // Get DAC_0 00298 if ( getLine ( inputFile, line) != EOF ) 00299 { 00300 if ( line.find("DAC_0")!=string::npos) { dac[0] = getDacValue(line); } 00301 else { return EVENT_ERROR; } // DAC_0 value not found 00302 } 00303 FILE_LOG(logDEBUG) << "dac_2[" << dac[2] << "]" << endl; 00304 FILE_LOG(logDEBUG) << "dac_1[" << dac[1] << "]" << endl; 00305 FILE_LOG(logDEBUG) << "dac_0[" << dac[0] << "]" << endl; 00306 // Set chip configuration 00307 const Detector &detector = run.getDetector(); 00308 try { 00309 ChamberMap_t chambers = detector.getChambers(); 00310 for (ChamberMap_t::iterator chamberIt = chambers.begin(); chamberIt != chambers.end(); chamberIt++) { 00311 Chamber& chamber = *chamberIt->second; 00312 DifMap_t difs = chamber.getDifs(); 00313 for (DifMap_t::iterator difIt = difs.begin(); difIt != difs.end(); difIt++) { 00314 Dif& dif = *difIt->second; 00315 BoardMap_t boards = dif.getBoards(); 00316 for (BoardMap_t::iterator boardIt = boards.begin(); boardIt != boards.end(); boardIt++) { 00317 Board& b = *boardIt->second; 00318 ChipMap_t chips = b.getChips(); 00319 for (ChipMap_t::iterator chipIt = chips.begin(); chipIt != chips.end(); chipIt++) { 00320 MicrorocChip &chip = dynamic_cast<MicrorocChip &> (*chipIt->second); 00321 chip.setThresholdDac_0(dac[0]); 00322 chip.setThresholdDac_1(dac[1]); 00323 chip.setThresholdDac_2(dac[2]); 00324 //for (int chNum = 0; chNum < 64; chNum++) { 00325 // Channel& ch = chip.getChannelById(chNum); 00326 // ch.setEnable(1); 00327 //} 00328 } 00329 } 00330 } 00331 } 00332 } 00333 catch (MicroException &e) { cout << e.getMessage() << endl; } 00334 00335 newCalibration = false; // nany event could be attach to these calibration parametre ( DAC_2 ... ) 00336 return NEW_CONFIG; 00337 } // end if new calibratio 00338 if ( newDif) 00339 { 00340 FILE_LOG(logDEBUG1) << "New Dif !" << endl; 00341 // Place file streamer after B4 00342 int space = 0; // nb bytes beetween B4 and B0 tags 00343 int b0Pos = 6; // B0 tag position 00344 bool find = false; 00345 do 00346 { 00347 b0Pos = ftell(inputFile); 00348 00349 FILE_LOG(logDEBUG) << "inputFile [" << inputFile << "]" << endl; 00350 FILE_LOG(logDEBUG) << "b0Pos [" << b0Pos << "]" << endl; 00351 if (getLine ( inputFile, line) == EOF) { 00352 return(LAST_FILE_EVENT); 00353 } 00354 //FILE_LOG(logINFO) << "line[" << line << "]" << endl; 00355 // On verifie que l'on ne retombe pas sur le mot DAC_2, ce qui ce produit si aucune Dif n'a repondu ( du a un BUG ) 00356 00357 if (checkNextLine(inputFile,"DAC_") ) 00358 { 00359 newCalibration = true; 00360 FILE_LOG(logWARNING) << "No data for DAC values:[" << dac[0] << "," << dac[1] << "," << dac[2] << "]" << endl; 00361 return getNextEvent( event); 00362 } 00363 00364 int b0find = line.find("B0",18); 00365 FILE_LOG(logDEBUG) << "b0find [" << b0find << "]" << endl; 00366 int b4pos = 0; 00367 do 00368 { 00369 b4pos = line.find("B4",b4pos+1); 00370 FILE_LOG(logDEBUG) << "b4pos [" << b4pos << "]" << endl; 00371 FILE_LOG(logDEBUG) << "b4pos - b0find [" << b4pos - b0find << "]" << endl; 00372 00373 ui16 gap = 48; 00374 00375 if ( testMicroroc == true ) { gap = 46 ;} 00376 00377 if ( b4pos - b0find == gap ) 00378 { 00379 find = true; 00380 } 00381 } 00382 while (b4pos != string::npos && find == false ); 00383 } 00384 while ( !find ); 00385 00386 b0Pos = b0Pos + 18 + 2 ; // position du B0 00387 FILE_LOG(logDEBUG) << " b0Pos = b0Pos + 18 + 2 [" << b0Pos << "]" << endl; 00388 fseek(inputFile, b0Pos, SEEK_SET); 00389 00390 // File after position "B0" 00391 // Here we are sure to be at the correct position in the file to start 00392 00393 this->setComputeCrcFlag(true); 00394 00395 FILE_LOG(logDEBUG) << "crc->compute(0xB0)[ "<< crc <<"]" << endl; 00396 crc->compute(0xB0); 00397 00398 // New DIF 00399 difId = getData(inputFile, 1); 00400 if ( scReader ) { scReader->parseSC(difId); } 00401 FILE_LOG(logDEBUG) << "!!! difId[0x"<< hex << difId << "]" << endl; 00402 00403 //fseek(inputFile, 42, SEEK_CUR); 00404 //fseek(inputFile, 44, SEEK_CUR); 00405 ui16 skip = 22; 00406 if ( testMicroroc == true ) { skip = 21 ;} 00407 for ( int i = 0 ; i < skip ; i++) { 00408 int foo = getData(inputFile,1); 00409 // FILE_LOG(logINFO) << (hex) << " foo[" << foo << "]" << endl; 00410 } 00411 // Fichier avant la position "B4" 00412 // New B4 Tag 00413 00414 int dataHeader = getData(inputFile, 1); 00415 FILE_LOG(logDEBUG1) << (hex) << " dataHeader[" << dataHeader << "]" << endl; 00416 00417 if (dataHeader == 0xB4) 00418 { 00419 FILE_LOG(logDEBUG1) << " data header B4 found" << endl; 00420 } 00421 else 00422 { 00423 FILE_LOG(logERROR) << " parsing file error. data header error : " << hex << dataHeader << dec << endl; 00424 return EVENT_ERROR; 00425 } 00426 00427 newDif = false; 00428 } 00429 00430 00431 00432 if ( newHR) 00433 { 00434 FILE_LOG(logDEBUG) << "New MR !" << endl; 00435 00436 // VERIF TAG A3 pas de skip. Dans le cas ou aucun des chips ne repond 00437 // if ( checkData(inputFile, 1) == 0xA3) 00438 // { 00439 // FILE_LOG(logERROR) << "ERROR TAG A3 just after newHR for DAC values:[" << dac[0] << "," << dac[1] << "," << dac[2] << "]" << endl; 00440 // return EVENT_ERROR; 00441 // } 00442 // On skip les insultes du microroc 00443 //fseek ( inputFile, 40, SEEK_CUR); 00444 newHR = false; 00445 } 00446 00447 00448 // On Verifie en hexadecimal que l'on a pas de tag A0 00449 // Pour une Dif, lit ChipId + BCId + donnee 00450 // get Chip Id. Warning ! Decimal 00451 00452 int chipId = -1; 00453 // On doit lire 2 fois car le tag A3 est en Hexedecimal alors que le chipId est en decimal 00454 int foo = getData(inputFile , 1); 00455 if ( foo == 0xA3) 00456 { // Fin de donnees chip(HR) 00457 FILE_LOG(logDEBUG) << " -------- TAG A3 force newHR to true " << endl; 00458 newHR = true; 00459 foo = getData(inputFile , 1); 00460 if ( foo == 0xA0 ) 00461 { 00462 newDif = true; 00463 FILE_LOG(logDEBUG1) << " -------- Tag A0 derriere A3 " << endl; 00464 // Stop CRC computation 00465 00466 this->setComputeCrcFlag(false); 00467 unsigned short CRC_check = getData(inputFile , 2 ); // READ CRC 00468 FILE_LOG(logDEBUG1) << hex << " Compute CRC[" << crc->getCrc() << "]" << endl; 00469 FILE_LOG(logDEBUG1) << hex << " Received CRC[" << CRC_check << "]" << endl; 00470 if ( CRC_check != crc->getCrc() ) 00471 { 00472 FILE_LOG(logERROR) << " CRC Error " << endl; 00473 exit(-1); 00474 } 00475 00476 try { 00477 foo = getData(inputFile, 1 ); 00478 } 00479 catch ( MicroException &e) 00480 { 00481 foo = 0; 00482 } 00483 if ( foo != 0xB0) 00484 { 00485 // On verifie si apres la ligne separatrice "-----------------"c'est une nouvelle acquisition on des nouvelles valeur de DAC 00486 if ( getLine ( inputFile, line) == EOF ) { return LAST_FILE_EVENT ;} // ligne separatrice --------------- 00487 if (checkNextLine(inputFile,"acquisition") ) 00488 { 00489 newDif = true; 00490 } 00491 else 00492 { 00493 newCalibration = true; 00494 FILE_LOG(logDEBUG1) << " -------- Pas de B0 derrire le CRC donc newCalibration = true " << endl; 00495 } 00496 } 00497 else 00498 { 00499 FILE_LOG(logDEBUG1) << " -------- B0 derrire le CRC donc Dif " << endl; 00500 } 00501 } 00502 return getNextEvent( event); 00503 } 00504 else 00505 { // Pas Fin de donnees chip(HR) 00506 fseek ( inputFile, -2, SEEK_CUR); 00507 chipId = getData(inputFile, 1, false); 00508 00509 00510 // get bcid 00511 int bcId = getData(inputFile, 3); 00512 FILE_LOG(logDEBUG1) << (hex) << " bcid[" << bcId << "]" << endl; 00513 00514 00515 // the following data is repeated one time for each Dif which has sent data 00516 00517 bool difFound = false; 00518 Detector& detector = run.getDetector(); 00519 { const ChamberMap_t &chambers = detector.getChambers(); 00520 for (ChamberMap_t::const_iterator it = chambers.begin(); it != chambers.end(); ++it) { 00521 try { 00522 Chamber& chamber = *(it->second); 00523 const BoardMap_t& boards = chamber.getBoardsByDifId(difId); 00524 } 00525 catch (...) { 00526 // any error case - try next chamber 00527 continue; 00528 } 00529 00530 // the DIF has been found in a chamber. Process all data and continue 00531 difFound = true; 00532 break; 00533 } // for 00534 if (!difFound) { 00535 FILE_LOG(logERROR) << " No dif found with Id 0x" << hex << difId << dec << endl; 00536 return EVENT_ERROR; 00537 } 00538 } 00539 00540 // trigger data for 64 channels : 1 bit trigger1, 1 bit trigger0 for each channel from 63 downto 0. 00541 // this makes 2-bit values which should not give bit 1 without bit 0 00542 00543 int canal[16]={0}; 00544 for (int chNum = 48; chNum >= 0; chNum -= 16) { 00545 unsigned int data4; 00546 try { 00547 data4 = getData(inputFile, 4); // on lit 4 Bytes => 8 cara => 16 cannaux 00548 } 00549 catch ( MicroException &e) 00550 { 00551 continue; 00552 } 00553 00554 00555 int index = 0; 00556 for ( index = 0; index <= 15 ; index++) 00557 { 00558 // sur les 16 canaux, on recupere les donnees canal par canal 00559 canal[index] = (data4 >> ((15 - index )* 2 )) & 0x03; // 2 Most Significant Bits of the digi 00560 00561 // MODIF BY RENAUD 9 march 2012 to deal with 2 testboard without changing Labview 00562 // if ( motif[index+chNum]) 00563 { 00564 // if (canal[index]!=0){ 00565 { 00566 if ( newHit(event, detector, canal[index], index + chNum , chipId, difId) != 1 ) 00567 { 00568 // Format de donées non valid, on cherche une balise A3 pour tenter de recuperer les prochain evemements 00569 try 00570 { 00571 foo = getData(inputFile, 1) ; 00572 while ( foo != 0xA3 ) 00573 { 00574 foo = getData(inputFile, 1) ; 00575 } 00576 } 00577 catch ( MicroException &e) 00578 { 00579 FILE_LOG(logINFO) << "End of line 0xA3 not Found !!!" << endl; 00580 newDif = true; 00581 // event.setId(++lastEventId); 00582 //FILE_LOG(logDEBUG1) << " STORE EVENT " << lastEventId << ", " << nbHits << " hits" << endl; 00583 //return EVENT_CORRECT; 00584 } 00585 } 00586 else 00587 {//, dac); 00588 nbHits++; 00589 }} 00590 } 00591 } 00592 } 00593 00594 event.setId(++lastEventId); 00595 FILE_LOG(logDEBUG1) << " STORE EVENT " << lastEventId << ", " << nbHits << " hits" << endl; 00596 return EVENT_CORRECT; 00597 } 00598 00599 }
unsigned int CalibMicrorocParser::getData | ( | FILE * | inputFile, | |
const int | nBytes, | |||
bool | computeCRC = true | |||
) | [private] |
Definition at line 632 of file CalibMicrorocParser.cpp.
Referenced by checkData(), and getNextEvent().
00632 { 00633 unsigned int result = 0; 00634 for (int byte = 0; byte < nBytes; ++byte) { 00635 int data = 0; 00636 if (fscanf(inputFile, "%2x", &data) != 1) { 00637 throw MicroException("get data: fcanf error"); 00638 00639 // return(0); 00640 } 00641 result = (result << 8) + data; 00642 if ( computeCrc && computeCRC) { 00643 crc->compute(data) ; 00644 } 00645 00646 } 00647 return(result); 00648 }
unsigned int CalibMicrorocParser::getDecimalData | ( | FILE * | inputFile, | |
const int | nBytes | |||
) | [private] |
Definition at line 653 of file CalibMicrorocParser.cpp.
00653 { 00654 unsigned int result = 0; 00655 for (int byte = 0; byte < nBytes; ++byte) { 00656 int data = 0; 00657 if (fscanf(inputFile, "%2d", &data) != 1) { 00658 return(0); 00659 } 00660 result = (result << 8) + data; 00661 } 00662 return(result); 00663 }
unsigned int CalibMicrorocParser::checkData | ( | FILE * | inputFile, | |
const int | nBytes | |||
) | [private] |
int CalibMicrorocParser::getDacValue | ( | std::string | line | ) | [private] |
Referenced by getNextEvent().
void CalibMicrorocParser::setMotifValue | ( | std::string | line | ) | [private] |
Referenced by initParsing().
void CalibMicrorocParser::setChargeValue | ( | std::string | line | ) | [private] |
Referenced by initParsing().
unsigned int CalibMicrorocParser::grayToBinary | ( | unsigned int | gray | ) | [private] |
Reimplemented from AcquisitionParser.
int CalibMicrorocParser::newHit | ( | Event & | event, | |
const Detector & | detector, | |||
int | data, | |||
const int | chNum, | |||
const int | chipId, | |||
const int | difId | |||
) | [private] |
Definition at line 668 of file CalibMicrorocParser.cpp.
Referenced by getNextEvent().
00669 { 00670 00671 if ( data != 0 ) 00672 { 00673 const ChamberMap_t &chambers = detector.getChambers(); 00674 for (ChamberMap_t::const_iterator it = chambers.begin(); it != chambers.end(); ++it) { 00675 try { 00676 Chamber& chamber = *(it->second); 00677 const BoardMap_t& boards = chamber.getBoardsByDifId(difId); 00678 // look for type of chamber 00679 //if (chamber.getType() != HARDROC1CHAMBER) 00680 // continue; 00681 // store new event data 00682 try { 00683 const Channel& channel = chamber.getChannelById(chNum, chipId, difId); 00684 i16 analogValue = 0; 00685 //ChannelHit *hit = new ChannelHit(channel, data, analogValue, dac); 00686 ChannelHit *hit = new ChannelHit(channel, data, analogValue); 00687 event.insertHit(chamber, hit); 00688 FILE_LOG(logDEBUG1) << " new Hit : ch " << chNum << ", chip " << chipId << ", dif " << difId 00689 << " Data=" << data << " , x:" << channel.getX() << ", y:" << channel.getY() << endl; 00690 return(1); 00691 } 00692 catch (MicroException &e) { 00693 FILE_LOG(logERROR) << "ch " << chNum << ", chip " << chipId << ", dif " << difId << " : " << e.getMessage() << endl; 00694 return(0); 00695 } 00696 } 00697 catch (...) { 00698 continue; 00699 } 00700 00701 } // for 00702 00703 return(0); 00704 } 00705 else 00706 { 00707 return 1; 00708 } 00709 }
string CalibMicrorocParser::binaire | ( | unsigned int | nombre | ) | [private] |
Definition at line 715 of file CalibMicrorocParser.cpp.
00716 { 00717 string res = ""; 00718 unsigned int val = nombre; 00719 00720 while (val != 0) { 00721 /* Invariant de boucle : code_binaire(val) + res = code_binaire(nombre) */ 00722 00723 if (val & 1 == 1) { 00724 res = string("1") + res; 00725 } 00726 else { 00727 /* val & 1 == 0 */ 00728 res = string("0") + res; 00729 } 00730 00731 val = val >> 1; 00732 } 00733 return res; 00734 }
void CalibMicrorocParser::reset | ( | ) | [private] |
Definition at line 73 of file CalibMicrorocParser.cpp.
Referenced by CalibMicrorocParser(), and getNextEvent().
00074 { 00075 init = false; 00076 newCalibration = true; 00077 newDif = true; 00078 newHR = true; 00079 FILE_LOG(logDEBUG) << " -------- reset force newHR to true " << endl; 00080 difId = -1; 00081 dac[0] = -1; 00082 dac[1] = -1; 00083 dac[2] = -1; 00084 shaper[0] = -1; 00085 shaper[1] = -1; 00086 difId = -1; 00087 charge = 0.; 00088 00089 for ( int i = 0; i < MOTIFNB; i++) 00090 { 00091 motif[i] = 0; 00092 } 00093 00094 00095 }
void CalibMicrorocParser::initParsing | ( | FILE * | inputFile | ) | [private] |
Definition at line 169 of file CalibMicrorocParser.cpp.
Referenced by getNextEvent().
00170 { 00171 00172 string line; 00173 size_t found; 00174 // search charge (fC) 00175 do 00176 { 00177 if ( getLine ( inputFile, line) == EOF ) { return ;} 00178 found = line.find("charge (fC)" ); 00179 if (found!=string::npos) 00180 { 00181 setChargeValue(line); 00182 } 00183 line.clear(); 00184 } 00185 while (found==string::npos); 00186 do 00187 { 00188 if ( getLine ( inputFile, line) == EOF ) { return ;} 00189 found = line.find("Chips en calibration" ); 00190 line.clear(); 00191 } 00192 while (found==string::npos); 00193 00194 // get motifCTest 00195 if ( getLine ( inputFile, line) == EOF ) { return ;} 00196 found = line.find(getCtestString() ); 00197 if (found!=string::npos) 00198 { 00199 setMotifValue(line); 00200 } 00201 else { 00202 found = line.find(CalibMicrorocParser::getCtestString() ); 00203 if (found!=string::npos) 00204 { 00205 setMotifValue(line); 00206 } 00207 } 00208 00209 00210 // Find slow control data 00211 do 00212 { 00213 if ( getLine ( inputFile, line) == EOF ) { return ;} 00214 found = line.find("donnees Slow-Control" ); 00215 line.clear(); 00216 } 00217 while (found==string::npos); 00218 // "donnees Slow-Control" found get value in following line 00219 if ( getLine ( inputFile, line) == EOF ) { return ;} 00220 // supression du retour chariot 00221 line = line.substr(0, line.size()); 00222 //difId=80; 00223 //run.getDetector().getChambers().begin().first.getDifs().begin().fisrt.getId(); 00224 scReader = new MicrorocSCReader(run,line,difId); 00225 00226 }
bool CalibMicrorocParser::checkNextLine | ( | FILE * | inputFile, | |
std::string | target | |||
) | [private] |
Referenced by getNextEvent().
virtual std::string CalibMicrorocParser::getCtestString | ( | void | ) | [inline, private, virtual] |
Reimplemented in TestMicrorocParser.
Definition at line 58 of file CalibMicrorocParser.hh.
Referenced by initParsing().
int CalibMicrorocParser::getLine | ( | FILE * | file, | |
std::string & | line | |||
) | [protected] |
Referenced by TestMicrorocParser::getNextEvent(), getNextEvent(), and initParsing().
MicrorocSCReader* CalibMicrorocParser::scReader [private] |
Definition at line 58 of file CalibMicrorocParser.hh.
Referenced by getNextEvent(), and initParsing().
bool CalibMicrorocParser::init [private] |
bool CalibMicrorocParser::motif[MOTIFNB] [private] |
float CalibMicrorocParser::charge [private] |
bool CalibMicrorocParser::newCalibration [private] |
bool CalibMicrorocParser::newDif [private] |
bool CalibMicrorocParser::newHR [private] |
int CalibMicrorocParser::difId [private] |
Definition at line 69 of file CalibMicrorocParser.hh.
Referenced by getNextEvent(), initParsing(), and reset().
int CalibMicrorocParser::dac[3] [private] |
char CalibMicrorocParser::shaper[2] [private] |
bool CalibMicrorocParser::testMicroroc [private] |
Definition at line 72 of file CalibMicrorocParser.hh.
Referenced by CalibMicrorocParser(), and getNextEvent().