CMS 3D CMS Logo

List of all members | Public Member Functions | Static Public Attributes | Protected Attributes
DCCDataUnpacker Class Reference

#include <DCCDataUnpacker.h>

Public Member Functions

DCCEventBlockcurrentEvent ()
 
 DCCDataUnpacker (EcalElectronicsMapper *, bool hU, bool srpU, bool tccU, bool feU, bool memU, bool syncCheck, bool feIdCheck, bool forceToKeepFRdata)
 
std::unique_ptr< EcalRawDataCollection > * dccHeadersCollection ()
 
std::unique_ptr< EBDigiCollection > * ebDigisCollection ()
 
std::unique_ptr< EBSrFlagCollection > * ebSrFlagsCollection ()
 
std::unique_ptr< EcalPSInputDigiCollection > * ecalPSsCollection ()
 
std::unique_ptr< EcalTrigPrimDigiCollection > * ecalTpsCollection ()
 
std::unique_ptr< EEDigiCollection > * eeDigisCollection ()
 
std::unique_ptr< EESrFlagCollection > * eeSrFlagsCollection ()
 
const EcalElectronicsMapperelectronicsMapper () const
 
uint16_t getCCUValue (const int fed, const int ccu) const
 
uint16_t getChannelStatus (const DetId &id) const
 
uint16_t getChannelValue (const DetId &id) const
 
uint16_t getChannelValue (const int fed, const int ccu, const int strip, const int xtal) const
 
std::unique_ptr< EcalElectronicsIdCollection > * invalidBlockLengthsCollection ()
 
std::unique_ptr< EBDetIdCollection > * invalidChIdsCollection ()
 
std::unique_ptr< EEDetIdCollection > * invalidEEChIdsCollection ()
 
std::unique_ptr< EEDetIdCollection > * invalidEEGainsCollection ()
 
std::unique_ptr< EEDetIdCollection > * invalidEEGainsSwitchCollection ()
 
std::unique_ptr< EBDetIdCollection > * invalidGainsCollection ()
 
std::unique_ptr< EBDetIdCollection > * invalidGainsSwitchCollection ()
 
std::unique_ptr< EcalElectronicsIdCollection > * invalidMemBlockSizesCollection ()
 
std::unique_ptr< EcalElectronicsIdCollection > * invalidMemChIdsCollection ()
 
std::unique_ptr< EcalElectronicsIdCollection > * invalidMemGainsCollection ()
 
std::unique_ptr< EcalElectronicsIdCollection > * invalidMemTtIdsCollection ()
 
std::unique_ptr< EcalElectronicsIdCollection > * invalidTTIdsCollection ()
 
std::unique_ptr< EcalElectronicsIdCollection > * invalidZSXtalIdsCollection ()
 
std::unique_ptr< EcalPnDiodeDigiCollection > * pnDiodeDigisCollection ()
 
void setChannelStatusDB (const EcalChannelStatusMap *chdb)
 
void setDccHeadersCollection (std::unique_ptr< EcalRawDataCollection > *x)
 
void setEBDigisCollection (std::unique_ptr< EBDigiCollection > *x)
 
void setEBSrFlagsCollection (std::unique_ptr< EBSrFlagCollection > *x)
 
void setEcalPSsCollection (std::unique_ptr< EcalPSInputDigiCollection > *x)
 
void setEcalTpsCollection (std::unique_ptr< EcalTrigPrimDigiCollection > *x)
 
void setEEDigisCollection (std::unique_ptr< EEDigiCollection > *x)
 
void setEESrFlagsCollection (std::unique_ptr< EESrFlagCollection > *x)
 
void setInvalidBlockLengthsCollection (std::unique_ptr< EcalElectronicsIdCollection > *x)
 
void setInvalidChIdsCollection (std::unique_ptr< EBDetIdCollection > *x)
 
void setInvalidEEChIdsCollection (std::unique_ptr< EEDetIdCollection > *x)
 
void setInvalidEEGainsCollection (std::unique_ptr< EEDetIdCollection > *x)
 
void setInvalidEEGainsSwitchCollection (std::unique_ptr< EEDetIdCollection > *x)
 
void setInvalidGainsCollection (std::unique_ptr< EBDetIdCollection > *x)
 
void setInvalidGainsSwitchCollection (std::unique_ptr< EBDetIdCollection > *x)
 
void setInvalidMemBlockSizesCollection (std::unique_ptr< EcalElectronicsIdCollection > *x)
 
void setInvalidMemChIdsCollection (std::unique_ptr< EcalElectronicsIdCollection > *x)
 
void setInvalidMemGainsCollection (std::unique_ptr< EcalElectronicsIdCollection > *x)
 
void setInvalidMemTtIdsCollection (std::unique_ptr< EcalElectronicsIdCollection > *x)
 
void setInvalidTTIdsCollection (std::unique_ptr< EcalElectronicsIdCollection > *x)
 
void setInvalidZSXtalIdsCollection (std::unique_ptr< EcalElectronicsIdCollection > *x)
 
void setPnDiodeDigisCollection (std::unique_ptr< EcalPnDiodeDigiCollection > *x)
 
void unpack (const uint64_t *buffer, size_t bufferSize, unsigned int smId, unsigned int fedId)
 
 ~DCCDataUnpacker ()
 

Static Public Attributes

static std::atomic< bool > silentMode_
 

Protected Attributes

const EcalChannelStatusMapchdb_
 
DCCEventBlockcurrentEvent_
 
std::unique_ptr< EcalRawDataCollection > * dccHeaders_
 
