|
ATLAS Offline Software
|
#include <LArRodBlockPhysicsV6.h>
|
enum | {
NWTot,
NWTot_h,
FEBID,
FEBID_h,
FEB_SN,
FEB_SN_h,
ResultsOff1,
ResultsDim1,
ResultsOff2,
ResultsDim2,
RawDataBlkOff,
RawDataBlkDim,
EventStatus,
EventStatus_h,
NGains,
NSamples,
FirstSampleIndex,
FebConfig,
InFPGAFormat,
InFPGAFormat_h,
endtag
} |
|
|
| LArRodBlockPhysicsV6 () |
|
std::string | BlockType () |
|
virtual int | getNextEnergy (int &channelNumber, int32_t &energy, int32_t &time, int32_t &quality, uint32_t &gain) |
|
virtual int | getNextRawData (int &channelNumber, std::vector< short > &samples, uint32_t &gain) |
|
int | getNextDigits (int &channelNumber, std::vector< short > &samples, uint32_t &gain) |
|
virtual uint16_t | getResults1Size () const |
|
virtual uint16_t | getResults2Size () const |
|
virtual uint16_t | getRawDataSize () const |
|
virtual uint16_t | getNbSweetCells1 () const |
|
virtual uint16_t | getNbSweetCells2 () const |
|
virtual uint32_t | getNumberOfSamples () const |
|
virtual uint32_t | getNumberOfGains () const |
|
virtual uint32_t | getRadd (uint32_t adc, uint32_t sample) const |
|
virtual uint16_t | getCtrl1 (uint32_t adc) const |
|
virtual uint16_t | getCtrl2 (uint32_t adc) const |
|
virtual uint16_t | getCtrl3 (uint32_t adc) const |
|
virtual uint32_t | getStatus () const |
|
virtual uint32_t | hasCalibBlock () const |
|
virtual uint32_t | hasPhysicsBlock () const |
|
virtual uint32_t | hasRawDataBlock () const |
|
virtual uint32_t | hasControlWords () const |
|
virtual int | FebToRodChannel (int ch) const |
|
virtual int32_t | getEx () const |
|
virtual int32_t | getEy () const |
|
virtual int32_t | getEz () const |
|
virtual int32_t | getSumE () const |
|
virtual uint32_t | getVROBFebId () |
|
virtual int32_t | getVROBEx () const |
|
virtual int32_t | getVROBEy () const |
|
virtual int32_t | getVROBEz () const |
|
virtual int32_t | getVROBSumE () const |
|
virtual int | setGain (const int) |
|
void | initializeFragment (std::vector< uint32_t > &fragment) |
|
void | initializeFEB (const uint32_t id) |
|
void | setNextEnergy (const int channel, const int32_t energy, const int32_t time, const int32_t quality, const uint32_t gain) |
|
void | setRawData (const int, const std::vector< short > &, const uint32_t) |
|
void | finalizeFEB () |
|
void | concatinateFEBs () |
|
virtual void | setEx (double) |
|
virtual void | setEy (double) |
|
virtual void | setEz (double) |
|
virtual void | setSumE (double) |
|
void | setRequiredNSamples (unsigned short ns) |
|
template<class RAWDATA > |
bool | operator() (const RAWDATA *ch1, const RAWDATA *ch2) const |
|
void | sortDataVector (std::vector< const LArDigit * > &vDigit) |
|
uint16_t | getFebConfig () const |
|
uint16_t | getFirstSampleIndex () const |
|
virtual bool | canSetCalibration () |
|
bool | canSetEnergy () |
|
bool | canSetRawData () |
|
bool | canIncludeRawData () |
|
virtual void | sortDataVector (std::vector< const LArRawChannel * > &) |
|
virtual void | sortDataVector (std::vector< const LArDigit * > &) |
|
virtual void | sortDataVector (std::vector< const LArCalibDigit * > &) |
|
virtual void | sortDataVector (std::vector< const LArAccumulatedCalibDigit * > &) |
|
virtual void | sortDataVector (std::vector< const LArAccumulatedDigit * > &) |
|
virtual void | setNumberOfSamples (const uint8_t n) |
|
virtual void | setNumberOfGains (const uint8_t n) |
|
virtual void | setTDCPhase (const uint8_t n) |
|
virtual void | setRawDataFixed (const int channel, const std::vector< short > &samples, const uint32_t gain) |
|
virtual void | setEtQ (const int channel, const int32_t energy, const int32_t time, const int32_t quality, const uint32_t gain) |
|
virtual void | setDAC (const uint16_t DACValue) |
|
virtual void | setDelay (const uint16_t DelayValue) |
|
virtual void | setPulsed (const unsigned channelNumber) |
|
virtual void | setNTrigger (const uint16_t NTrigger) |
|
virtual void | sortDataVector (std::vector< const LArRawChannel * > &) |
|
virtual void | sortDataVector (std::vector< const LArCalibDigit * > &) |
|
virtual void | sortDataVector (std::vector< const LArAccumulatedCalibDigit * > &) |
|
virtual void | sortDataVector (std::vector< const LArAccumulatedDigit * > &) |
|
virtual bool | canSetRawDataFixed () |
|
virtual bool | canSetNTrigger () |
|
bool | setFragment (const uint32_t *p, uint32_t n) |
|
bool | nextFEB () |
|
uint32_t | getNumberOfWords () const |
|
uint32_t | getFEBID () const |
|
uint32_t | getFEBSN () const |
|
virtual uint32_t | hasAccumBlock () const |
|
virtual int | getNextAccumulatedCalibDigit (int &channelNumber, std::vector< uint64_t > &SamplesSum, std::vector< uint64_t > &Samples2Sum, uint32_t &nStepTriggers, uint32_t &gain) |
|
virtual int | getNextAccumulatedDigit (int &channelNumber, std::vector< uint64_t > &SamplesSum, std::vector< uint64_t > &corr2Sum, uint32_t &gain) |
|
virtual bool | getPulsed (unsigned channelNumber) const |
|
virtual uint16_t | getDAC () const |
|
virtual uint16_t | getDelay () const |
|
virtual uint16_t | getNTrigger () const |
|
virtual uint16_t | getStepIndex () const |
|
virtual uint16_t | getNStep () const |
|
virtual uint8_t | getTDCPhase () const |
|
virtual uint32_t | getDspCodeVersion () const |
|
virtual int32_t | getDspEventCounter () const |
|
virtual uint32_t | onlineCheckSum () const |
|
virtual uint32_t | offlineCheckSum () const |
|
virtual int | setFragmentVirtualROB (const uint32_t *p, uint32_t n) |
|
virtual void | dumpFragment () |
|
void | setFirstSample (const int rearrangeFirstSample) |
|
uint32_t | RawToOfflineGain (const uint32_t gain) const |
|
uint32_t | OfflineToRawGain (const uint32_t gain) const |
|
bool | report_error (void) const |
|
Definition at line 31 of file LArRodBlockPhysicsV6.h.
◆ FEBMAPTYPE
◆ anonymous enum
Enumerator |
---|
NWTot | |
NWTot_h | |
FEBID | |
FEBID_h | |
FEB_SN | |
FEB_SN_h | |
ResultsOff1 | |
ResultsDim1 | |
ResultsOff2 | |
ResultsDim2 | |
RawDataBlkOff | |
RawDataBlkDim | |
EventStatus | |
EventStatus_h | |
NGains | |
NSamples | |
FirstSampleIndex | |
FebConfig | |
InFPGAFormat | |
InFPGAFormat_h | |
endtag | |
Definition at line 35 of file LArRodBlockPhysicsV6.h.
◆ anonymous enum
◆ LArRodBlockPhysicsV6()
LArRodBlockPhysicsV6::LArRodBlockPhysicsV6 |
( |
| ) |
|
Definition at line 39 of file LArRodBlockPhysicsV6.cxx.
52 SmartIF<StoreGateSvc>
detStore{Gaudi::svcLocator()->service(
"DetectorStore")};
54 std::cout <<
"Unable to locate DetectorStore" << std::endl;
59 std::cout <<
"Could not get LArOnlineID helper !" << std::endl;
◆ BlockType()
std::string LArRodBlockPhysicsV6::BlockType |
( |
| ) |
|
|
inline |
◆ canIncludeRawData()
bool LArRodBlockPhysicsV6::canIncludeRawData |
( |
| ) |
|
|
inlinevirtual |
◆ canSetCalibration()
virtual bool LArRodBlockPhysicsV6::canSetCalibration |
( |
| ) |
|
|
inlinevirtual |
◆ canSetEnergy()
bool LArRodBlockPhysicsV6::canSetEnergy |
( |
| ) |
|
|
inlinevirtual |
◆ canSetNTrigger()
virtual bool LArRodBlockStructure::canSetNTrigger |
( |
| ) |
|
|
inlinevirtualinherited |
◆ canSetRawData()
bool LArRodBlockPhysicsV6::canSetRawData |
( |
| ) |
|
|
inlinevirtual |
◆ canSetRawDataFixed()
virtual bool LArRodBlockStructure::canSetRawDataFixed |
( |
| ) |
|
|
inlinevirtualinherited |
◆ concatinateFEBs()
void LArRodBlockPhysicsV6::concatinateFEBs |
( |
| ) |
|
|
virtual |
Reimplemented from LArRodBlockStructure.
Definition at line 1013 of file LArRodBlockPhysicsV6.cxx.
1015 FEBMAPTYPE::const_iterator feb_it_b=
m_mFebBlocks.begin();
1016 FEBMAPTYPE::const_iterator feb_it_e=
m_mFebBlocks.end();
1017 FEBMAPTYPE::const_iterator feb_it;
1018 for (feb_it=feb_it_b;feb_it!=feb_it_e;++feb_it) {
1019 if (feb_it!=feb_it_b)
1024 feb_it->second.begin(), feb_it->second.end());
◆ dumpFragment()
void LArRodBlockStructure::dumpFragment |
( |
| ) |
|
|
virtualinherited |
Definition at line 175 of file LArRodBlockStructure.cxx.
177 std::cout <<
"Error: Function dumpFragment() not implemented in this instance of LArRodBlockStructure!\n";
◆ FebToRodChannel()
int LArRodBlockPhysicsV6::FebToRodChannel |
( |
int |
ch | ) |
const |
|
inlinevirtual |
◆ finalizeFEB()
void LArRodBlockPhysicsV6::finalizeFEB |
( |
| ) |
|
|
virtual |
◆ getBit()
int LArRodBlockStructure::getBit |
( |
const uint32_t *const |
p, |
|
|
const unsigned |
chan |
|
) |
| const |
|
inlineprotectedinherited |
◆ getCtrl1()
uint16_t LArRodBlockPhysicsV6::getCtrl1 |
( |
uint32_t |
adc | ) |
const |
|
virtual |
◆ getCtrl2()
uint16_t LArRodBlockPhysicsV6::getCtrl2 |
( |
uint32_t |
adc | ) |
const |
|
virtual |
◆ getCtrl3()
uint16_t LArRodBlockPhysicsV6::getCtrl3 |
( |
uint32_t |
adc | ) |
const |
|
virtual |
◆ getDAC()
uint16_t LArRodBlockStructure::getDAC |
( |
| ) |
const |
|
inlinevirtualinherited |
◆ getDelay()
uint16_t LArRodBlockStructure::getDelay |
( |
| ) |
const |
|
inlinevirtualinherited |
◆ getDspCodeVersion()
uint32_t LArRodBlockStructure::getDspCodeVersion |
( |
| ) |
const |
|
virtualinherited |
◆ getDspEventCounter()
int32_t LArRodBlockStructure::getDspEventCounter |
( |
| ) |
const |
|
virtualinherited |
◆ getEx()
int32_t LArRodBlockPhysicsV6::getEx |
( |
| ) |
const |
|
inlinevirtual |
◆ getEy()
int32_t LArRodBlockPhysicsV6::getEy |
( |
| ) |
const |
|
inlinevirtual |
◆ getEz()
int32_t LArRodBlockPhysicsV6::getEz |
( |
| ) |
const |
|
inlinevirtual |
◆ getFebConfig()
uint16_t LArRodBlockPhysicsV6::getFebConfig |
( |
| ) |
const |
|
inline |
◆ getFEBID()
uint32_t LArRodBlockStructure::getFEBID |
( |
| ) |
const |
|
inlineinherited |
◆ getFEBSN()
uint32_t LArRodBlockStructure::getFEBSN |
( |
| ) |
const |
|
inlineinherited |
◆ getFirstSampleIndex()
uint16_t LArRodBlockPhysicsV6::getFirstSampleIndex |
( |
| ) |
const |
|
inline |
◆ getHeader16()
uint16_t LArRodBlockStructure::getHeader16 |
( |
const unsigned |
n | ) |
const |
|
inlineprotectedinherited |
◆ getHeader32()
uint32_t LArRodBlockStructure::getHeader32 |
( |
const unsigned |
n | ) |
const |
|
inlineprotectedinherited |
◆ getNbSweetCells1()
uint16_t LArRodBlockPhysicsV6::getNbSweetCells1 |
( |
| ) |
const |
|
virtual |
◆ getNbSweetCells1FromMask()
uint16_t LArRodBlockPhysicsV6::getNbSweetCells1FromMask |
( |
| ) |
const |
|
private |
◆ getNbSweetCells2()
uint16_t LArRodBlockPhysicsV6::getNbSweetCells2 |
( |
| ) |
const |
|
virtual |
◆ getNbSweetCells2FromMask()
uint16_t LArRodBlockPhysicsV6::getNbSweetCells2FromMask |
( |
| ) |
const |
|
private |
◆ getNextAccumulatedCalibDigit()
int LArRodBlockStructure::getNextAccumulatedCalibDigit |
( |
int & |
channelNumber, |
|
|
std::vector< uint64_t > & |
SamplesSum, |
|
|
std::vector< uint64_t > & |
Samples2Sum, |
|
|
uint32_t & |
nStepTriggers, |
|
|
uint32_t & |
gain |
|
) |
| |
|
virtualinherited |
◆ getNextAccumulatedDigit()
int LArRodBlockStructure::getNextAccumulatedDigit |
( |
int & |
channelNumber, |
|
|
std::vector< uint64_t > & |
SamplesSum, |
|
|
std::vector< uint64_t > & |
corr2Sum, |
|
|
uint32_t & |
gain |
|
) |
| |
|
virtualinherited |
◆ getNextDigits()
int LArRodBlockPhysicsV6::getNextDigits |
( |
int & |
channelNumber, |
|
|
std::vector< short > & |
samples, |
|
|
uint32_t & |
gain |
|
) |
| |
Definition at line 414 of file LArRodBlockPhysicsV6.cxx.
417 #ifdef LARBSDBGOUTPUT
420 logstr <<
MYLEVEL <<
"Let s go in getNextDigits..." <<
endmsg;
428 #ifdef LARBSDBGOUTPUT
429 logstr <<
MYLEVEL <<
"Maximum number of channels reached" <<
endmsg;
435 #ifdef LARBSDBGOUTPUT
436 logstr <<
MYLEVEL <<
"No Digits Block in this FEB" <<
endmsg;
441 #ifdef LARBSDBGOUTPUT
442 logstr <<
MYLEVEL <<
"No Mask Digits Block in this FEB" <<
endmsg;
452 while(hasDigits==0) {
455 #ifdef LARBSDBGOUTPUT
456 logstr <<
MYLEVEL <<
"Maximum number of channels reached" <<
endmsg;
465 channelNumber=((rodChannelNumber&0xe)<<2) + ((rodChannelNumber&0x1)<<6) + (rodChannelNumber>>4);
473 }
else gain=0xffffffff;
475 #ifdef LARBSDBGOUTPUT
524 #ifdef LARBSDBGOUTPUT
526 logstr <<
MYLEVEL <<
" ===> FEB Channel = " << channelNumber <<
endmsg;
529 logstr <<
MYLEVEL <<
" ===> sample " <<
i <<
" = " << samples[
i] <<
endmsg;
534 unsigned rearrangeFirstSample=0;
540 if (rearrangeFirstSample && rearrangeFirstSample<samples.size())
542 short movedSample=samples[0];
543 for (
unsigned i=1;
i<=rearrangeFirstSample;
i++)
544 samples[
i-1]=samples[
i];
545 samples[rearrangeFirstSample]=movedSample;
547 #ifdef LARBSDBGOUTPUT
◆ getNextEnergy()
int LArRodBlockPhysicsV6::getNextEnergy |
( |
int & |
channelNumber, |
|
|
int32_t & |
energy, |
|
|
int32_t & |
time, |
|
|
int32_t & |
quality, |
|
|
uint32_t & |
gain |
|
) |
| |
|
inlinevirtual |
Reimplemented from LArRodBlockStructure.
Definition at line 195 of file LArRodBlockPhysicsV6.h.
197 #ifdef LARBSDBGOUTPUT
201 LARBSDBG(
"in LArRodBlockPhysicsV6::getNextEnergy.");
209 channelNumber=((rodChannelNumber&0xe)<<2) + ((rodChannelNumber&0x1)<<6) + (rodChannelNumber>>4);
260 LARBSDBG(
"-------->>>> in LArRodBlockPhysicsV6::getNextEnergy : decode energy.....");
265 aux = (int32_t) (encodedEnergy&0x1fff);
266 range = (encodedEnergy & 0xc000) >> 14;
267 if(aux==0 &&
range>0) aux=0x2000;
268 sign = encodedEnergy & 0x2000;
277 }
else gain=0xffffffff;
292 #ifdef LARBSDBGOUTPUT
293 logstr <<
MYLEVEL <<
"This cell has time and Quality information "<<
endmsg;
303 #ifdef LARBSDBGOUTPUT
306 logstr <<
MYLEVEL <<
" Encoded Energy ="<< MSG::hex << encodedEnergy << MSG::dec <<
" E=" <<
energy
310 <<
" channel Number=" << channelNumber
◆ getNextRawData()
int LArRodBlockPhysicsV6::getNextRawData |
( |
int & |
channelNumber, |
|
|
std::vector< short > & |
samples, |
|
|
uint32_t & |
gain |
|
) |
| |
|
virtual |
Reimplemented from LArRodBlockStructure.
Definition at line 299 of file LArRodBlockPhysicsV6.cxx.
301 #ifdef LARBSDBGOUTPUT
304 logstr <<
MYLEVEL <<
"Let s go in getNextRawData..." <<
endmsg;
311 #ifdef LARBSDBGOUTPUT
312 logstr <<
MYLEVEL <<
"Maximum number of channels reached" <<
endmsg;
324 channelNumber=((rodChannelNumber&0xe)<<2) + ((rodChannelNumber&0x1)<<6) + (rodChannelNumber>>4);
330 #ifdef LARBSDBGOUTPUT
332 logstr <<
MYLEVEL <<
"This FEB has " << ngains <<
" gains" <<
endmsg;
335 if(ngains==0 ||
nsamples==0)
return 0;
349 samples.push_back(
s[0]);
353 samples.push_back(
s[0]);
354 samples.push_back(
s[1]);
361 samples.push_back(
s[0]);
365 samples.push_back(
s[0]);
366 samples.push_back(
s[1]);
372 samples.push_back(
s[0]);
373 samples.push_back(
s[1]);
377 samples.push_back(
s[0]);
382 #ifdef LARBSDBGOUTPUT
384 logstr <<
MYLEVEL <<
" ===> FEB Channel = " << channelNumber <<
endmsg;
387 logstr <<
MYLEVEL <<
" ===> sample " <<
i <<
" = " << samples[
i] <<
endmsg;
395 unsigned rearrangeFirstSample=0;
401 if (rearrangeFirstSample && rearrangeFirstSample<samples.size())
403 short movedSample=samples[0];
404 for (
unsigned i=1;
i<=rearrangeFirstSample;
i++)
405 samples[
i-1]=samples[
i];
406 samples[rearrangeFirstSample]=movedSample;
408 #ifdef LARBSDBGOUTPUT
◆ getNStep()
uint16_t LArRodBlockStructure::getNStep |
( |
| ) |
const |
|
inlinevirtualinherited |
◆ getNTrigger()
uint16_t LArRodBlockStructure::getNTrigger |
( |
| ) |
const |
|
inlinevirtualinherited |
◆ getNumberOfGains()
uint32_t LArRodBlockPhysicsV6::getNumberOfGains |
( |
| ) |
const |
|
virtual |
◆ getNumberOfSamples()
uint32_t LArRodBlockPhysicsV6::getNumberOfSamples |
( |
| ) |
const |
|
virtual |
◆ getNumberOfWords()
uint32_t LArRodBlockStructure::getNumberOfWords |
( |
| ) |
const |
|
inlineinherited |
◆ getPulsed()
bool LArRodBlockStructure::getPulsed |
( |
unsigned |
channelNumber | ) |
const |
|
inlinevirtualinherited |
◆ getRadd()
uint32_t LArRodBlockPhysicsV6::getRadd |
( |
uint32_t |
adc, |
|
|
uint32_t |
sample |
|
) |
| const |
|
virtual |
◆ getRawDataSize()
uint16_t LArRodBlockPhysicsV6::getRawDataSize |
( |
| ) |
const |
|
virtual |
◆ getResults1Size()
uint16_t LArRodBlockPhysicsV6::getResults1Size |
( |
| ) |
const |
|
virtual |
◆ getResults2Size()
uint16_t LArRodBlockPhysicsV6::getResults2Size |
( |
| ) |
const |
|
virtual |
◆ getStatus()
uint32_t LArRodBlockPhysicsV6::getStatus |
( |
| ) |
const |
|
virtual |
◆ getStepIndex()
uint16_t LArRodBlockStructure::getStepIndex |
( |
| ) |
const |
|
inlinevirtualinherited |
◆ getSumE()
int32_t LArRodBlockPhysicsV6::getSumE |
( |
| ) |
const |
|
inlinevirtual |
◆ getTDCPhase()
uint8_t LArRodBlockStructure::getTDCPhase |
( |
| ) |
const |
|
virtualinherited |
◆ getVectorHeader16()
uint16_t LArRodBlockStructure::getVectorHeader16 |
( |
const unsigned |
n | ) |
const |
|
inlineprotectedinherited |
Definition at line 368 of file LArRodBlockStructure.h.
370 return (std::as_const(*m_vFragment).at(
n>>1) & 0xffff);
372 return (std::as_const(*m_vFragment).at(
n>>1) >> 16);
◆ getVectorHeader32()
uint32_t LArRodBlockStructure::getVectorHeader32 |
( |
const unsigned |
n | ) |
const |
|
inlineprotectedinherited |
◆ getVROBEx()
int32_t LArRodBlockPhysicsV6::getVROBEx |
( |
| ) |
const |
|
inlinevirtual |
◆ getVROBEy()
int32_t LArRodBlockPhysicsV6::getVROBEy |
( |
| ) |
const |
|
inlinevirtual |
◆ getVROBEz()
int32_t LArRodBlockPhysicsV6::getVROBEz |
( |
| ) |
const |
|
inlinevirtual |
◆ getVROBFebId()
uint32_t LArRodBlockPhysicsV6::getVROBFebId |
( |
| ) |
|
|
inlinevirtual |
◆ getVROBSumE()
int32_t LArRodBlockPhysicsV6::getVROBSumE |
( |
| ) |
const |
|
inlinevirtual |
◆ hasAccumBlock()
virtual uint32_t LArRodBlockStructure::hasAccumBlock |
( |
| ) |
const |
|
inlinevirtualinherited |
◆ hasCalibBlock()
virtual uint32_t LArRodBlockPhysicsV6::hasCalibBlock |
( |
| ) |
const |
|
inlinevirtual |
◆ hasControlWords()
virtual uint32_t LArRodBlockPhysicsV6::hasControlWords |
( |
| ) |
const |
|
inlinevirtual |
◆ hasPhysicsBlock()
virtual uint32_t LArRodBlockPhysicsV6::hasPhysicsBlock |
( |
| ) |
const |
|
inlinevirtual |
◆ hasRawDataBlock()
virtual uint32_t LArRodBlockPhysicsV6::hasRawDataBlock |
( |
| ) |
const |
|
inlinevirtual |
◆ initializeFEB()
void LArRodBlockPhysicsV6::initializeFEB |
( |
const uint32_t |
id | ) |
|
|
virtual |
◆ initializeFragment()
void LArRodBlockPhysicsV6::initializeFragment |
( |
std::vector< uint32_t > & |
fragment | ) |
|
|
virtual |
Reimplemented from LArRodBlockStructure.
Definition at line 684 of file LArRodBlockPhysicsV6.cxx.
687 unsigned int sizeRead=0;
689 while (sizeRead<fragment.size()) {
691 FebIter=fragment.begin()+sizeRead;
695 if (FebIter+currFebSize>fragment.end()) {
700 m_mFebBlocks[currFEBid].assign(FebIter,FebIter+currFebSize);
◆ LE_getHeader16()
uint16_t LArRodBlockStructure::LE_getHeader16 |
( |
const unsigned |
n | ) |
const |
|
inlineprotectedinherited |
◆ LE_getVectorHeader16()
uint16_t LArRodBlockStructure::LE_getVectorHeader16 |
( |
const unsigned |
n | ) |
const |
|
inlineprotectedinherited |
◆ LE_setHeader16()
void LArRodBlockStructure::LE_setHeader16 |
( |
const unsigned |
n, |
|
|
const uint16_t |
w |
|
) |
| |
|
inlineprotectedinherited |
Definition at line 417 of file LArRodBlockStructure.h.
419 #ifdef LARBYTESTREAMRODBLOCK_CHCKBOUNDARIES
421 std::cout <<
"LArRodBlockStructure::LE_setHeader16 Error: WRITE BEYOND ARRAY BONDARY!" << std::endl;
◆ nextFEB()
bool LArRodBlockStructure::nextFEB |
( |
| ) |
|
|
inlineinherited |
Definition at line 497 of file LArRodBlockStructure.h.
503 if ( LeftSize<=0 )
return false;
508 if (BlockSize>LeftSize) {
509 std::cout <<
"Error while decoding LArByteStream: Found FEB block of size " << BlockSize <<
" in a ROD block of size " << LeftSize << std::endl;
◆ offlineCheckSum()
uint32_t LArRodBlockStructure::offlineCheckSum |
( |
| ) |
const |
|
virtualinherited |
◆ OfflineToRawGain()
uint32_t LArRodBlockStructure::OfflineToRawGain |
( |
const uint32_t |
gain | ) |
const |
|
inlineinherited |
◆ onlineCheckSum()
uint32_t LArRodBlockStructure::onlineCheckSum |
( |
| ) |
const |
|
virtualinherited |
◆ operator()()
template<class RAWDATA >
bool LArRodBlockPhysicsV6::operator() |
( |
const RAWDATA * |
ch1, |
|
|
const RAWDATA * |
ch2 |
|
) |
| const |
◆ RawToOfflineGain()
uint32_t LArRodBlockStructure::RawToOfflineGain |
( |
const uint32_t |
gain | ) |
const |
|
inlineinherited |
◆ report_error()
bool LArRodBlockStructure::report_error |
( |
void |
| ) |
const |
|
inlineinherited |
◆ resetPointers()
void LArRodBlockPhysicsV6::resetPointers |
( |
| ) |
|
|
privatevirtual |
◆ setBit()
void LArRodBlockStructure::setBit |
( |
uint32_t *const |
p, |
|
|
const unsigned |
chan |
|
) |
| |
|
inlineprotectedinherited |
◆ setDAC()
void LArRodBlockStructure::setDAC |
( |
const uint16_t |
DACValue | ) |
|
|
virtualinherited |
◆ setDelay()
void LArRodBlockStructure::setDelay |
( |
const uint16_t |
DelayValue | ) |
|
|
virtualinherited |
◆ setE()
void LArRodBlockPhysicsV6::setE |
( |
unsigned int |
index, |
|
|
double |
E |
|
) |
| |
|
inlineprivate |
◆ setEtQ()
void LArRodBlockStructure::setEtQ |
( |
const int |
channel, |
|
|
const int32_t |
energy, |
|
|
const int32_t |
time, |
|
|
const int32_t |
quality, |
|
|
const uint32_t |
gain |
|
) |
| |
|
virtualinherited |
Definition at line 120 of file LArRodBlockStructure.cxx.
122 std::cout <<
"Error: Function setEtQ not implemented in this instance of LArRodBlockStructure!\n";
◆ setEx()
void LArRodBlockPhysicsV6::setEx |
( |
double |
Ex | ) |
|
|
inlinevirtual |
◆ setEy()
void LArRodBlockPhysicsV6::setEy |
( |
double |
Ey | ) |
|
|
inlinevirtual |
◆ setEz()
void LArRodBlockPhysicsV6::setEz |
( |
double |
Ez | ) |
|
|
inlinevirtual |
◆ setFirstSample()
void LArRodBlockStructure::setFirstSample |
( |
const int |
rearrangeFirstSample | ) |
|
|
inlineinherited |
◆ setFragment()
bool LArRodBlockStructure::setFragment |
( |
const uint32_t * |
p, |
|
|
uint32_t |
n |
|
) |
| |
|
inlineinherited |
Definition at line 252 of file LArRodBlockStructure.h.
261 std::cout <<
"Error while decoding LArByteStream: Got Rod block size 0" << std::endl;
267 std::cout <<
"Error while decoding LArByteStream: Found FEB block of size " << BlockSize <<
" in a ROD block of size " <<
n << std::endl;
◆ setFragmentVirtualROB()
int LArRodBlockStructure::setFragmentVirtualROB |
( |
const uint32_t * |
p, |
|
|
uint32_t |
n |
|
) |
| |
|
inlinevirtualinherited |
Definition at line 280 of file LArRodBlockStructure.h.
286 if (
n<2 ) { std::cout <<
"Error" << std::endl;
return 0;}
290 std::cout <<
"Error AGAIN" << std::endl;
◆ setGain()
virtual int LArRodBlockPhysicsV6::setGain |
( |
const int |
| ) |
|
|
inlinevirtual |
◆ setHeader16()
void LArRodBlockStructure::setHeader16 |
( |
const unsigned |
n, |
|
|
const uint16_t |
w |
|
) |
| |
|
inlineprotectedinherited |
Definition at line 380 of file LArRodBlockStructure.h.
382 #ifdef LARBYTESTREAMRODBLOCK_CHCKBOUNDARIES
384 std::cout <<
"Error WRITE BEYOND ARRAY BONDARY!" << std::endl;
◆ setHeader32()
void LArRodBlockStructure::setHeader32 |
( |
const unsigned |
n, |
|
|
const uint32_t |
w |
|
) |
| |
|
inlineprotectedinherited |
Definition at line 394 of file LArRodBlockStructure.h.
396 #ifdef LARBYTESTREAMRODBLOCK_CHCKBOUNDARIES
398 std::cout <<
"Error WRITE BEYOND ARRAY BONDARY!" << std::endl;
◆ setNextEnergy() [1/2]
void LArRodBlockPhysicsV6::setNextEnergy |
( |
const int |
channel, |
|
|
const int32_t |
energy, |
|
|
const int32_t |
time, |
|
|
const int32_t |
quality, |
|
|
const uint32_t |
gain |
|
) |
| |
|
virtual |
Reimplemented from LArRodBlockStructure.
Definition at line 739 of file LArRodBlockPhysicsV6.cxx.
767 thequality = (
int16_t) quality;
774 if ((abse>8192)&&(abse<65536))
776 EncodedE=((abse>>3)|0x4000);
778 else if ((abse>65535)&&(abse<524288))
780 EncodedE=((abse>>6)|0x8000);
782 else if ((abse>524288))
784 EncodedE=((abse>>9)|0xc000);
789 if (
sign<0) EncodedE |= 0x2000;
◆ setNextEnergy() [2/2]
void LArRodBlockPhysicsV6::setNextEnergy |
( |
const uint16_t |
energy, |
|
|
const int16_t |
time, |
|
|
const int16_t |
quality, |
|
|
const uint32_t |
gain |
|
) |
| |
|
private |
◆ setNTrigger()
void LArRodBlockStructure::setNTrigger |
( |
const uint16_t |
NTrigger | ) |
|
|
virtualinherited |
Definition at line 75 of file LArRodBlockStructure.cxx.
77 std::cout <<
"Error: Function setNTrigger not implemented in this instance of LArRodBlockStructure!\n";
◆ setNumberOfGains()
void LArRodBlockStructure::setNumberOfGains |
( |
const uint8_t |
n | ) |
|
|
virtualinherited |
◆ setNumberOfSamples()
void LArRodBlockStructure::setNumberOfSamples |
( |
const uint8_t |
n | ) |
|
|
virtualinherited |
◆ setPointers()
bool LArRodBlockPhysicsV6::setPointers |
( |
| ) |
|
|
privatevirtual |
Reimplemented from LArRodBlockStructure.
Definition at line 85 of file LArRodBlockPhysicsV6.cxx.
99 if ( !(
ns&0
x1) ) radd++;
130 int off1_tmp, dim1_tmp;
131 int off2_tmp, dim2_tmp;
132 int off3_tmp, dim3_tmp;
136 off1_tmp = dim1_tmp = 0;
137 off2_tmp = dim2_tmp = 0;
138 off3_tmp = dim3_tmp = 0;
149 dim1_tmp = 84+(
ns+1)/2+
n1;
150 if ( !(
ns&0
x1) ) dim1_tmp++;
155 off2_tmp = off1_tmp+dim1_tmp;
156 dim2_tmp = (n2*
ns+1)/2;
157 off3_tmp = off2_tmp+dim2_tmp;
159 if(dim2_tmp==0) off2_tmp = 0;
160 if(dim3_tmp==0) off3_tmp = 0;
163 if(off1 != off1_tmp) problem=1;
164 if(dim1 != dim1_tmp) problem=2;
165 if(off2 != off2_tmp) problem=3;
166 if(dim2 != dim2_tmp) problem=4;
167 if(off3 != off3_tmp) problem=5;
168 if(dim3 != dim3_tmp) problem=6;
169 if(
n1 != n1_tmp) problem=7;
170 if(n2 != n2_tmp) problem=8;
178 std::cout <<
"LArByteStreamProblem " << problem << std::endl;
179 std::cout <<
"NSamples = " << std::dec <<
ns << std::endl;
180 std::cout <<
"getHeader32(NGains) = " << std::hex <<
getHeader32(
NGains) << std::endl;
181 std::cout <<
"NWTot: " << std::hex <<
getNumberOfWords() <<
" n1=" <<
n1 <<
" (" << n1_tmp <<
") n2=" << n2 <<
" (" << n2_tmp <<
")" << std::endl;
182 std::cout <<
"Found 1: " << off1 <<
" " << dim1 << std::endl;
183 std::cout <<
"Found 2: " << off2 <<
" " << dim2 << std::endl;
184 std::cout <<
"Found 3: " << off3 <<
" " << dim3 << std::dec << std::endl;
186 if(
n1==n1_tmp && n2==n2_tmp) {
193 std::cout <<
"Recomputed 1: " << std::hex << off1 <<
" " << dim1 << std::endl;
194 std::cout <<
"Recomputed 2: " << off2 <<
" " << dim2 << std::endl;
195 std::cout <<
"Recomputed 3: " << off3 <<
" " << dim3 << std::dec << std::endl;
225 if(off1< off2 && off1 + dim1 > off2) problem = 1;
226 if(off1< off3 && off1 + dim1 > off3) problem = 2;
227 if(off2< off1 && off2 + dim2 > off1) problem = 3;
228 if(off2< off3 && off2 + dim2 > off3) problem = 4;
229 if(off3< off1 && off3 + dim3 > off1) problem = 5;
230 if(off3< off2 && off3 + dim3 > off2) problem = 6;
234 std::cout <<
"LArByteStreamProblem " << problem << std::endl;
235 std::cout <<
"Unrecoverable problem" << std::endl;
◆ setPulsed()
void LArRodBlockStructure::setPulsed |
( |
const unsigned |
channelNumber | ) |
|
|
virtualinherited |
◆ setRawData()
void LArRodBlockPhysicsV6::setRawData |
( |
const int |
chIdx, |
|
|
const std::vector< short > & |
samples, |
|
|
const uint32_t |
|
|
) |
| |
|
virtual |
◆ setRawDataFixed()
void LArRodBlockStructure::setRawDataFixed |
( |
const int |
channel, |
|
|
const std::vector< short > & |
samples, |
|
|
const uint32_t |
gain |
|
) |
| |
|
virtualinherited |
◆ setRequiredNSamples()
void LArRodBlockPhysicsV6::setRequiredNSamples |
( |
unsigned short |
ns | ) |
|
|
inline |
◆ setSumE()
void LArRodBlockPhysicsV6::setSumE |
( |
double |
SumE | ) |
|
|
inlinevirtual |
◆ setTDCPhase()
void LArRodBlockStructure::setTDCPhase |
( |
const uint8_t |
n | ) |
|
|
virtualinherited |
◆ sortDataVector() [1/10]
◆ sortDataVector() [2/10]
void LArRodBlockStructure::sortDataVector |
◆ sortDataVector() [3/10]
◆ sortDataVector() [4/10]
void LArRodBlockStructure::sortDataVector |
◆ sortDataVector() [5/10]
◆ sortDataVector() [6/10]
void LArRodBlockStructure::sortDataVector |
◆ sortDataVector() [7/10]
void LArRodBlockStructure::sortDataVector |
◆ sortDataVector() [8/10]
void LArRodBlockPhysicsV6::sortDataVector |
( |
std::vector< const LArDigit * > & |
vDigit | ) |
|
|
inlinevirtual |
◆ sortDataVector() [9/10]
◆ sortDataVector() [10/10]
void LArRodBlockStructure::sortDataVector |
◆ m_channelsPerFEB
int LArRodBlockStructure::m_channelsPerFEB |
|
protectedinherited |
◆ m_DigitsChannel
int LArRodBlockPhysicsV6::m_DigitsChannel = 0 |
|
private |
◆ m_DigitsEncode
std::vector<uint16_t> LArRodBlockPhysicsV6::m_DigitsEncode |
|
private |
◆ m_DigitsIndex
int LArRodBlockPhysicsV6::m_DigitsIndex = 0 |
|
private |
◆ m_DigitsPointer
const uint16_t* LArRodBlockPhysicsV6::m_DigitsPointer = nullptr |
|
private |
◆ m_EnergyBlockEncode
std::vector<uint16_t> LArRodBlockPhysicsV6::m_EnergyBlockEncode |
|
private |
◆ m_EnergyIndex
int LArRodBlockPhysicsV6::m_EnergyIndex = 0 |
|
private |
◆ m_EnergyPointer
const uint16_t* LArRodBlockPhysicsV6::m_EnergyPointer = nullptr |
|
private |
◆ m_EnergyThreshold1
uint16_t LArRodBlockPhysicsV6::m_EnergyThreshold1 |
|
private |
◆ m_EnergyThreshold2
uint16_t LArRodBlockPhysicsV6::m_EnergyThreshold2 |
|
private |
◆ m_error_next_feb
bool LArRodBlockStructure::m_error_next_feb |
|
protectedinherited |
◆ m_Ex
int32_t LArRodBlockStructure::m_Ex |
|
protectedinherited |
◆ m_Ey
int32_t LArRodBlockStructure::m_Ey |
|
protectedinherited |
◆ m_Ez
int32_t LArRodBlockStructure::m_Ez |
|
protectedinherited |
◆ m_FebBlock
const uint32_t* LArRodBlockStructure::m_FebBlock |
|
protectedinherited |
◆ m_FebBlockSize
int32_t LArRodBlockStructure::m_FebBlockSize |
|
protectedinherited |
◆ m_FebInfoBlock
std::vector<uint32_t> LArRodBlockPhysicsV6::m_FebInfoBlock |
|
private |
◆ m_fixedGain
int LArRodBlockPhysicsV6::m_fixedGain |
|
private |
◆ m_GainBlock
std::vector<uint32_t> LArRodBlockPhysicsV6::m_GainBlock |
|
private |
◆ m_GainPointer
const uint32_t* LArRodBlockPhysicsV6::m_GainPointer = nullptr |
|
private |
◆ m_iHeadBlockSize
unsigned short LArRodBlockStructure::m_iHeadBlockSize |
|
protectedinherited |
◆ m_MaskDigitsPointer
const uint32_t* LArRodBlockPhysicsV6::m_MaskDigitsPointer = nullptr |
|
private |
◆ m_MaskTimeQualityPointer
const uint32_t* LArRodBlockPhysicsV6::m_MaskTimeQualityPointer = nullptr |
|
private |
◆ m_mFebBlocks
◆ m_MiddleHeaderSize
int32_t LArRodBlockStructure::m_MiddleHeaderSize |
|
protectedinherited |
◆ m_numberHotCell
uint16_t LArRodBlockPhysicsV6::m_numberHotCell = 0U |
|
private |
◆ m_numberHotCellOffTime
uint16_t LArRodBlockPhysicsV6::m_numberHotCellOffTime |
|
private |
◆ m_numberOfEx
uint32_t LArRodBlockStructure::m_numberOfEx |
|
protectedinherited |
◆ m_numberOfEy
uint32_t LArRodBlockStructure::m_numberOfEy |
|
protectedinherited |
◆ m_numberOfEz
uint32_t LArRodBlockStructure::m_numberOfEz |
|
protectedinherited |
◆ m_numberOfSumE
uint32_t LArRodBlockStructure::m_numberOfSumE |
|
protectedinherited |
◆ m_OfflineToRawGainMap
const uint32_t LArRodBlockStructure::m_OfflineToRawGainMap ={3,2,1} |
|
staticprotectedinherited |
◆ m_OffTimeCut
int16_t LArRodBlockPhysicsV6::m_OffTimeCut |
|
private |
◆ m_onlineHelper
◆ m_pRODblock
std::vector<uint32_t>* LArRodBlockStructure::m_pRODblock |
|
protectedinherited |
◆ m_RaddPointer
const uint16_t* LArRodBlockPhysicsV6::m_RaddPointer = nullptr |
|
private |
◆ m_RawDataBlock
std::vector<uint32_t> LArRodBlockPhysicsV6::m_RawDataBlock |
|
private |
◆ m_RawDataIndex
int LArRodBlockPhysicsV6::m_RawDataIndex = 0 |
|
private |
◆ m_RawDataPointer
const uint16_t* LArRodBlockPhysicsV6::m_RawDataPointer = nullptr |
|
private |
◆ m_RawToOfflineGainMap
const uint32_t LArRodBlockStructure::m_RawToOfflineGainMap ={0, 2, 1,0} |
|
staticprotectedinherited |
◆ m_rearrangeFirstSample
unsigned int LArRodBlockStructure::m_rearrangeFirstSample |
|
protectedinherited |
◆ m_requiredNSamples
unsigned short LArRodBlockPhysicsV6::m_requiredNSamples |
|
private |
◆ m_ROB_to_decode
int32_t LArRodBlockStructure::m_ROB_to_decode |
|
protectedinherited |
◆ m_RodBlock
const uint32_t* LArRodBlockStructure::m_RodBlock |
|
protectedinherited |
◆ m_RodBlockSize
int32_t LArRodBlockStructure::m_RodBlockSize |
|
protectedinherited |
◆ m_SumBlkBlockE1
std::vector<uint32_t> LArRodBlockPhysicsV6::m_SumBlkBlockE1 |
|
private |
◆ m_SumBlkBlockE2
std::vector<uint32_t> LArRodBlockPhysicsV6::m_SumBlkBlockE2 |
|
private |
◆ m_SumE
int32_t LArRodBlockStructure::m_SumE |
|
protectedinherited |
◆ m_SumPointer
const int32_t* LArRodBlockPhysicsV6::m_SumPointer = nullptr |
|
private |
◆ m_TimeQualityBlock
std::vector<uint16_t> LArRodBlockPhysicsV6::m_TimeQualityBlock |
|
private |
◆ m_TimeQualityIndex
int LArRodBlockPhysicsV6::m_TimeQualityIndex = 0 |
|
private |
◆ m_TimeQualityPointer
const uint16_t* LArRodBlockPhysicsV6::m_TimeQualityPointer = nullptr |
|
private |
◆ m_vFragment
std::vector<uint32_t>* LArRodBlockStructure::m_vFragment |
|
protectedinherited |
◆ m_virtualROBJump
uint32_t LArRodBlockStructure::m_virtualROBJump |
|
protectedinherited |
◆ m_virtualROBPointer
const uint32_t* LArRodBlockStructure::m_virtualROBPointer |
|
protectedinherited |
◆ m_virtualROBPointerLocal
const uint32_t* LArRodBlockStructure::m_virtualROBPointerLocal |
|
protectedinherited |
The documentation for this class was generated from the following files:
JetConstituentVector::iterator iterator
uint16_t getNbSweetCells2FromMask() const
std::vector< uint32_t > * m_vFragment
#define LARBSDBG(text)
This class provides decoding/encoding from/to ROD format.
virtual uint16_t getNbSweetCells1() const
uint32_t getNumberOfWords() const
virtual int getNextEnergy(int &channelNumber, int32_t &energy, int32_t &time, int32_t &quality, uint32_t &gain)
uint16_t getFirstSampleIndex() const
const uint16_t * m_EnergyPointer
const uint32_t * m_FebBlock
void setHeader16(const unsigned n, const uint16_t w)
std::vector< uint16_t > m_TimeQualityBlock
const LArOnlineID * m_onlineHelper
virtual void resetPointers()
const int32_t * m_SumPointer
setScaleOne setStatusOne setSaturated int16_t
std::vector< uint32_t > * m_pRODblock
IMessageSvc * getMessageSvc(bool quiet=false)
uint32_t OfflineToRawGain(const uint32_t gain) const
const uint32_t * m_MaskTimeQualityPointer
virtual bool setPointers()
void setNextEnergy(const int channel, const int32_t energy, const int32_t time, const int32_t quality, const uint32_t gain)
std::vector< uint32_t > m_SumBlkBlockE2
virtual uint16_t getNbSweetCells2() const
unsigned short m_iHeadBlockSize
unsigned int m_rearrangeFirstSample
uint32_t getHeader32(const unsigned n) const
uint16_t m_numberHotCellOffTime
int channel(const HWIdentifier id) const
Return the channel number of a hardware cell identifier channel = [0,127] in all FEB.
uint32_t RawToOfflineGain(const uint32_t gain) const
const uint16_t * m_RawDataPointer
::StatusCode StatusCode
StatusCode definition for legacy code.
uint16_t m_EnergyThreshold2
const uint32_t * m_GainPointer
std::vector< uint32_t > m_SumBlkBlockE1
void setE(unsigned int index, double E)
const uint32_t * m_virtualROBPointerLocal
virtual void resetPointers()
static const uint32_t m_RawToOfflineGainMap[4]
const uint16_t * m_DigitsPointer
HWIdentifier feb_Id(int barrel_ec, int pos_neg, int feedthrough, int slot) const
Create feb_Id from fields.
std::vector< uint16_t > m_DigitsEncode
std::vector< uint32_t > m_GainBlock
const uint32_t * m_virtualROBPointer
uint16_t getNbSweetCells1FromMask() const
int32_t m_MiddleHeaderSize
const uint32_t * m_MaskDigitsPointer
uint16_t m_EnergyThreshold1
def time(flags, cells_name, *args, **kw)
void sort(typename std::reverse_iterator< DataModel_detail::iterator< DVL > > beg, typename std::reverse_iterator< DataModel_detail::iterator< DVL > > end, const Compare &comp)
Specialization of sort for DataVector/List.
int getNextDigits(int &channelNumber, std::vector< short > &samples, uint32_t &gain)
const uint16_t * m_TimeQualityPointer
std::vector< uint16_t > m_EnergyBlockEncode
static const uint32_t m_OfflineToRawGainMap[3]
virtual int FebToRodChannel(int ch) const
const uint32_t * m_RodBlock
unsigned short m_requiredNSamples
uint16_t getHeader16(const unsigned n) const
uint32_t m_virtualROBJump
const uint16_t * m_RaddPointer
void setHeader32(const unsigned n, const uint32_t w)