CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Types | Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | Friends
EcalElectronicsMapper Class Reference

#include <EcalElectronicsMapper.h>

Public Types

enum  SMGeom_t {
  kModules = 4, kTriggerTowers = 68, kTowersInPhi = 4, kTowersInEta = 17,
  kCrystals = 1700, kPns = 10, kCrystalsInPhi = 20, kCrystalsInEta = 85,
  kCrystalsPerTower = 25, kCardsPerTower = 5, kChannelsPerCard = 5, TTMAPMASK = 100
}
 

Public Member Functions

void deletePointers ()
 
 EcalElectronicsMapper (unsigned int numbOfXtalTSamples, unsigned int numbOfTriggerTSamples)
 
unsigned int getActiveDCC ()
 
unsigned int getActiveSM ()
 
unsigned int getDCCId (unsigned int aSMId) const
 
const std::map< unsigned int,unsigned
int > & 
getDCCMap () const
 
std::string getDCCMapFilePath () const
 
DetIdgetDetIdPointer (unsigned int feChannel, unsigned int strip, unsigned int xtal)
 
unsigned int getEBTCCBlockLength ()
 
unsigned int getEETCCBlockLength ()
 
unsigned int getNumChannelsInDcc (unsigned int aDCCId)
 
EcalPseudoStripInputDigigetPSInputDigiPointer (unsigned int tccId, unsigned int towerId, unsigned int psId)
 
EcalPseudoStripInputDigigetPSInputDigiPointer (unsigned int tccId, unsigned int psCounter)
 
EcalScDetIdgetSCDetIdPointer (unsigned int smId, unsigned int feChannel)
 
EcalElectronicsIdgetSCElectronicsPointer (unsigned int smId, unsigned int feChannel)
 
unsigned int getSMId (unsigned int aDCCId) const
 
std::vector< EcalSrFlag * > getSrFlagPointer (unsigned int feChannel)
 
unsigned int getSRPBlockLength ()
 
std::vector< unsigned int > * getTccs (unsigned int smId)
 
EcalTriggerPrimitiveDigigetTPPointer (unsigned int tccId, unsigned int tower)
 
EcalTrigTowerDetIdgetTTDetIdPointer (unsigned int tccId, unsigned int tower)
 
EcalElectronicsIdgetTTEleIdPointer (unsigned int tccId, unsigned int tower)
 
unsigned int getUnfilteredTowerBlockLength ()
 
bool isGhost (const int FED, const int CCU, const int VFE)
 
bool isTCCExternal (unsigned int TCCId)
 
bool makeMapFromVectors (std::vector< int > &, std::vector< int > &)
 
const EcalElectronicsMappingmapping ()
 
unsigned int numbTriggerTSamples ()
 
unsigned int numbXtalTSamples ()
 
void resetPointers ()
 
bool setActiveDCC (unsigned int dccId)
 
bool setDCCMapFilePath (std::string)
 
void setEcalElectronicsMapping (const EcalElectronicsMapping *)
 
 ~EcalElectronicsMapper ()
 

Private Member Functions

unsigned int computeEBTCCBlockLength ()
 
unsigned int computeEETCCBlockLength ()
 
unsigned int computeUnfilteredFEBlockLength ()
 
void fillMaps ()
 
void setupGhostMap ()
 

Private Attributes

unsigned int dccId_
 
unsigned int ebTccBlockLength_
 
unsigned int eeTccBlockLength_
 
std::map< int, std::map< int,
std::map< int, bool > > > 
ghost_
 
const EcalElectronicsMappingmappingBuilder_
 
std::map< unsigned int,
std::vector< unsigned int > * > 
mapSmIdToTccIds_
 
std::map< unsigned int,
unsigned int > 
myDCCMap_
 
unsigned int numbTriggerTSamples_
 
unsigned int numbXtalTSamples_
 
std::string pathToMapFile_
 
EcalPseudoStripInputDigipsInput_ [NUMB_TCC][TCC_EB_NUMBTTS][NUMB_STRIP]
 
EcalScDetIdscDetIds_ [NUMB_SM][NUMB_FE]
 
EcalElectronicsIdscEleIds_ [NUMB_SM][NUMB_FE]
 
unsigned int smId_
 