std::unique_ptr< EBDigiCollection > * ebDigis_
 
DCCEBEventBlockebEventBlock_
 
std::unique_ptr< EBSrFlagCollection > * ebSrFlags_
 
std::unique_ptr< EcalPSInputDigiCollection > * ecalPSs_
 
std::unique_ptr< EcalTrigPrimDigiCollection > * ecalTps_
 
std::unique_ptr< EEDigiCollection > * eeDigis_
 
DCCEEEventBlockeeEventBlock_
 
std::unique_ptr< EESrFlagCollection > * eeSrFlags_
 
EcalElectronicsMapperelectronicsMapper_
 
std::unique_ptr< EcalElectronicsIdCollection > * invalidBlockLengths_
 
std::unique_ptr< EBDetIdCollection > * invalidChIds_
 
std::unique_ptr< EEDetIdCollection > * invalidEEChIds_
 
std::unique_ptr< EEDetIdCollection > * invalidEEGains_
 
std::unique_ptr< EEDetIdCollection > * invalidEEGainsSwitch_
 
std::unique_ptr< EBDetIdCollection > * invalidGains_
 
std::unique_ptr< EBDetIdCollection > * invalidGainsSwitch_
 
std::unique_ptr< EcalElectronicsIdCollection > * invalidMemBlockSizes_
 
std::unique_ptr< EcalElectronicsIdCollection > * invalidMemChIds_
 
std::unique_ptr< EcalElectronicsIdCollection > * invalidMemGains_
 
std::unique_ptr< EcalElectronicsIdCollection > * invalidMemTtIds_
 
std::unique_ptr< EcalElectronicsIdCollection > * invalidTTIds_
 
std::unique_ptr< EcalElectronicsIdCollection > * invalidZSXtalIds_
 
std::unique_ptr< EcalPnDiodeDigiCollection > * pnDiodeDigis_
 

Detailed Description

Definition at line 49 of file DCCDataUnpacker.h.

Constructor & Destructor Documentation

◆ DCCDataUnpacker()

DCCDataUnpacker::DCCDataUnpacker ( EcalElectronicsMapper mapper,
bool  hU,
bool  srpU,
bool  tccU,
bool  feU,
bool  memU,
bool  syncCheck,
bool  feIdCheck,
bool  forceToKeepFRdata 
)

Definition at line 11 of file DCCDataUnpacker.cc.

19  {
20  electronicsMapper_ = mapper;
21  ebEventBlock_ = new DCCEBEventBlock(this, mapper, hU, srpU, tccU, feU, memU, forceToKeepFRdata);
22  eeEventBlock_ = new DCCEEEventBlock(this, mapper, hU, srpU, tccU, feU, memU, forceToKeepFRdata);
23  if (syncCheck) {
26  }
27  if (feIdCheck) {
30  }
31 }

References ebEventBlock_, eeEventBlock_, electronicsMapper_, DCCEventBlock::enableFeIdChecks(), DCCEventBlock::enableSyncChecks(), ecalcalib_dqm_sourceclient-live_cfg::feIdCheck, and ecalcalib_dqm_sourceclient-live_cfg::syncCheck.

◆ ~DCCDataUnpacker()

DCCDataUnpacker::~DCCDataUnpacker ( )

Definition at line 49 of file DCCDataUnpacker.cc.

49  {
50  delete ebEventBlock_;
51  delete eeEventBlock_;
52 }

References ebEventBlock_, and eeEventBlock_.

Member Function Documentation

◆ currentEvent()

DCCEventBlock* DCCDataUnpacker::currentEvent ( )
inline

Get the associated event

Definition at line 183 of file DCCDataUnpacker.h.

183 { return currentEvent_; }

References currentEvent_.

◆ dccHeadersCollection()

std::unique_ptr<EcalRawDataCollection>* DCCDataUnpacker::dccHeadersCollection ( )
inline

Definition at line 130 of file DCCDataUnpacker.h.

130 { return dccHeaders_; }

References dccHeaders_.

Referenced by DCCEventBlock::updateCollectors().

◆ ebDigisCollection()

std::unique_ptr<EBDigiCollection>* DCCDataUnpacker::ebDigisCollection ( )
inline

Get the collection pointers

Definition at line 118 of file DCCDataUnpacker.h.

118 { return ebDigis_; }

References ebDigis_.

Referenced by DCCTowerBlock::updateCollectors().

◆ ebSrFlagsCollection()

std::unique_ptr<EBSrFlagCollection>* DCCDataUnpacker::ebSrFlagsCollection ( )
inline

Definition at line 126 of file DCCDataUnpacker.h.

126 { return ebSrFlags_; }

References ebSrFlags_.

Referenced by DCCEBSRPBlock::updateCollectors().

◆ ecalPSsCollection()

std::unique_ptr<EcalPSInputDigiCollection>* DCCDataUnpacker::ecalPSsCollection ( )
inline

Definition at line 124 of file DCCDataUnpacker.h.

124 { return ecalPSs_; }

References ecalPSs_.

Referenced by DCCEETCCBlock::updateCollectors().

◆ ecalTpsCollection()

std::unique_ptr<EcalTrigPrimDigiCollection>* DCCDataUnpacker::ecalTpsCollection ( )
inline

Definition at line 122 of file DCCDataUnpacker.h.

122 { return ecalTps_; }

References ecalTps_.

Referenced by DCCEETCCBlock::updateCollectors(), and DCCEBTCCBlock::updateCollectors().

◆ eeDigisCollection()

std::unique_ptr<EEDigiCollection>* DCCDataUnpacker::eeDigisCollection ( )
inline

