CMS 3D CMS Logo

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

#include <DCCEESRPBlock.h>

Inheritance diagram for DCCEESRPBlock:
DCCSRPBlock DCCDataBlockPrototype

Public Member Functions

 DCCEESRPBlock (DCCDataUnpacker *u, EcalElectronicsMapper *m, DCCEventBlock *e, bool unpack)
 
void updateCollectors () override
 
- Public Member Functions inherited from DCCSRPBlock
 DCCSRPBlock (DCCDataUnpacker *u, EcalElectronicsMapper *m, DCCEventBlock *e, bool unpack)
 
void display (std::ostream &o) override
 
unsigned short srFlag (unsigned int feChannel)
 
virtual int unpack (const uint64_t **data, unsigned int *dwToEnd)
 
int unpack (const uint64_t **data, unsigned int *dwToEnd, unsigned int numbFlags=SRP_NUMBFLAGS)
 
- Public Member Functions inherited from DCCDataBlockPrototype
 DCCDataBlockPrototype (DCCDataUnpacker *unpacker, EcalElectronicsMapper *mapper, DCCEventBlock *event, bool unpack=true)
 
void enableSyncChecks ()
 
virtual unsigned int getLength ()
 
virtual int unpack (const uint64_t **data, unsigned int *dwToEnd)
 
virtual void updateEventPointers ()
 
virtual ~DCCDataBlockPrototype ()
 

Protected Member Functions

void addSRFlagToCollection () override
 
bool checkSrpIdAndNumbSRFlags () override
 

Protected Attributes

std::unique_ptr< EESrFlagCollection > * eeSrFlagsDigis_
 
EcalScDetIdpSCDetId_
 
- Protected Attributes inherited from DCCSRPBlock
unsigned int bx_
 
unsigned int expNumbSrFlags_
 
unsigned int l1_
 
unsigned int nSRFlags_
 
unsigned short srFlags_ [SRP_NUMBFLAGS]
 
unsigned int srpId_
 
- Protected Attributes inherited from DCCDataBlockPrototype
unsigned int blockLength_
 
const uint64_t * data_
 
const uint64_t ** datap_
 
unsigned int * dwToEnd_
 
bool error_
 
DCCEventBlockevent_
 
EcalElectronicsMappermapper_
 
bool sync_
 
DCCDataUnpackerunpacker_
 
bool unpackInternalData_
 

Detailed Description

Definition at line 30 of file DCCEESRPBlock.h.

Constructor & Destructor Documentation

◆ DCCEESRPBlock()

DCCEESRPBlock::DCCEESRPBlock ( DCCDataUnpacker u,
EcalElectronicsMapper m,
DCCEventBlock e,
bool  unpack 
)

Definition at line 6 of file DCCEESRPBlock.cc.

7  : DCCSRPBlock(u, m, e, unpack) {}

Member Function Documentation

◆ addSRFlagToCollection()

void DCCEESRPBlock::addSRFlagToCollection ( )
overrideprotectedvirtual

Reimplemented from DCCSRPBlock.

Definition at line 14 of file DCCEESRPBlock.cc.

14  {
15  // Point to SR flags
16  data_++;
17  const uint16_t *my16Bitp_ = reinterpret_cast<const uint16_t *>(data_);
18 
19  for (unsigned int n = 0; n < expNumbSrFlags_; n++, pSCDetId_++) {
20  if (n != 0 && n % 4 == 0)
21  my16Bitp_++;
22 
23  unsigned short srFlag = (*my16Bitp_ >> ((n - (n / 4) * 4) * 3)) & SRP_SRFLAG_MASK;
24  srFlags_[n] = srFlag;
25  if (unpackInternalData_) {
26  std::vector<EcalSrFlag *> srs = mapper_->getSrFlagPointer(n + 1);
27  for (size_t i = 0; i < srs.size(); ++i) {
28  srs[i]->setValue(srFlag);
29  (*eeSrFlagsDigis_)->push_back(*((EESrFlag *)srs[i]));
30  }
31  }
32  }
33 }

References DCCDataBlockPrototype::data_, DCCSRPBlock::expNumbSrFlags_, EcalElectronicsMapper::getSrFlagPointer(), mps_fire::i, DCCDataBlockPrototype::mapper_, dqmiodumpmetadata::n, pSCDetId_, DCCSRPBlock::srFlag(), DCCSRPBlock::srFlags_, SRP_SRFLAG_MASK, and DCCDataBlockPrototype::unpackInternalData_.

◆ checkSrpIdAndNumbSRFlags()

bool DCCEESRPBlock::checkSrpIdAndNumbSRFlags ( )
overrideprotectedvirtual