std::vector< EcalSrFlag * > srFlags_ [NUMB_SM][NUMB_FE]
 
unsigned int srpBlockLength_
 
short tTandPs_ [NUMB_TCC][5 *EcalTrigTowerDetId::kEBTowersPerSM][2]
 
EcalTrigTowerDetIdttDetIds_ [NUMB_TCC][NUMB_FE]
 
EcalElectronicsIdttEleIds_ [NUMB_TCC][NUMB_FE]
 
EcalTriggerPrimitiveDigittTPIds_ [NUMB_TCC][NUMB_FE]
 
unsigned int unfilteredFEBlockLength_
 
DetIdxtalDetIds_ [NUMB_SM][NUMB_FE][NUMB_STRIP][NUMB_XTAL]
 

Static Private Attributes

static const unsigned int numChannelsInDcc_ [NUMB_SM]
 

Friends

std::ostream & operator<< (std::ostream &o, const EcalElectronicsMapper &aEcalElectronicsMapper)
 

Detailed Description

Definition at line 39 of file EcalElectronicsMapper.h.

Member Enumeration Documentation

Enumerator
kModules 
kTriggerTowers 
kTowersInPhi 
kTowersInEta 
kCrystals 
kPns 
kCrystalsInPhi 
kCrystalsInEta 
kCrystalsPerTower 
kCardsPerTower 
kChannelsPerCard 
TTMAPMASK 

Definition at line 155 of file EcalElectronicsMapper.h.

Constructor & Destructor Documentation

EcalElectronicsMapper::EcalElectronicsMapper ( unsigned int  numbOfXtalTSamples,
unsigned int  numbOfTriggerTSamples 
)

Constructor

Definition at line 8 of file EcalElectronicsMapper.cc.

EcalElectronicsMapper::~EcalElectronicsMapper ( )

Destructor

Definition at line 149 of file EcalElectronicsMapper.cc.

Member Function Documentation

unsigned int EcalElectronicsMapper::computeEBTCCBlockLength ( )
private

Definition at line 350 of file EcalElectronicsMapper.cc.

unsigned int EcalElectronicsMapper::computeEETCCBlockLength ( )
private

Definition at line 363 of file EcalElectronicsMapper.cc.

unsigned int EcalElectronicsMapper::computeUnfilteredFEBlockLength ( )
private

Definition at line 343 of file EcalElectronicsMapper.cc.

void EcalElectronicsMapper::deletePointers ( )

Definition at line 153 of file EcalElectronicsMapper.cc.

void EcalElectronicsMapper::fillMaps ( )
private

Definition at line 411 of file EcalElectronicsMapper.cc.

unsigned int EcalElectronicsMapper::getActiveDCC ( )
inline
unsigned int EcalElectronicsMapper::getActiveSM ( )
inline
unsigned int EcalElectronicsMapper::getDCCId ( unsigned int  aSMId) const

Definition at line 377 of file EcalElectronicsMapper.cc.

const std::map<unsigned int ,unsigned int>& EcalElectronicsMapper::getDCCMap ( ) const
inline

Get methods for DCCId/SMId and map

Definition at line 94 of file EcalElectronicsMapper.h.

std::string EcalElectronicsMapper::getDCCMapFilePath ( ) const
inline

Retrieves current path do the map file

Definition at line 75 of file EcalElectronicsMapper.h.

DetId* EcalElectronicsMapper::getDetIdPointer ( unsigned int  feChannel,
unsigned int  strip,
unsigned int  xtal 
)
inline

Definition at line 96 of file EcalElectronicsMapper.h.

unsigned int EcalElectronicsMapper::getEBTCCBlockLength ( )
inline

Definition at line 132 of file EcalElectronicsMapper.h.

Referenced by DCCEBTCCBlock::DCCEBTCCBlock().

unsigned int EcalElectronicsMapper::getEETCCBlockLength ( )
inline

Definition at line 134 of file EcalElectronicsMapper.h.

unsigned int EcalElectronicsMapper::getNumChannelsInDcc ( unsigned int  aDCCId)
inline

Definition at line 142 of file EcalElectronicsMapper.h.