Definition at line 120 of file DCCDataUnpacker.h.

120 { return eeDigis_; }

References eeDigis_.

Referenced by DCCSCBlock::updateCollectors().

◆ eeSrFlagsCollection()

std::unique_ptr<EESrFlagCollection>* DCCDataUnpacker::eeSrFlagsCollection ( )
inline

Definition at line 128 of file DCCDataUnpacker.h.

128 { return eeSrFlags_; }

References eeSrFlags_.

Referenced by DCCEESRPBlock::updateCollectors().

◆ electronicsMapper()

const EcalElectronicsMapper* DCCDataUnpacker::electronicsMapper ( ) const
inline

Get the ECAL electronics Mapper

Definition at line 165 of file DCCDataUnpacker.h.

165 { return electronicsMapper_; }

References electronicsMapper_.

Referenced by printStatusRecords().

◆ getCCUValue()

uint16_t DCCDataUnpacker::getCCUValue ( const int  fed,
const int  ccu 
) const

Definition at line 89 of file DCCDataUnpacker.cc.

89  {
90  // get list of crystals (DetId) which correspond to given CCU
91  // (return empty list for MEM channels [CCU > 68])
92  const int dcc = electronicsMapper_->getSMId(fed);
93  const std::vector<DetId> xtals =
94  (ccu <= 68) ? electronicsMapper_->mapping()->dccTowerConstituents(dcc, ccu) : std::vector<DetId>();
95 
96  // collect set of status codes of given CCU
97  std::set<uint16_t> set;
98  for (size_t i = 0; i < xtals.size(); ++i) {
99  const uint16_t val = getChannelValue(xtals[i]);
100  set.insert(val);
101  }
102 
103  // if all crystals in CCU have the same status
104  // then this status is treated as CCU status
105  if (set.size() == 1)
106  return *set.begin();
107 
108  // if there are several or no statuses:
109  return 0;
110 }

References EcalElectronicsMapping::dccTowerConstituents(), electronicsMapper_, getChannelValue(), EcalElectronicsMapper::getSMId(), mps_fire::i, EcalElectronicsMapper::mapping(), and heppy_batch::val.

Referenced by DCCEEEventBlock::unpack(), and DCCEBEventBlock::unpack().

◆ getChannelStatus()

uint16_t DCCDataUnpacker::getChannelStatus ( const DetId id) const

Definition at line 54 of file DCCDataUnpacker.cc.

54  {
55  // return code for situation of missing channel record
56  // equal to "non responding isolated channel (dead of type other)":
57  // https://twiki.cern.ch/twiki/bin/view/CMS/SWGuideEcalRecoLocalReco#Treatment_of_problematic_channel
58  // TODO: think on a better way how to cover this case
59  const uint16_t NO_DATA = 11;
60 
61  if (chdb_ == nullptr) {
62  edm::LogError("IncorrectMapping") << "ECAL channel status database do not initialized";
63  return NO_DATA;
64  }
65 
67 
68  if (pCh != chdb_->end()) {
69  return pCh->getStatusCode();
70  } else {
71  edm::LogError("IncorrectMapping") << "No channel status record found for detit = " << id.rawId();
72  return NO_DATA;
73  }
74 }

References chdb_, EcalCondObjectContainer< T >::end(), and EcalCondObjectContainer< T >::find().

Referenced by getChannelValue().

◆ getChannelValue() [1/2]

uint16_t DCCDataUnpacker::getChannelValue ( const DetId id) const

Definition at line 76 of file DCCDataUnpacker.cc.

76 { return getChannelStatus(id) & 0x1F; }

References getChannelStatus().

Referenced by getCCUValue(), printStatusRecords(), DCCSCBlock::unpackXtalData(), and DCCTowerBlock::unpackXtalData().

◆ getChannelValue() [2/2]

uint16_t DCCDataUnpacker::getChannelValue ( const int  fed,
const int  ccu,
const int  strip,
const int  xtal 
) const

Definition at line 78 of file DCCDataUnpacker.cc.

78  {
79  // conversion FED ID [601 - 654] -> DCC ID [1 - 54]
80  const int dcc = electronicsMapper_->getSMId(fed);
81 
82  // convert (dcc, ccu, strip, xtal) -> DetId
83  const EcalElectronicsId eid(dcc, ccu, strip, xtal);
85 
86  return getChannelStatus(id) & 0x1F;
87 }

References runTauDisplay::eid, electronicsMapper_, getChannelStatus(), EcalElectronicsMapping::getDetId(), EcalElectronicsMapper::getSMId(), EcalElectronicsMapper::mapping(), and digitizers_cfi::strip.

◆ invalidBlockLengthsCollection()

std::unique_ptr<EcalElectronicsIdCollection>* DCCDataUnpacker::invalidBlockLengthsCollection ( )
inline

Definition at line 150 of file DCCDataUnpacker.h.

150 { return invalidBlockLengths_; }

References invalidBlockLengths_.

Referenced by DCCFEBlock::updateCollectors().

◆ invalidChIdsCollection()

std::unique_ptr<EBDetIdCollection>* DCCDataUnpacker::invalidChIdsCollection ( )
inline

Definition at line 136 of file DCCDataUnpacker.h.

136 { return invalidChIds_; }

References invalidChIds_.

Referenced by DCCTowerBlock::updateCollectors().

◆ invalidEEChIdsCollection()

std::unique_ptr<EEDetIdCollection>* DCCDataUnpacker::invalidEEChIdsCollection ( )
inline

Definition at line 143 of file DCCDataUnpacker.h.