Reimplemented from DCCSRPBlock.

Definition at line 35 of file DCCEESRPBlock.cc.

35  {
36  expNumbSrFlags_ = 36; //to be corrected
37 
38  int dccId = mapper_->getActiveDCC() - 600;
40  expNumbSrFlags_ = 41;
41 
42  //todo : checks to be implemented...
43  return true;
44 }

References ecaldqm::dccId(), DCCSRPBlock::expNumbSrFlags_, EcalElectronicsMapper::getActiveDCC(), DCCDataBlockPrototype::mapper_, SECTOR_EEM_CCU_JUMP, and SECTOR_EEP_CCU_JUMP.

◆ updateCollectors()

void DCCEESRPBlock::updateCollectors ( )
overridevirtual

Reimplemented from DCCDataBlockPrototype.

Definition at line 9 of file DCCEESRPBlock.cc.

9  {
10  // Set SR flag digis
12 }

References DCCDataUnpacker::eeSrFlagsCollection(), eeSrFlagsDigis_, and DCCDataBlockPrototype::unpacker_.

Member Data Documentation

◆ eeSrFlagsDigis_

std::unique_ptr<EESrFlagCollection>* DCCEESRPBlock::eeSrFlagsDigis_
protected

Definition at line 41 of file DCCEESRPBlock.h.

Referenced by updateCollectors().

◆ pSCDetId_

EcalScDetId* DCCEESRPBlock::pSCDetId_
protected

Definition at line 43 of file DCCEESRPBlock.h.

Referenced by addSRFlagToCollection().

EESrFlag
Definition: EESrFlag.h:13
SECTOR_EEM_CCU_JUMP
Definition: DCCRawDataDefinitions.h:62
mps_fire.i
i
Definition: mps_fire.py:355
DCCDataUnpacker::eeSrFlagsCollection
std::unique_ptr< EESrFlagCollection > * eeSrFlagsCollection()
Definition: DCCDataUnpacker.h:128
dqmiodumpmetadata.n
n
Definition: dqmiodumpmetadata.py:28
DCCSRPBlock::srFlags_
unsigned short srFlags_[SRP_NUMBFLAGS]
Definition: DCCSRPBlock.h:51
DCCDataBlockPrototype::data_
const uint64_t * data_
Definition: DCCDataBlockPrototype.h:73
DCCSRPBlock::expNumbSrFlags_
unsigned int expNumbSrFlags_
Definition: DCCSRPBlock.h:49
SRP_SRFLAG_MASK
Definition: DCCRawDataDefinitions.h:209
DCCEESRPBlock::pSCDetId_
EcalScDetId * pSCDetId_
Definition: DCCEESRPBlock.h:43
visualization-live-secondInstance_cfg.m
m
Definition: visualization-live-secondInstance_cfg.py:72
DCCSRPBlock::srFlag
unsigned short srFlag(unsigned int feChannel)
Definition: DCCSRPBlock.h:38
DCCDataBlockPrototype::unpacker_
DCCDataUnpacker * unpacker_
Definition: DCCDataBlockPrototype.h:67
EcalElectronicsMapper::getActiveDCC
unsigned int getActiveDCC()
Definition: EcalElectronicsMapper.h:126
DCCEESRPBlock::eeSrFlagsDigis_
std::unique_ptr< EESrFlagCollection > * eeSrFlagsDigis_
Definition: DCCEESRPBlock.h:41
DCCSRPBlock::DCCSRPBlock
DCCSRPBlock(DCCDataUnpacker *u, EcalElectronicsMapper *m, DCCEventBlock *e, bool unpack)
Definition: DCCSRPBlock.cc:6
EcalElectronicsMapper::getSrFlagPointer
std::vector< EcalSrFlag * > getSrFlagPointer(unsigned int feChannel)
Definition: EcalElectronicsMapper.h:122
DCCSRPBlock::unpack
int unpack(const uint64_t **data, unsigned int *dwToEnd, unsigned int numbFlags=SRP_NUMBFLAGS)
Definition: DCCSRPBlock.cc:16
DCCDataBlockPrototype::mapper_
EcalElectronicsMapper * mapper_
Definition: DCCDataBlockPrototype.h:69
SECTOR_EEP_CCU_JUMP
Definition: DCCRawDataDefinitions.h:63
DCCDataBlockPrototype::unpackInternalData_
bool unpackInternalData_
Definition: DCCDataBlockPrototype.h:77
MillePedeFileConverter_cfg.e
e
Definition: MillePedeFileConverter_cfg.py:37
ecaldqm::dccId
unsigned dccId(DetId const &)
Definition: EcalDQMCommonUtils.cc:16