EcalPseudoStripInputDigi* EcalElectronicsMapper::getPSInputDigiPointer ( unsigned int  tccId,
unsigned int  towerId,
unsigned int  psId 
)
inline

Definition at line 108 of file EcalElectronicsMapper.h.

EcalPseudoStripInputDigi* EcalElectronicsMapper::getPSInputDigiPointer ( unsigned int  tccId,
unsigned int  psCounter 
)
inline

Definition at line 110 of file EcalElectronicsMapper.h.

EcalScDetId* EcalElectronicsMapper::getSCDetIdPointer ( unsigned int  smId,
unsigned int  feChannel 
)
inline

Definition at line 104 of file EcalElectronicsMapper.h.

EcalElectronicsId* EcalElectronicsMapper::getSCElectronicsPointer ( unsigned int  smId,
unsigned int  feChannel 
)
inline

Definition at line 106 of file EcalElectronicsMapper.h.

unsigned int EcalElectronicsMapper::getSMId ( unsigned int  aDCCId) const
std::vector<EcalSrFlag*> EcalElectronicsMapper::getSrFlagPointer ( unsigned int  feChannel)
inline
unsigned int EcalElectronicsMapper::getSRPBlockLength ( )
inline

Definition at line 136 of file EcalElectronicsMapper.h.

std::vector<unsigned int>* EcalElectronicsMapper::getTccs ( unsigned int  smId)
inline

Definition at line 120 of file EcalElectronicsMapper.h.

EcalTriggerPrimitiveDigi* EcalElectronicsMapper::getTPPointer ( unsigned int  tccId,
unsigned int  tower 
)
inline
EcalTrigTowerDetId* EcalElectronicsMapper::getTTDetIdPointer ( unsigned int  tccId,
unsigned int  tower 
)
inline

Definition at line 98 of file EcalElectronicsMapper.h.

EcalElectronicsId* EcalElectronicsMapper::getTTEleIdPointer ( unsigned int  tccId,
unsigned int  tower 
)
inline

Definition at line 100 of file EcalElectronicsMapper.h.

unsigned int EcalElectronicsMapper::getUnfilteredTowerBlockLength ( )
inline

Definition at line 130 of file EcalElectronicsMapper.h.

bool EcalElectronicsMapper::isGhost ( const int  FED,
const int  CCU,
const int  VFE 
)

Definition at line 730 of file EcalElectronicsMapper.cc.

bool EcalElectronicsMapper::isTCCExternal ( unsigned int  TCCId)

Definition at line 369 of file EcalElectronicsMapper.cc.

bool EcalElectronicsMapper::makeMapFromVectors ( std::vector< int > &  orderedFedUnpackList,
std::vector< int > &  orderedDCCIdList 
)

Read map file (returns false if an error ocurred) deprecated by HLT environment HLT friendly: load default mapping or, for non standatd mapping, use 2 vectors from cfg

Definition at line 279 of file EcalElectronicsMapper.cc.

const EcalElectronicsMapping* EcalElectronicsMapper::mapping ( )
inline
unsigned int EcalElectronicsMapper::numbTriggerTSamples ( )
inline

Definition at line 128 of file EcalElectronicsMapper.h.

unsigned int EcalElectronicsMapper::numbXtalTSamples ( )
inline

Definition at line 126 of file EcalElectronicsMapper.h.

void EcalElectronicsMapper::resetPointers ( )

Definition at line 18 of file EcalElectronicsMapper.cc.

bool EcalElectronicsMapper::setActiveDCC ( unsigned int  dccId)

Set DCC id that is going to be unpacked for the event

Definition at line 211 of file EcalElectronicsMapper.cc.

bool EcalElectronicsMapper::setDCCMapFilePath ( std::string  aPath_)

Receives a string with a path and checks if file is accessible

Definition at line 227 of file EcalElectronicsMapper.cc.

void EcalElectronicsMapper::setEcalElectronicsMapping ( const EcalElectronicsMapping m)

Definition at line 206 of file EcalElectronicsMapper.cc.

void EcalElectronicsMapper::setupGhostMap ( )
private

Definition at line 672 of file EcalElectronicsMapper.cc.

Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  o,
const EcalElectronicsMapper aEcalElectronicsMapper 
)
friend

Print current map

Definition at line 317 of file EcalElectronicsMapper.cc.