143 { return invalidEEChIds_; }

References invalidEEChIds_.

Referenced by DCCSCBlock::updateCollectors().

◆ invalidEEGainsCollection()

std::unique_ptr<EEDetIdCollection>* DCCDataUnpacker::invalidEEGainsCollection ( )
inline

Definition at line 139 of file DCCDataUnpacker.h.

139 { return invalidEEGains_; }

References invalidEEGains_.

Referenced by DCCSCBlock::updateCollectors().

◆ invalidEEGainsSwitchCollection()

std::unique_ptr<EEDetIdCollection>* DCCDataUnpacker::invalidEEGainsSwitchCollection ( )
inline

Definition at line 141 of file DCCDataUnpacker.h.

141 { return invalidEEGainsSwitch_; }

References invalidEEGainsSwitch_.

Referenced by DCCSCBlock::updateCollectors().

◆ invalidGainsCollection()

std::unique_ptr<EBDetIdCollection>* DCCDataUnpacker::invalidGainsCollection ( )
inline

Definition at line 132 of file DCCDataUnpacker.h.

132 { return invalidGains_; }

References invalidGains_.

Referenced by DCCTowerBlock::updateCollectors().

◆ invalidGainsSwitchCollection()

std::unique_ptr<EBDetIdCollection>* DCCDataUnpacker::invalidGainsSwitchCollection ( )
inline

Definition at line 134 of file DCCDataUnpacker.h.

134 { return invalidGainsSwitch_; }

References invalidGainsSwitch_.

Referenced by DCCTowerBlock::updateCollectors().

◆ invalidMemBlockSizesCollection()

std::unique_ptr<EcalElectronicsIdCollection>* DCCDataUnpacker::invalidMemBlockSizesCollection ( )
inline

Definition at line 154 of file DCCDataUnpacker.h.

154 { return invalidMemBlockSizes_; }

References invalidMemBlockSizes_.

Referenced by DCCMemBlock::updateCollectors().

◆ invalidMemChIdsCollection()

std::unique_ptr<EcalElectronicsIdCollection>* DCCDataUnpacker::invalidMemChIdsCollection ( )
inline

Definition at line 156 of file DCCDataUnpacker.h.

156 { return invalidMemChIds_; }

References invalidMemChIds_.

Referenced by DCCMemBlock::updateCollectors().

◆ invalidMemGainsCollection()

std::unique_ptr<EcalElectronicsIdCollection>* DCCDataUnpacker::invalidMemGainsCollection ( )
inline

Definition at line 158 of file DCCDataUnpacker.h.

158 { return invalidMemGains_; }

References invalidMemGains_.

Referenced by DCCMemBlock::updateCollectors().

◆ invalidMemTtIdsCollection()

std::unique_ptr<EcalElectronicsIdCollection>* DCCDataUnpacker::invalidMemTtIdsCollection ( )
inline

Definition at line 152 of file DCCDataUnpacker.h.

152 { return invalidMemTtIds_; }

References invalidMemTtIds_.

Referenced by DCCMemBlock::updateCollectors().

◆ invalidTTIdsCollection()

std::unique_ptr<EcalElectronicsIdCollection>* DCCDataUnpacker::invalidTTIdsCollection ( )
inline

Definition at line 146 of file DCCDataUnpacker.h.

146 { return invalidTTIds_; }

References invalidTTIds_.

Referenced by DCCFEBlock::updateCollectors().

◆ invalidZSXtalIdsCollection()

std::unique_ptr<EcalElectronicsIdCollection>* DCCDataUnpacker::invalidZSXtalIdsCollection ( )
inline

Definition at line 148 of file DCCDataUnpacker.h.

148 { return invalidZSXtalIds_; }

References invalidZSXtalIds_.

Referenced by DCCFEBlock::updateCollectors().

◆ pnDiodeDigisCollection()

std::unique_ptr<EcalPnDiodeDigiCollection>* DCCDataUnpacker::pnDiodeDigisCollection ( )
inline

Definition at line 160 of file DCCDataUnpacker.h.

160 { return pnDiodeDigis_; }

References pnDiodeDigis_.

Referenced by DCCMemBlock::updateCollectors().

◆ setChannelStatusDB()

void DCCDataUnpacker::setChannelStatusDB ( const EcalChannelStatusMap chdb)
inline

Functions to work with Channel Status DB

Definition at line 170 of file DCCDataUnpacker.h.

170 { chdb_ = chdb; }

References chdb_.

Referenced by EcalRawToDigi::beginRun().

◆ setDccHeadersCollection()

void DCCDataUnpacker::setDccHeadersCollection ( std::unique_ptr< EcalRawDataCollection > *  x)
inline

Definition at line 74 of file DCCDataUnpacker.h.

74 { dccHeaders_ = x; }

References dccHeaders_, and x.

Referenced by EcalRawToDigi::produce().

◆ setEBDigisCollection()

void DCCDataUnpacker::setEBDigisCollection ( std::unique_ptr< EBDigiCollection > *  x)
inline

Set the collection pointers

Definition at line 70 of file DCCDataUnpacker.h.

70 { ebDigis_ = x; }

References ebDigis_, and x.

Referenced by EcalRawToDigi::produce().

◆ setEBSrFlagsCollection()

void DCCDataUnpacker::setEBSrFlagsCollection ( std::unique_ptr< EBSrFlagCollection > *  x)
inline

Definition at line 76 of file DCCDataUnpacker.h.

76 { ebSrFlags_ = x; }

References ebSrFlags_, and x.

Referenced by EcalRawToDigi::produce().

◆ setEcalPSsCollection()

void DCCDataUnpacker::setEcalPSsCollection ( std::unique_ptr< EcalPSInputDigiCollection > *  x)
inline

Definition at line 82 of file DCCDataUnpacker.h.

82 { ecalPSs_ = x; }

References ecalPSs_, and x.

Referenced by EcalRawToDigi::produce().

◆ setEcalTpsCollection()

void DCCDataUnpacker::setEcalTpsCollection ( std::unique_ptr< EcalTrigPrimDigiCollection > *  x)
inline

Definition at line 80 of file DCCDataUnpacker.h.

80 { ecalTps_ = x; }

References ecalTps_, and x.

Referenced by EcalRawToDigi::produce().

◆ setEEDigisCollection()

void DCCDataUnpacker::setEEDigisCollection ( std::unique_ptr< EEDigiCollection > *  x)
inline

Definition at line 72 of file DCCDataUnpacker.h.

72 { eeDigis_ = x; }

References eeDigis_, and x.

Referenced by EcalRawToDigi::produce().

◆ setEESrFlagsCollection()

void DCCDataUnpacker::setEESrFlagsCollection ( std::unique_ptr< EESrFlagCollection > *  x)
inline

Definition at line 78 of file DCCDataUnpacker.h.

78 { eeSrFlags_ = x; }

References eeSrFlags_, and x.

Referenced by EcalRawToDigi::produce().

◆ setInvalidBlockLengthsCollection()

void DCCDataUnpacker::setInvalidBlockLengthsCollection ( std::unique_ptr< EcalElectronicsIdCollection > *  x)
inline

Definition at line 102 of file DCCDataUnpacker.h.

102 { invalidBlockLengths_ = x; }

References invalidBlockLengths_, and x.

Referenced by EcalRawToDigi::produce().

◆ setInvalidChIdsCollection()

void DCCDataUnpacker::setInvalidChIdsCollection ( std::unique_ptr< EBDetIdCollection > *  x)
inline

Definition at line 88 of file DCCDataUnpacker.h.

88 { invalidChIds_ = x; }

References invalidChIds_, and x.

Referenced by EcalRawToDigi::produce().

◆ setInvalidEEChIdsCollection()

void DCCDataUnpacker::setInvalidEEChIdsCollection ( std::unique_ptr< EEDetIdCollection > *  x)
inline

Definition at line 95 of file DCCDataUnpacker.h.

95 { invalidEEChIds_ = x; }

References invalidEEChIds_, and x.

Referenced by EcalRawToDigi::produce().

◆ setInvalidEEGainsCollection()

void DCCDataUnpacker::setInvalidEEGainsCollection ( std::unique_ptr< EEDetIdCollection > *  x)
inline

Definition at line 91 of file DCCDataUnpacker.h.

91 { invalidEEGains_ = x; }

References invalidEEGains_, and x.

Referenced by EcalRawToDigi::produce().

◆ setInvalidEEGainsSwitchCollection()

void DCCDataUnpacker::setInvalidEEGainsSwitchCollection ( std::unique_ptr< EEDetIdCollection > *  x)
inline

Definition at line 93 of file DCCDataUnpacker.h.

References invalidEEGainsSwitch_, and x.

Referenced by EcalRawToDigi::produce().

◆ setInvalidGainsCollection()

void DCCDataUnpacker::setInvalidGainsCollection ( std::unique_ptr< EBDetIdCollection > *  x)
inline

Definition at line 84 of file DCCDataUnpacker.h.

84 { invalidGains_ = x; }

References invalidGains_, and x.

Referenced by EcalRawToDigi::produce().

◆ setInvalidGainsSwitchCollection()

void DCCDataUnpacker::setInvalidGainsSwitchCollection ( std::unique_ptr< EBDetIdCollection > *  x)
inline

Definition at line 86 of file DCCDataUnpacker.h.

References invalidGainsSwitch_, and x.

Referenced by EcalRawToDigi::produce().

◆ setInvalidMemBlockSizesCollection()

void DCCDataUnpacker::setInvalidMemBlockSizesCollection ( std::unique_ptr< EcalElectronicsIdCollection > *  x)
inline

Definition at line 108 of file DCCDataUnpacker.h.

References invalidMemBlockSizes_, and x.

Referenced by EcalRawToDigi::produce().

◆ setInvalidMemChIdsCollection()

void DCCDataUnpacker::setInvalidMemChIdsCollection ( std::unique_ptr< EcalElectronicsIdCollection > *  x)
inline

Definition at line 110 of file DCCDataUnpacker.h.

110 { invalidMemChIds_ = x; }

References invalidMemChIds_, and x.

Referenced by EcalRawToDigi::produce().

◆ setInvalidMemGainsCollection()

void DCCDataUnpacker::setInvalidMemGainsCollection ( std::unique_ptr< EcalElectronicsIdCollection > *  x)
inline

Definition at line 112 of file DCCDataUnpacker.h.

112 { invalidMemGains_ = x; }

References invalidMemGains_, and x.

Referenced by EcalRawToDigi::produce().

◆ setInvalidMemTtIdsCollection()

void DCCDataUnpacker::setInvalidMemTtIdsCollection ( std::unique_ptr< EcalElectronicsIdCollection > *  x)
inline

Definition at line 106 of file DCCDataUnpacker.h.

106 { invalidMemTtIds_ = x; }

References invalidMemTtIds_, and x.

Referenced by EcalRawToDigi::produce().

◆ setInvalidTTIdsCollection()