Member Data Documentation

unsigned int EcalElectronicsMapper::dccId_
private

Definition at line 188 of file EcalElectronicsMapper.h.

unsigned int EcalElectronicsMapper::ebTccBlockLength_
private

Definition at line 196 of file EcalElectronicsMapper.h.

unsigned int EcalElectronicsMapper::eeTccBlockLength_
private

Definition at line 196 of file EcalElectronicsMapper.h.

std::map<int, std::map<int, std::map<int, bool> > > EcalElectronicsMapper::ghost_
private

Definition at line 224 of file EcalElectronicsMapper.h.

const EcalElectronicsMapping* EcalElectronicsMapper::mappingBuilder_
private

Definition at line 213 of file EcalElectronicsMapper.h.

std::map< unsigned int, std::vector<unsigned int> * > EcalElectronicsMapper::mapSmIdToTccIds_
private

Definition at line 186 of file EcalElectronicsMapper.h.

std::map<unsigned int,unsigned int> EcalElectronicsMapper::myDCCMap_
private

Definition at line 184 of file EcalElectronicsMapper.h.

unsigned int EcalElectronicsMapper::numbTriggerTSamples_
private

Definition at line 182 of file EcalElectronicsMapper.h.

unsigned int EcalElectronicsMapper::numbXtalTSamples_
private

Definition at line 180 of file EcalElectronicsMapper.h.

const unsigned int EcalElectronicsMapper::numChannelsInDcc_
staticprivate
Initial value:
= {34,32,33,33,32,34,33,41,33,
68,68,68,68,68,68,68,68,68,68,
68,68,68,68,68,68,68,68,
68,68,68,68,68,68,68,68,68,68,
68,68,68,68,68,68,68,68,
34,32,33,33,32,34,33,41,33}

Definition at line 198 of file EcalElectronicsMapper.h.

std::string EcalElectronicsMapper::pathToMapFile_
private

Definition at line 178 of file EcalElectronicsMapper.h.

EcalPseudoStripInputDigi* EcalElectronicsMapper::psInput_[NUMB_TCC][TCC_EB_NUMBTTS][NUMB_STRIP]
private

Definition at line 209 of file EcalElectronicsMapper.h.

EcalScDetId* EcalElectronicsMapper::scDetIds_[NUMB_SM][NUMB_FE]
private

Definition at line 203 of file EcalElectronicsMapper.h.

EcalElectronicsId* EcalElectronicsMapper::scEleIds_[NUMB_SM][NUMB_FE]
private

Definition at line 204 of file EcalElectronicsMapper.h.

unsigned int EcalElectronicsMapper::smId_
private

Definition at line 190 of file EcalElectronicsMapper.h.

std::vector<EcalSrFlag*> EcalElectronicsMapper::srFlags_[NUMB_SM][NUMB_FE]
private

Definition at line 208 of file EcalElectronicsMapper.h.

unsigned int EcalElectronicsMapper::srpBlockLength_
private

Definition at line 194 of file EcalElectronicsMapper.h.

short EcalElectronicsMapper::tTandPs_[NUMB_TCC][5 *EcalTrigTowerDetId::kEBTowersPerSM][2]
private

Definition at line 211 of file EcalElectronicsMapper.h.

EcalTrigTowerDetId* EcalElectronicsMapper::ttDetIds_[NUMB_TCC][NUMB_FE]
private

Definition at line 205 of file EcalElectronicsMapper.h.

EcalElectronicsId* EcalElectronicsMapper::ttEleIds_[NUMB_TCC][NUMB_FE]
private

Definition at line 206 of file EcalElectronicsMapper.h.

EcalTriggerPrimitiveDigi* EcalElectronicsMapper::ttTPIds_[NUMB_TCC][NUMB_FE]
private

Definition at line 207 of file EcalElectronicsMapper.h.

unsigned int EcalElectronicsMapper::unfilteredFEBlockLength_
private

Definition at line 192 of file EcalElectronicsMapper.h.

DetId* EcalElectronicsMapper::xtalDetIds_[NUMB_SM][NUMB_FE][NUMB_STRIP][NUMB_XTAL]
private

Definition at line 202 of file EcalElectronicsMapper.h.