void DCCDataUnpacker::setInvalidTTIdsCollection ( std::unique_ptr< EcalElectronicsIdCollection > *  x)
inline

Definition at line 98 of file DCCDataUnpacker.h.

98 { invalidTTIds_ = x; }

References invalidTTIds_, and x.

Referenced by EcalRawToDigi::produce().

◆ setInvalidZSXtalIdsCollection()

void DCCDataUnpacker::setInvalidZSXtalIdsCollection ( std::unique_ptr< EcalElectronicsIdCollection > *  x)
inline

Definition at line 100 of file DCCDataUnpacker.h.

100 { invalidZSXtalIds_ = x; }

References invalidZSXtalIds_, and x.

Referenced by EcalRawToDigi::produce().

◆ setPnDiodeDigisCollection()

void DCCDataUnpacker::setPnDiodeDigisCollection ( std::unique_ptr< EcalPnDiodeDigiCollection > *  x)
inline

Definition at line 104 of file DCCDataUnpacker.h.

104 { pnDiodeDigis_ = x; }

References pnDiodeDigis_, and x.

Referenced by EcalRawToDigi::produce().

◆ unpack()

void DCCDataUnpacker::unpack ( const uint64_t *  buffer,
size_t  bufferSize,
unsigned int  smId,
unsigned int  fedId 
)

Unpack data from a buffer

Definition at line 33 of file DCCDataUnpacker.cc.

33  {
34  //buffer is pointer to binary data
35  //See if this fed is on EB or in EE
36 
37  if (smId > 9 && smId < 46) {
40  ebEventBlock_->unpack(buffer, bufferSize, fedId);
41 
42  } else {
45  eeEventBlock_->unpack(buffer, bufferSize, fedId);
46  }
47 }

References edmScanValgrind::buffer, currentEvent_, ebEventBlock_, eeEventBlock_, l1tstage2_dqm_sourceclient-live_cfg::fedId, DCCEEEventBlock::unpack(), DCCEBEventBlock::unpack(), and DCCEventBlock::updateCollectors().

Referenced by EcalRawToDigi::produce().

Member Data Documentation

◆ chdb_

const EcalChannelStatusMap* DCCDataUnpacker::chdb_
protected

Definition at line 215 of file DCCDataUnpacker.h.

Referenced by getChannelStatus(), and setChannelStatusDB().

◆ currentEvent_

DCCEventBlock* DCCDataUnpacker::currentEvent_
protected

Definition at line 216 of file DCCDataUnpacker.h.

Referenced by currentEvent(), and unpack().

◆ dccHeaders_

std::unique_ptr<EcalRawDataCollection>* DCCDataUnpacker::dccHeaders_
protected

Definition at line 193 of file DCCDataUnpacker.h.

Referenced by dccHeadersCollection(), and setDccHeadersCollection().

◆ ebDigis_

std::unique_ptr<EBDigiCollection>* DCCDataUnpacker::ebDigis_
protected

Definition at line 189 of file DCCDataUnpacker.h.

Referenced by ebDigisCollection(), and setEBDigisCollection().

◆ ebEventBlock_

DCCEBEventBlock* DCCDataUnpacker::ebEventBlock_
protected

Definition at line 217 of file DCCDataUnpacker.h.

Referenced by DCCDataUnpacker(), unpack(), and ~DCCDataUnpacker().

◆ ebSrFlags_

std::unique_ptr<EBSrFlagCollection>* DCCDataUnpacker::ebSrFlags_
protected

Definition at line 202 of file DCCDataUnpacker.h.

Referenced by ebSrFlagsCollection(), and setEBSrFlagsCollection().

◆ ecalPSs_

std::unique_ptr<EcalPSInputDigiCollection>* DCCDataUnpacker::ecalPSs_
protected

Definition at line 192 of file DCCDataUnpacker.h.

Referenced by ecalPSsCollection(), and setEcalPSsCollection().

◆ ecalTps_

std::unique_ptr<EcalTrigPrimDigiCollection>* DCCDataUnpacker::ecalTps_
protected

Definition at line 191 of file DCCDataUnpacker.h.

Referenced by ecalTpsCollection(), and setEcalTpsCollection().

◆ eeDigis_

std::unique_ptr<EEDigiCollection>* DCCDataUnpacker::eeDigis_
protected

Definition at line 190 of file DCCDataUnpacker.h.

Referenced by eeDigisCollection(), and setEEDigisCollection().

◆ eeEventBlock_

DCCEEEventBlock* DCCDataUnpacker::eeEventBlock_
protected

Definition at line 218 of file DCCDataUnpacker.h.

Referenced by DCCDataUnpacker(), unpack(), and ~DCCDataUnpacker().

◆ eeSrFlags_

std::unique_ptr<EESrFlagCollection>* DCCDataUnpacker::eeSrFlags_
protected

Definition at line 203 of file DCCDataUnpacker.h.

Referenced by eeSrFlagsCollection(), and setEESrFlagsCollection().

◆ electronicsMapper_

EcalElectronicsMapper* DCCDataUnpacker::electronicsMapper_
protected

◆ invalidBlockLengths_

std::unique_ptr<EcalElectronicsIdCollection>* DCCDataUnpacker::invalidBlockLengths_
protected

◆ invalidChIds_

std::unique_ptr<EBDetIdCollection>* DCCDataUnpacker::invalidChIds_
protected

Definition at line 196 of file DCCDataUnpacker.h.

Referenced by invalidChIdsCollection(), and setInvalidChIdsCollection().

◆ invalidEEChIds_

std::unique_ptr<EEDetIdCollection>* DCCDataUnpacker::invalidEEChIds_
protected

Definition at line 200 of file DCCDataUnpacker.h.

Referenced by invalidEEChIdsCollection(), and setInvalidEEChIdsCollection().

◆ invalidEEGains_

std::unique_ptr<EEDetIdCollection>* DCCDataUnpacker::invalidEEGains_
protected

Definition at line 198 of file DCCDataUnpacker.h.

Referenced by invalidEEGainsCollection(), and setInvalidEEGainsCollection().

◆ invalidEEGainsSwitch_

std::unique_ptr<EEDetIdCollection>* DCCDataUnpacker::invalidEEGainsSwitch_
protected

◆ invalidGains_

std::unique_ptr<EBDetIdCollection>* DCCDataUnpacker::invalidGains_
protected

Definition at line 194 of file DCCDataUnpacker.h.

Referenced by invalidGainsCollection(), and setInvalidGainsCollection().

◆ invalidGainsSwitch_

std::unique_ptr<EBDetIdCollection>* DCCDataUnpacker::invalidGainsSwitch_
protected

◆ invalidMemBlockSizes_

std::unique_ptr<EcalElectronicsIdCollection>* DCCDataUnpacker::invalidMemBlockSizes_
protected

◆ invalidMemChIds_

std::unique_ptr<EcalElectronicsIdCollection>* DCCDataUnpacker::invalidMemChIds_
protected

Definition at line 210 of file DCCDataUnpacker.h.

Referenced by invalidMemChIdsCollection(), and setInvalidMemChIdsCollection().

◆ invalidMemGains_

std::unique_ptr<EcalElectronicsIdCollection>* DCCDataUnpacker::invalidMemGains_
protected

Definition at line 211 of file DCCDataUnpacker.h.

Referenced by invalidMemGainsCollection(), and setInvalidMemGainsCollection().

◆ invalidMemTtIds_

std::unique_ptr<EcalElectronicsIdCollection>* DCCDataUnpacker::invalidMemTtIds_
protected

Definition at line 208 of file DCCDataUnpacker.h.

Referenced by invalidMemTtIdsCollection(), and setInvalidMemTtIdsCollection().

◆ invalidTTIds_

std::unique_ptr<EcalElectronicsIdCollection>* DCCDataUnpacker::invalidTTIds_
protected

Definition at line 204 of file DCCDataUnpacker.h.

Referenced by invalidTTIdsCollection(), and setInvalidTTIdsCollection().

◆ invalidZSXtalIds_

std::unique_ptr<EcalElectronicsIdCollection>* DCCDataUnpacker::invalidZSXtalIds_
protected

Definition at line 205 of file DCCDataUnpacker.h.

Referenced by invalidZSXtalIdsCollection(), and setInvalidZSXtalIdsCollection().

◆ pnDiodeDigis_

std::unique_ptr<EcalPnDiodeDigiCollection>* DCCDataUnpacker::pnDiodeDigis_
protected

Definition at line 212 of file DCCDataUnpacker.h.

Referenced by pnDiodeDigisCollection(), and setPnDiodeDigisCollection().

◆ silentMode_

std::atomic< bool > DCCDataUnpacker::silentMode_
static
EcalCondObjectContainer::end
const_iterator end() const
Definition: EcalCondObjectContainer.h:74
DCCDataUnpacker::invalidMemTtIds_
std::unique_ptr< EcalElectronicsIdCollection > * invalidMemTtIds_
Definition: DCCDataUnpacker.h:208
mps_fire.i
i
Definition: mps_fire.py:428
DCCEEEventBlock::unpack
void unpack(const uint64_t *buffer, size_t bufferSize, unsigned int expFedId) override
Definition: DCCEEEventBlock.cc:35
DCCDataUnpacker::pnDiodeDigis_
std::unique_ptr< EcalPnDiodeDigiCollection > * pnDiodeDigis_
Definition: DCCDataUnpacker.h:212
DCCDataUnpacker::invalidEEGainsSwitch_
std::unique_ptr< EEDetIdCollection > * invalidEEGainsSwitch_
Definition: DCCDataUnpacker.h:199
digitizers_cfi.strip
strip
Definition: digitizers_cfi.py:19
DCCEventBlock::enableSyncChecks
void enableSyncChecks()
Definition: DCCEventBlock.cc:69
EcalElectronicsMapping::dccTowerConstituents
std::vector< DetId > dccTowerConstituents(int dccId, int tower) const
Get the constituent detids for this dccId.
Definition: EcalElectronicsMapping.cc:589
DCCDataUnpacker::ebEventBlock_
DCCEBEventBlock * ebEventBlock_
Definition: DCCDataUnpacker.h:217
DCCDataUnpacker::ecalTps_
std::unique_ptr< EcalTrigPrimDigiCollection > * ecalTps_
Definition: DCCDataUnpacker.h:191
ecalcalib_dqm_sourceclient-live_cfg.feIdCheck
feIdCheck
Definition: ecalcalib_dqm_sourceclient-live_cfg.py:100
DDAxes::x
DCCDataUnpacker::invalidEEGains_
std::unique_ptr< EEDetIdCollection > * invalidEEGains_
Definition: DCCDataUnpacker.h:198
edmScanValgrind.buffer
buffer
Definition: edmScanValgrind.py:171
DCCDataUnpacker::invalidMemGains_
std::unique_ptr< EcalElectronicsIdCollection > * invalidMemGains_
Definition: DCCDataUnpacker.h:211
DCCDataUnpacker::eeSrFlags_
std::unique_ptr< EESrFlagCollection > * eeSrFlags_
Definition: DCCDataUnpacker.h:203
DCCDataUnpacker::invalidZSXtalIds_
std::unique_ptr< EcalElectronicsIdCollection > * invalidZSXtalIds_
Definition: DCCDataUnpacker.h:205
DCCDataUnpacker::invalidBlockLengths_
std::unique_ptr< EcalElectronicsIdCollection > * invalidBlockLengths_
Definition: DCCDataUnpacker.h:206
DetId
Definition: DetId.h:17
ecalcalib_dqm_sourceclient-live_cfg.syncCheck
syncCheck
Definition: ecalcalib_dqm_sourceclient-live_cfg.py:99
DCCDataUnpacker::chdb_
const EcalChannelStatusMap * chdb_
Definition: DCCDataUnpacker.h:215
DCCDataUnpacker::invalidGains_
std::unique_ptr< EBDetIdCollection > * invalidGains_
Definition: DCCDataUnpacker.h:194
DCCDataUnpacker::invalidEEChIds_
std::unique_ptr< EEDetIdCollection > * invalidEEChIds_
Definition: DCCDataUnpacker.h:200
EcalCondObjectContainer::find
const_iterator find(uint32_t rawId) const
Definition: EcalCondObjectContainer.h:53
DCCDataUnpacker::ebSrFlags_
std::unique_ptr< EBSrFlagCollection > * ebSrFlags_
Definition: DCCDataUnpacker.h:202
DCCEventBlock::updateCollectors
void updateCollectors()
Definition: DCCEventBlock.cc:131
DCCDataUnpacker::eeEventBlock_
DCCEEEventBlock * eeEventBlock_
Definition: DCCDataUnpacker.h:218
EcalElectronicsId
Ecal readout channel identification [32:20] Unused (so far) [19:13] DCC id [12:6] tower [5:3] strip [...
Definition: EcalElectronicsId.h:18
DCCDataUnpacker::invalidMemBlockSizes_
std::unique_ptr< EcalElectronicsIdCollection > * invalidMemBlockSizes_
Definition: DCCDataUnpacker.h:209
DCCEBEventBlock
Definition: DCCEBEventBlock.h:23
EcalElectronicsMapper::mapping
const EcalElectronicsMapping * mapping()
Definition: EcalElectronicsMapper.h:148
DCCDataUnpacker::ecalPSs_
std::unique_ptr< EcalPSInputDigiCollection > * ecalPSs_
Definition: DCCDataUnpacker.h:192
EcalElectronicsMapping::getDetId
DetId getDetId(const EcalElectronicsId &id) const
Get the detid given an electronicsId.
Definition: EcalElectronicsMapping.cc:410
runTauDisplay.eid
eid
Definition: runTauDisplay.py:298
EcalElectronicsMapper::getSMId
unsigned int getSMId(unsigned int aDCCId) const
Definition: EcalElectronicsMapper.cc:415
DCCDataUnpacker::dccHeaders_
std::unique_ptr< EcalRawDataCollection > * dccHeaders_
Definition: DCCDataUnpacker.h:193
DCCDataUnpacker::invalidGainsSwitch_
std::unique_ptr< EBDetIdCollection > * invalidGainsSwitch_
Definition: DCCDataUnpacker.h:195
l1tstage2_dqm_sourceclient-live_cfg.fedId
fedId
Definition: l1tstage2_dqm_sourceclient-live_cfg.py:89
edm::LogError
Log< level::Error, false > LogError
Definition: MessageLogger.h:123
DCCDataUnpacker::electronicsMapper_
EcalElectronicsMapper * electronicsMapper_
Definition: DCCDataUnpacker.h:214
DCCEEEventBlock
Definition: DCCEEEventBlock.h:22
DCCDataUnpacker::invalidChIds_
std::unique_ptr< EBDetIdCollection > * invalidChIds_
Definition: DCCDataUnpacker.h:196
heppy_batch.val
val
Definition: heppy_batch.py:351
DCCDataUnpacker::invalidTTIds_
std::unique_ptr< EcalElectronicsIdCollection > * invalidTTIds_
Definition: DCCDataUnpacker.h:204
DCCDataUnpacker::invalidMemChIds_
std::unique_ptr< EcalElectronicsIdCollection > * invalidMemChIds_
Definition: DCCDataUnpacker.h:210
DCCDataUnpacker::getChannelValue
uint16_t getChannelValue(const DetId &id) const
Definition: DCCDataUnpacker.cc:76
DCCDataUnpacker::eeDigis_
std::unique_ptr< EEDigiCollection > * eeDigis_
Definition: DCCDataUnpacker.h:190
DCCDataUnpacker::currentEvent_
DCCEventBlock * currentEvent_
Definition: DCCDataUnpacker.h:216
DCCDataUnpacker::ebDigis_
std::unique_ptr< EBDigiCollection > * ebDigis_
Definition: DCCDataUnpacker.h:189
EcalCondObjectContainer::const_iterator
std::vector< Item >::const_iterator const_iterator
Definition: EcalCondObjectContainer.h:19
DCCDataUnpacker::getChannelStatus
uint16_t getChannelStatus(const DetId &id) const
Definition: DCCDataUnpacker.cc:54
DCCEventBlock::enableFeIdChecks
void enableFeIdChecks()
Definition: DCCEventBlock.cc:76
DCCEBEventBlock::unpack
void unpack(const uint64_t *buffer, size_t bufferSize, unsigned int expFedId) override
Definition: DCCEBEventBlock.cc:38