#include <HcalTopology.h>
Public Member Functions | |
int | decIEta (const HcalDetId &id, HcalDetId neighbors[2]) const |
bool | decIPhi (const HcalDetId &id, HcalDetId &neighbor) const |
bool | decrementDepth (HcalDetId &id) const |
virtual DetId | denseId2detId (unsigned int) const |
return a linear packed id More... | |
void | depthBinInformation (HcalSubdetector subdet, int etaRing, int &nDepthBins, int &startingBin) const |
finds the number of depth bins and which is the number to start with More... | |
virtual unsigned int | detId2denseId (const DetId &id) const |
return a linear packed id More... | |
unsigned int | detId2denseIdCALIB (const DetId &id) const |
return a linear packed id from CALIB More... | |
unsigned int | detId2denseIdHB (const DetId &id) const |
return a linear packed id from HB More... | |
unsigned int | detId2denseIdHE (const DetId &id) const |
return a linear packed id from HE More... | |
unsigned int | detId2denseIdHF (const DetId &id) const |
return a linear packed id from HF More... | |
unsigned int | detId2denseIdHO (const DetId &id) const |
return a linear packed id from HO More... | |
unsigned int | detId2denseIdHT (const DetId &id) const |
return a linear packed id from HT More... | |
int | doublePhiBins () const |
virtual std::vector< DetId > | down (const DetId &id) const |
virtual std::vector< DetId > | east (const DetId &id) const |
double | etaMax (HcalSubdetector subdet) const |
std::pair< double, double > | etaRange (HcalSubdetector subdet, int ieta) const |
int | etaRing (HcalSubdetector subdet, double eta) const |
eta and phi index from eta, phi values More... | |
void | exclude (const HcalDetId &id) |
int | exclude (HcalSubdetector subdet, int ieta1, int ieta2, int iphi1, int iphi2, int depth1=1, int depth2=4) |
void | excludeSubdetector (HcalSubdetector subdet) |
int | firstHBRing () const |
int | firstHEDoublePhiRing () const |
int | firstHEQuadPhiRing () const |
int | firstHERing () const |
int | firstHETripleDepthRing () const |
int | firstHFQuadPhiRing () const |
int | firstHFRing () const |
int | firstHORing () const |
unsigned int | getCALIBSize () const |
void | getDepthSegmentation (unsigned ring, std::vector< int > &readoutDepths) const |
unsigned int | getHBSize () const |
unsigned int | getHESize () const |
unsigned int | getHFSize () const |
unsigned int | getHOSize () const |
unsigned int | getHTSize () const |
unsigned int | getNumberOfShapes () const |
HcalTopology (const HcalDDDRecConstants *hcons) | |
HcalTopology (HcalTopologyMode::Mode mode, int maxDepthHB, int maxDepthHE, HcalTopologyMode::TriggerMode tmode=HcalTopologyMode::tm_LHC_RCT) | |
int | incIEta (const HcalDetId &id, HcalDetId neighbors[2]) const |
bool | incIPhi (const HcalDetId &id, HcalDetId &neighbor) const |
bool | incrementDepth (HcalDetId &id) const |
int | lastHBRing () const |
int | lastHERing () const |
int | lastHFRing () const |
int | lastHORing () const |
int | maxDepth (HcalSubdetector subdet) const |
int | maxDepthHB () const |
int | maxDepthHE () const |
HcalTopologyMode::Mode | mode () const |
virtual unsigned int | ncells () const |
return a count of valid cells (for dense indexing use) More... | |
virtual std::vector< DetId > | north (const DetId &id) const |
int | nPhiBins (int etaRing) const |
how many phi segments in this ring More... | |
int | nPhiBins (HcalSubdetector subdet, int etaRing) const |
int | phiBin (HcalSubdetector subdet, int etaRing, double phi) const |
std::pair< int, int > | segmentBoundaries (unsigned ring, unsigned depth) const |
void | setDepthSegmentation (unsigned ring, const std::vector< int > &readoutDepths) |
int | singlePhiBins () const |
virtual std::vector< DetId > | south (const DetId &id) const |
virtual int | topoVersion () const |
return a version which identifies the given topology More... | |
HcalTopologyMode::TriggerMode | triggerMode () const |
virtual std::vector< DetId > | up (const DetId &id) const |
virtual bool | valid (const DetId &id) const |
bool | validDetId (HcalSubdetector subdet, int ieta, int iphi, int depth) const |
bool | validHcal (const HcalDetId &id) const |
bool | validHT (const HcalTrigTowerDetId &id) const |
virtual std::vector< DetId > | west (const DetId &id) const |
Public Member Functions inherited from CaloSubdetectorTopology | |
CaloSubdetectorTopology () | |
standard constructor More... | |
virtual bool | denseIdConsistent (int topoVer) const |
return whether this topology is consistent with the numbering in the given topology More... | |
virtual std::vector< DetId > | getAllNeighbours (const DetId &id) const |
virtual std::vector< DetId > | getNeighbours (const DetId &id, const CaloDirection &dir) const |
virtual std::vector< DetId > | getWindow (const DetId &id, const int &northSouthSize, const int &eastWestSize) const |
virtual DetId | goDown (const DetId &id) const |
virtual DetId | goEast (const DetId &id) const |
virtual DetId | goNorth (const DetId &id) const |
virtual DetId | goSouth (const DetId &id) const |
virtual DetId | goUp (const DetId &id) const |
virtual DetId | goWest (const DetId &id) const |
virtual | ~CaloSubdetectorTopology () |
virtual destructor More... | |
Static Public Member Functions | |
static std::string | producerTag () |
Private Types | |
enum | { kHBhalf = 1296, kHEhalf = 1296, kHOhalf = 1080, kHFhalf = 864, kHThalf = 2088, kZDChalf = 11, kCASTORhalf = 224, kCALIBhalf = 693, kHcalhalf = kHBhalf + kHEhalf + kHOhalf + kHFhalf } |
enum | { kSizeForDenseIndexingPreLS1 = 2*kHcalhalf } |
enum | { kHBSizePreLS1 = 2*kHBhalf } |
enum | { kHESizePreLS1 = 2*kHEhalf } |
enum | { kHOSizePreLS1 = 2*kHOhalf } |
enum | { kHFSizePreLS1 = 2*kHFhalf } |
enum | { kHTSizePreLS1 = 2*kHThalf } |
enum | { kHTSizePhase1 = (kHTSizePreLS1+(2*12*36)) } |
enum | { kCALIBSizePreLS1 = 2*kCALIBhalf } |
typedef std::map< unsigned, std::vector< int > > | SegmentationMap |
Private Member Functions | |
int | decAIEta (const HcalDetId &id, HcalDetId neighbors[2]) const |
unsigned int | detId2denseIdPreLS1 (const DetId &id) const |
int | incAIEta (const HcalDetId &id, HcalDetId neighbors[2]) const |
bool | isExcluded (const HcalDetId &id) const |
bool | validDetIdPreLS1 (const HcalDetId &id) const |
bool | validRaw (const HcalDetId &id) const |
Additional Inherited Members | |
Protected Types inherited from CaloSubdetectorTopology | |
typedef std::pair< int, int > | Coordinate |
Protected Member Functions inherited from CaloSubdetectorTopology | |
Coordinate | getNeighbourIndex (const Coordinate &coord, const CaloDirection &dir) const |
The HcalTopology class contains a set of constants which represent the topology (tower relationship) of the CMS HCAL as built. These constants can be used to determine neighbor relationships and existence of cells.
For use with limited setups (testbeam, cosmic stands, etc), the topology can be limited by creating a rejection list – a list of cells which would normally exist in the full CMS HCAL, but are not present for the specified topology.
Definition at line 25 of file HcalTopology.h.
|
private |
Definition at line 198 of file HcalTopology.h.
|
private |
Enumerator | |
---|---|
kHBhalf | |
kHEhalf | |
kHOhalf | |
kHFhalf | |
kHThalf | |
kZDChalf | |
kCASTORhalf | |
kCALIBhalf | |
kHcalhalf |
Definition at line 201 of file HcalTopology.h.
|
private |
Enumerator | |
---|---|
kSizeForDenseIndexingPreLS1 |
Definition at line 210 of file HcalTopology.h.
|
private |
Enumerator | |
---|---|
kHBSizePreLS1 |
Definition at line 211 of file HcalTopology.h.
|
private |
Enumerator | |
---|---|
kHESizePreLS1 |
Definition at line 212 of file HcalTopology.h.
|
private |
Enumerator | |
---|---|
kHOSizePreLS1 |
Definition at line 213 of file HcalTopology.h.
|
private |
Enumerator | |
---|---|
kHFSizePreLS1 |
Definition at line 214 of file HcalTopology.h.
|
private |
Enumerator | |
---|---|
kHTSizePreLS1 |
Definition at line 215 of file HcalTopology.h.
|
private |
Enumerator | |
---|---|
kHTSizePhase1 |
Definition at line 216 of file HcalTopology.h.
|
private |
Enumerator | |
---|---|
kCALIBSizePreLS1 |
Definition at line 217 of file HcalTopology.h.
HcalTopology::HcalTopology | ( | const HcalDDDRecConstants * | hcons | ) |
Definition at line 17 of file HcalTopology.cc.
References gather_cfg::cout, dPhiTable, dPhiTableHF, eta, etaBinsHB_, etaBinsHE_, etaHE2HF_, etaHF2HE_, etaMax(), etaTable, etaTableHF, firstHBRing_, firstHEDoublePhiRing_, firstHEQuadPhiRing_, firstHERing_, firstHETripleDepthRing_, firstHFQuadPhiRing_, firstHFRing_, firstHORing_, HcalDDDRecConstants::getDepth(), HcalDDDRecConstants::getEtaBins(), HcalDDDRecConstants::getEtaRange(), HcalDDDRecConstants::getEtaTable(), HcalDDDRecConstants::getEtaTableHF(), HcalDDDRecConstants::getMaxDepth(), HcalDDDRecConstants::getNEta(), HcalDDDRecConstants::getPhiOffs(), HcalDDDRecConstants::getPhiTable(), HcalDDDRecConstants::getPhiTableHF(), HcalDDDRecConstants::getTopoMode(), HcalDDDRecConstants::getTriggerMode(), HBSize_, hcons_, HESize_, HFSize_, HOSize_, HTSize_, i, IPHI_MAX, relval_2017::k, kHBSizePreLS1, kHESizePreLS1, kHFSizePreLS1, kHOSizePreLS1, kHTSizePhase1, kHTSizePreLS1, lastHBRing_, lastHERing_, lastHFRing_, lastHORing_, HcalTopologyMode::LHC, M_PI, maxDepthHB_, maxDepthHE_, maxDepthHF_, maxEta_, mode_, HLT_25ns10e33_v2_cff::nEta, nEtaHB_, nEtaHE_, numberOfShapes_, phioff, relativeConstraints::ring, setDepthSegmentation(), HcalTopologyMode::SLHC, HcalTopologyMode::tm_LHC_RCT, topoVersion_, triggerMode_, csvLumiCalc::unit, unitPhi, unitPhiHF, and units().
Referenced by HcalTopologyIdealEP::produce().
HcalTopology::HcalTopology | ( | HcalTopologyMode::Mode | mode, |
int | maxDepthHB, | ||
int | maxDepthHE, | ||
HcalTopologyMode::TriggerMode | tmode = HcalTopologyMode::tm_LHC_RCT |
||
) |
Definition at line 134 of file HcalTopology.cc.
References firstHBRing_, firstHERing_, HBSize_, HESize_, HFSize_, HOSize_, HTSize_, IPHI_MAX, kHBSizePreLS1, kHESizePreLS1, kHFSizePreLS1, kHOSizePreLS1, kHTSizePhase1, kHTSizePreLS1, lastHBRing_, lastHERing_, HcalTopologyMode::LHC, maxDepthHF_, mode_, nEtaHB_, nEtaHE_, HcalTopologyMode::SLHC, HcalTopologyMode::tm_LHC_RCT, HcalTopologyMode::tm_LHC_RCT_and_1x1, topoVersion_, and triggerMode_.
Get the neighbors of the given cell with lower absolute ieta
Decreasing in |ieta|, there are be two neighbors of 40 and 21
Definition at line 588 of file HcalTopology.cc.
References HLT_25ns10e33_v2_cff::depth, etaHF2HE_, firstHEDoublePhiRing(), firstHEQuadPhiRing(), firstHERing(), firstHFQuadPhiRing(), firstHFRing(), HcalBarrel, HcalEndcap, IPHI_MAX, gen::n, valid(), and ecaldqm::zside().
Referenced by decIEta(), and incIEta().
Get the neighbors of the given cell with lower (signed) ieta
Definition at line 560 of file HcalTopology.cc.
References decAIEta(), incAIEta(), and ecaldqm::zside().
Referenced by east().
Get the neighbor (if present) of the given cell with lower iphi
Definition at line 518 of file HcalTopology.cc.
References HLT_25ns10e33_v2_cff::depth, firstHEDoublePhiRing(), firstHEQuadPhiRing(), firstHFQuadPhiRing(), HcalBarrel, HcalEndcap, HcalForward, HcalOuter, IPHI_MAX, convertSQLiteXML::ok, valid(), and validRaw().
Referenced by south().
bool HcalTopology::decrementDepth | ( | HcalDetId & | id | ) | const |
Get the detector in front of this one
Definition at line 724 of file HcalTopology.cc.
References HcalDetId::depth(), HLT_25ns10e33_v2_cff::depth, depthBinInformation(), etaBinsHB_, etaBinsHE_, etaHF2HE_, etaRing(), firstHERing(), firstHFRing(), HcalBarrel, HcalEndcap, HcalForward, HcalOuter, i, HcalDetId::ieta(), HcalDetId::ietaAbs(), HcalDetId::iphi(), lastHERing(), mode_, nEtaHB_, HcalTopologyMode::SLHC, HcalDetId::subdet(), and validRaw().
Referenced by down().
|
virtual |
return a linear packed id
Reimplemented from CaloSubdetectorTopology.
Definition at line 1125 of file HcalTopology.cc.
References gather_cfg::cout, TauDecayModes::dec, reco::dp, firstHBRing(), firstHERing(), HBSize_, HcalBarrel, HcalEndcap, HcalForward, HcalOuter, HESize_, HOSize_, recoMuon::in, IPHI_MAX, kHBhalf, kHEhalf, kHFhalf, kHOhalf, kSizeForDenseIndexingPreLS1, lastHBRing(), lastHERing(), maxDepthHB_, maxDepthHE_, maxDepthHF_, ncells(), nEtaHB_, nEtaHE_, DetId::rawId(), sd, and topoVersion_.
Referenced by HcalGeometry::localCorners().
void HcalTopology::depthBinInformation | ( | HcalSubdetector | subdet, |
int | etaRing, | ||
int & | nDepthBins, | ||
int & | startingBin | ||
) | const |
finds the number of depth bins and which is the number to start with
Definition at line 629 of file HcalTopology.cc.
References ecal_dqm_sourceclient-live_cfg::cerr, firstHERing(), firstHETripleDepthRing(), HcalDDDRecConstants::getDepthEta16(), HcalDDDRecConstants::getMaxDepth(), HcalTopologyMode::H2HE, HcalBarrel, HcalEndcap, HcalForward, HcalOuter, hcons_, lastHBRing(), lastHERing(), maxDepthHF_, mode_, and HcalTopologyMode::SLHC.
Referenced by CaloTowerConstituentsMap::constituentsOf(), decrementDepth(), HcalTrigTowerGeometry::detIds(), incrementDepth(), and CaloTowersCreationAlgo::setGeometry().
|
virtual |
return a linear packed id
Reimplemented from CaloSubdetectorTopology.
Definition at line 1089 of file HcalTopology.cc.
References gather_cfg::cout, TauDecayModes::dec, HcalDetId::depth(), detId2denseIdPreLS1(), firstHBRing(), firstHERing(), HBSize_, HcalBarrel, HcalEndcap, HcalForward, HcalOuter, HESize_, HOSize_, HcalDetId::ieta(), HcalDetId::iphi(), IPHI_MAX, lastHBRing(), lastHERing(), maxDepthHB_, maxDepthHE_, maxDepthHF_, nEtaHB_, nEtaHE_, HcalDetId::subdet(), and topoVersion_.
Referenced by HcalGeometry::getGeometry(), HcalGeometry::indexFor(), HcalDDDGeometry::newCell(), and HcalGeometry::newCell().
unsigned int HcalTopology::detId2denseIdCALIB | ( | const DetId & | id | ) | const |
return a linear packed id from CALIB
Definition at line 1031 of file HcalTopology.cc.
References funct::abs(), HcalCalibDetId::calibFlavor(), HcalCalibDetId::CalibrationBox, HcalCalibDetId::cboxChannel(), HcalBarrel, HcalEndcap, HcalForward, HcalOuter, HcalCalibDetId::hcalSubdet(), HcalCalibDetId::HOCrosstalk, HcalCalibDetId::ieta(), cmsHarvester::index, HcalCalibDetId::iphi(), HcalCalibDetId::zside(), and ecaldqm::zside().
Referenced by HcalLogicalMapGenerator::buildCALIBMap(), HcalLogicalMapGenerator::buildHOXMap(), HcalLogicalMap::checkHashIds(), HcalLogicalMap::getHcalFrontEndId(), and HcalCondObjectContainerBase::indexFor().
unsigned int HcalTopology::detId2denseIdHB | ( | const DetId & | id | ) | const |
return a linear packed id from HB
Definition at line 936 of file HcalTopology.cc.
References HcalDetId::depth(), reco::dp, firstHBRing(), HcalDetId::ieta(), HcalDetId::ietaAbs(), HcalDetId::iphi(), IPHI_MAX, kHBhalf, lastHBRing(), maxDepthHB_, nEtaHB_, topoVersion_, and HcalDetId::zside().
Referenced by HcalLogicalMapGenerator::buildHBEFTMap(), HcalLogicalMap::checkHashIds(), HcalLogicalMap::getHcalFrontEndId(), and HcalCondObjectContainerBase::indexFor().
unsigned int HcalTopology::detId2denseIdHE | ( | const DetId & | id | ) | const |
return a linear packed id from HE
Definition at line 953 of file HcalTopology.cc.
References HcalDetId::depth(), reco::dp, firstHERing(), HcalDetId::ieta(), HcalDetId::ietaAbs(), HcalDetId::iphi(), IPHI_MAX, kHEhalf, lastHERing(), maxDepthHE_, nEtaHE_, topoVersion_, and HcalDetId::zside().
Referenced by HcalLogicalMapGenerator::buildHBEFTMap(), HcalLogicalMap::checkHashIds(), HcalLogicalMap::getHcalFrontEndId(), and HcalCondObjectContainerBase::indexFor().
unsigned int HcalTopology::detId2denseIdHF | ( | const DetId & | id | ) | const |
return a linear packed id from HF
Definition at line 991 of file HcalTopology.cc.
References HcalDetId::depth(), reco::dp, HcalDetId::ieta(), HcalDetId::ietaAbs(), HcalDetId::iphi(), IPHI_MAX, kHFhalf, maxDepthHF_, topoVersion_, and HcalDetId::zside().
Referenced by HcalLogicalMapGenerator::buildHBEFTMap(), HcalLogicalMap::checkHashIds(), HcalLogicalMap::getHcalFrontEndId(), and HcalCondObjectContainerBase::indexFor().
unsigned int HcalTopology::detId2denseIdHO | ( | const DetId & | id | ) | const |
return a linear packed id from HO
Definition at line 975 of file HcalTopology.cc.
References HcalDetId::ieta(), HcalDetId::ietaAbs(), HcalDetId::iphi(), IPHI_MAX, kHOhalf, topoVersion_, and HcalDetId::zside().
Referenced by HcalLogicalMapGenerator::buildHOXMap(), HcalLogicalMap::checkHashIds(), HcalLogicalMap::getHcalFrontEndId(), and HcalCondObjectContainerBase::indexFor().
unsigned int HcalTopology::detId2denseIdHT | ( | const DetId & | id | ) | const |
return a linear packed id from HT
Definition at line 1010 of file HcalTopology.cc.
References HcalTrigTowerDetId::ietaAbs(), cmsHarvester::index, HcalTrigTowerDetId::iphi(), kHThalf, kHTSizePhase1, kHTSizePreLS1, HcalTrigTowerDetId::version(), HcalTrigTowerDetId::zside(), and ecaldqm::zside().
Referenced by HcalLogicalMap::checkHashIds(), CaloTPGTranscoderULUT::getOutputLUTId(), and HcalCondObjectContainerBase::indexFor().
|
private |
Definition at line 909 of file HcalTopology.cc.
References HcalDetId::depth(), reco::dp, HcalBarrel, HcalEndcap, HcalForward, HcalOuter, HcalDetId::ietaAbs(), HcalDetId::iphi(), kHBhalf, kHEhalf, kHFhalf, kHOhalf, sd, HcalDetId::subdet(), and HcalDetId::zside().
Referenced by detId2denseId().
|
inline |
Get the neighbors of the given cell in down direction (inward)
Implements CaloSubdetectorTopology.
Definition at line 304 of file HcalTopology.cc.
References HcalDetId::changeForm(), decrementDepth(), neighbor(), and HcalDetId::oldFormat().
Get the neighbors of the given cell in east direction
Implements CaloSubdetectorTopology.
Definition at line 254 of file HcalTopology.cc.
Referenced by spr::newHCALIdEW().
double HcalTopology::etaMax | ( | HcalSubdetector | subdet | ) | const |
Definition at line 877 of file HcalTopology.cc.
References eta, etaTable, etaTableHF, HcalBarrel, HcalEndcap, HcalForward, HcalOuter, lastHBRing_, lastHERing_, lastHORing_, and nEtaHE_.
Referenced by HcalGeometry::getCells(), HcalGeometry::getClosestCell(), and HcalTopology().
std::pair< double, double > HcalTopology::etaRange | ( | HcalSubdetector | subdet, |
int | ieta | ||
) | const |
Definition at line 892 of file HcalTopology.cc.
References etaTable, etaTableHF, firstHFRing_, HcalForward, cuy::ii, lastHERing_, HcalTopologyMode::LHC, and mode_.
Referenced by HcalHF_PETalgorithm::HFSetFlagFromPET(), HcalHFStatusBitFromRecHits::hfSetFlagFromRecHits(), HcalHF_S9S1algorithm::HFSetFlagFromS9S1(), HcalBeamMonitor::processEvent(), HcalRecHitMonitor::processEvent_rechit(), HcalHotCellMonitor::processEvent_rechitenergy(), HcalHotCellMonitor::processHit_rechitNeighbors(), HcalTrigTowerGeometry::towerEtaBounds(), and HcaluLUTTPGCoder::update().
int HcalTopology::etaRing | ( | HcalSubdetector | subdet, |
double | eta | ||
) | const |
eta and phi index from eta, phi values
Definition at line 794 of file HcalTopology.cc.
References etaTable, etaTableHF, firstHBRing_, firstHFRing_, HcalForward, relval_2017::k, and lastHERing_.
Referenced by decrementDepth(), HcalGeometry::etaRing(), and incrementDepth().
void HcalTopology::exclude | ( | const HcalDetId & | id | ) |
Add a cell to exclusion list
Definition at line 237 of file HcalTopology.cc.
References exclusionList_, and i.
Referenced by exclude(), and HcalTopologyRestrictionParser::parse().
int HcalTopology::exclude | ( | HcalSubdetector | subdet, |
int | ieta1, | ||
int | ieta2, | ||
int | iphi1, | ||
int | iphi2, | ||
int | depth1 = 1 , |
||
int | depth2 = 4 |
||
) |
Exclude an eta/phi/depth range for a given subdetector
Definition at line 314 of file HcalTopology.cc.
References HLT_25ns10e33_v2_cff::depth, exclude(), excludeHB_, excludeHE_, excludeHF_, excludeHO_, HcalBarrel, HcalEndcap, HcalForward, HcalOuter, bookConverter::max, min(), gen::n, and validRaw().
void HcalTopology::excludeSubdetector | ( | HcalSubdetector | subdet | ) |
Exclude an entire subdetector
Definition at line 244 of file HcalTopology.cc.
References excludeHB_, excludeHE_, excludeHF_, excludeHO_, HcalBarrel, HcalEndcap, HcalForward, and HcalOuter.
Referenced by HcalTopologyRestrictionParser::parse().
|
inline |
Definition at line 83 of file HcalTopology.h.
References firstHBRing_.
Referenced by CaloTowerTopology::CaloTowerTopology(), CaloTowerTopology::convertCTtoHcal(), CaloTowerTopology::convertHcaltoCT(), denseId2detId(), detId2denseId(), detId2denseIdHB(), and HcaluLUTTPGCoder::HcaluLUTTPGCoder().
|
inline |
Definition at line 92 of file HcalTopology.h.
References firstHEDoublePhiRing_.
Referenced by CaloTowerTopology::CaloTowerTopology(), decAIEta(), decIPhi(), HcalTrigTowerGeometry::detIds(), CaloTowersCreationAlgo::getThresholdAndWeight(), incAIEta(), incIPhi(), HcalHardcodeGeometryLoader::makeHECells(), nPhiBins(), HcalTrigTowerGeometry::towerIds(), and validRaw().
|
inline |
Definition at line 93 of file HcalTopology.h.
References firstHEQuadPhiRing_.
Referenced by CaloTowerTopology::CaloTowerTopology(), decAIEta(), decIPhi(), incAIEta(), incIPhi(), nPhiBins(), and validRaw().
|
inline |
Definition at line 85 of file HcalTopology.h.
References firstHERing_.
Referenced by CaloTowerTopology::CaloTowerTopology(), CaloTowerTopology::convertCTtoHcal(), CaloTowerTopology::convertHcaltoCT(), decAIEta(), decrementDepth(), denseId2detId(), depthBinInformation(), detId2denseId(), detId2denseIdHE(), HcalTrigTowerGeometry::detIds(), HcaluLUTTPGCoder::HcaluLUTTPGCoder(), validDetIdPreLS1(), and validRaw().
|
inline |
Definition at line 95 of file HcalTopology.h.
References firstHETripleDepthRing_.
Referenced by depthBinInformation(), HcalHardcodeGeometryLoader::makeHECells(), and validRaw().
|
inline |
Definition at line 94 of file HcalTopology.h.
References firstHFQuadPhiRing_.
Referenced by CaloTowerTopology::CaloTowerTopology(), decAIEta(), decIPhi(), incAIEta(), incIPhi(), nPhiBins(), validDetIdPreLS1(), and validRaw().
|
inline |
Definition at line 87 of file HcalTopology.h.
References firstHFRing_.
Referenced by CaloTowerTopology::CaloTowerTopology(), CaloTowerTopology::convertCTtoHcal(), CaloTowerTopology::convertHcaltoCT(), decAIEta(), decrementDepth(), HcalTrigTowerGeometry::detIds(), HcalTrigTowerGeometry::firstHFRingInTower(), HcaluLUTTPGCoder::HcaluLUTTPGCoder(), CaloTowerHardcodeGeometryLoader::makeCell(), validDetIdPreLS1(), and validRaw().
|
inline |
Definition at line 89 of file HcalTopology.h.
References firstHORing_.
Referenced by CaloTowerTopology::CaloTowerTopology(), and CaloTowerTopology::convertHcaltoCT().
|
inline |
Definition at line 126 of file HcalTopology.h.
References CALIBSize_.
Referenced by HcalCondObjectContainerBase::sizeFor().
void HcalTopology::getDepthSegmentation | ( | unsigned | ring, |
std::vector< int > & | readoutDepths | ||
) | const |
for each of the ~17 depth segments, specify which readout bin they belong to if the ring is not found, the first one with a lower ring will be returned.
Definition at line 853 of file HcalTopology.cc.
References depthSegmentation_, Exception, and relativeConstraints::ring.
Referenced by HcalHardcodeGeometryLoader::load(), HcalHardcodeCalibrations::produceRespCorrs(), segmentBoundaries(), and CaloTowersCreationAlgo::setGeometry().
|
inline |
Definition at line 121 of file HcalTopology.h.
References HBSize_.
Referenced by HcalGeometry::init(), and HcalCondObjectContainerBase::sizeFor().
|
inline |
Definition at line 122 of file HcalTopology.h.
References HESize_.
Referenced by HcalGeometry::init(), and HcalCondObjectContainerBase::sizeFor().
|
inline |
Definition at line 124 of file HcalTopology.h.
References HFSize_.
Referenced by HcalGeometry::init(), and HcalCondObjectContainerBase::sizeFor().
|
inline |
Definition at line 123 of file HcalTopology.h.
References HOSize_.
Referenced by HcalGeometry::init(), and HcalCondObjectContainerBase::sizeFor().
|
inline |
Definition at line 125 of file HcalTopology.h.
References HTSize_.
Referenced by HcalCondObjectContainerBase::sizeFor().
|
inline |
Definition at line 147 of file HcalTopology.h.
References numberOfShapes_.
Referenced by HcalGeometry::numberOfShapes().
Get the neighbors of the given cell with higher absolute ieta
Increasing in |ieta|, there is always at most one neighbor
Definition at line 566 of file HcalTopology.cc.
References HLT_25ns10e33_v2_cff::depth, etaHE2HF_, firstHEDoublePhiRing(), firstHEQuadPhiRing(), firstHFQuadPhiRing(), HcalEndcap, HcalForward, lastHBRing(), lastHERing(), gen::n, valid(), and ecaldqm::zside().
Referenced by decIEta(), and incIEta().
Get the neighbors of the given cell with higher (signed) ieta
Definition at line 555 of file HcalTopology.cc.
References decAIEta(), incAIEta(), and ecaldqm::zside().
Referenced by west().
Get the neighbor (if present) of the given cell with higher iphi
Definition at line 480 of file HcalTopology.cc.
References HLT_25ns10e33_v2_cff::depth, firstHEDoublePhiRing(), firstHEQuadPhiRing(), firstHFQuadPhiRing(), HcalBarrel, HcalEndcap, HcalForward, HcalOuter, IPHI_MAX, convertSQLiteXML::ok, valid(), and validRaw().
Referenced by north().
bool HcalTopology::incrementDepth | ( | HcalDetId & | id | ) | const |
Get the detector behind this one
Definition at line 684 of file HcalTopology.cc.
References HcalDetId::depth(), HLT_25ns10e33_v2_cff::depth, depthBinInformation(), etaRing(), HcalBarrel, HcalEndcap, HcalForward, HcalOuter, HcalDetId::ieta(), HcalDetId::ietaAbs(), HcalDetId::iphi(), lastHBRing(), lastHERing(), lastHORing(), mode_, HcalTopologyMode::SLHC, HcalDetId::subdet(), and validRaw().
Referenced by HcalGeometry::getClosestCell(), and up().
|
private |
Definition at line 219 of file HcalTopology.cc.
References excludeHB_, excludeHE_, excludeHF_, excludeHO_, exclusionList_, HcalBarrel, HcalEndcap, HcalForward, HcalOuter, and i.
Referenced by validHcal().
|
inline |
Definition at line 84 of file HcalTopology.h.
References lastHBRing_.
Referenced by CaloTowerTopology::CaloTowerTopology(), CaloTowerTopology::convertHcaltoCT(), denseId2detId(), depthBinInformation(), detId2denseId(), detId2denseIdHB(), HcalTrigTowerGeometry::detIds(), reco::hcalSubdetector(), HcaluLUTTPGCoder::HcaluLUTTPGCoder(), incAIEta(), incrementDepth(), and validRaw().
|
inline |
Definition at line 86 of file HcalTopology.h.
References lastHERing_.
Referenced by CaloTowersCreationAlgo::assignHitHcal(), CaloTowerTopology::CaloTowerTopology(), CaloTowerTopology::convertHcaltoCT(), decrementDepth(), denseId2detId(), depthBinInformation(), detId2denseId(), detId2denseIdHE(), HcalTrigTowerGeometry::detIds(), reco::hcalSubdetector(), HcaluLUTTPGCoder::HcaluLUTTPGCoder(), incAIEta(), incrementDepth(), HcalHardcodeGeometryLoader::load(), CaloTowersCreationAlgo::makeHcalDropChMap(), HcalHardcodeGeometryLoader::makeHECells(), HcalHardcodeCalibrations::produceRespCorrs(), CaloTowersCreationAlgo::setGeometry(), HcalTrigTowerGeometry::towerIds(), and validRaw().
|
inline |
Definition at line 88 of file HcalTopology.h.
References lastHFRing_.
Referenced by CaloTowerTopology::CaloTowerTopology(), CaloTowerTopology::convertHcaltoCT(), reco::hcalSubdetector(), HcaluLUTTPGCoder::HcaluLUTTPGCoder(), validDetIdPreLS1(), and validRaw().
|
inline |
Definition at line 90 of file HcalTopology.h.
References lastHORing_.
Referenced by CaloTowerTopology::CaloTowerTopology(), CaloTowerTopology::convertHcaltoCT(), HcalTrigTowerGeometry::detIds(), incrementDepth(), and validRaw().
int HcalTopology::maxDepth | ( | HcalSubdetector | subdet | ) | const |
Definition at line 787 of file HcalTopology.cc.
References HcalBarrel, HcalEndcap, HcalForward, maxDepthHB_, maxDepthHE_, and maxDepthHF_.
Referenced by HcalGeometry::getCells(), and HcaluLUTTPGCoder::HcaluLUTTPGCoder().
|
inline |
Definition at line 128 of file HcalTopology.h.
References maxDepthHB_.
Referenced by RecAnalyzerMinbias::beginRun().
|
inline |
Definition at line 129 of file HcalTopology.h.
References maxDepthHE_.
Referenced by RecAnalyzerMinbias::beginRun().
|
inline |
Definition at line 31 of file HcalTopology.h.
References mode_.
Referenced by HcalHardcodeGeometryLoader::load(), HcalFlexiHardcodeGeometryLoader::load(), HcalHardcodeGeometryLoader::makeHBCells(), and HcalHardcodeGeometryLoader::makeHECells().
|
virtual |
return a count of valid cells (for dense indexing use)
Reimplemented from CaloSubdetectorTopology.
Definition at line 1233 of file HcalTopology.cc.
References HBSize_, HESize_, HFSize_, and HOSize_.
Referenced by denseId2detId(), HcalGeometry::getSummary(), HcalHardcodeGeometryLoader::load(), HcalFlexiHardcodeGeometryLoader::load(), and HcalGeometry::sizeForDenseIndex().
Get the neighbors of the given cell in north direction
Implements CaloSubdetectorTopology.
Definition at line 274 of file HcalTopology.cc.
References HcalDetId::changeForm(), incIPhi(), neighbor(), HcalDetId::oldFormat(), and DetId::rawId().
Referenced by spr::newHCALIdNS().
int HcalTopology::nPhiBins | ( | int | etaRing | ) | const |
how many phi segments in this ring
Definition at line 768 of file HcalTopology.cc.
References doublePhiBins_, firstHEDoublePhiRing(), firstHEQuadPhiRing(), firstHFQuadPhiRing(), and singlePhiBins_.
Referenced by CaloTowerHardcodeGeometryLoader::makeCell().
int HcalTopology::nPhiBins | ( | HcalSubdetector | subdet, |
int | etaRing | ||
) | const |
Definition at line 776 of file HcalTopology.cc.
References dPhiTable, dPhiTableHF, firstHBRing_, firstHFRing_, HcalForward, and M_PI.
int HcalTopology::phiBin | ( | HcalSubdetector | subdet, |
int | etaRing, | ||
double | phi | ||
) | const |
Definition at line 816 of file HcalTopology.cc.
References dPhiTable, dPhiTableHF, firstHBRing_, firstHFRing_, HcalBarrel, HcalEndcap, HcalForward, cmsHarvester::index, M_PI, phioff, csvLumiCalc::unit, unitPhi, and unitPhiHF.
Referenced by HcalGeometry::phiBin().
|
inlinestatic |
Definition at line 40 of file HcalTopology.h.
std::pair< int, int > HcalTopology::segmentBoundaries | ( | unsigned | ring, |
unsigned | depth | ||
) | const |
returns the boundaries of the depth segmentation, so that the first result is the first segment, and the second result is the first one of the next segment. Used for calculating physical bounds.
Definition at line 869 of file HcalTopology.cc.
References HLT_25ns10e33_v2_cff::depth, and getDepthSegmentation().
void HcalTopology::setDepthSegmentation | ( | unsigned | ring, |
const std::vector< int > & | readoutDepths | ||
) |
Definition at line 865 of file HcalTopology.cc.
References depthSegmentation_, and relativeConstraints::ring.
Referenced by HcalTopology().
|
inline |
Get the neighbors of the given cell in south direction
Implements CaloSubdetectorTopology.
Definition at line 284 of file HcalTopology.cc.
References HcalDetId::changeForm(), decIPhi(), neighbor(), HcalDetId::oldFormat(), and DetId::rawId().
Referenced by spr::newHCALIdNS().
|
virtual |
return a version which identifies the given topology
Reimplemented from CaloSubdetectorTopology.
Definition at line 1237 of file HcalTopology.cc.
References topoVersion_.
Referenced by HcalCondObjectContainerBase::HcalCondObjectContainerBase(), and HcalCondObjectContainerBase::setTopo().
|
inline |
Get the neighbors of the given cell in up direction (outward)
Implements CaloSubdetectorTopology.
Definition at line 294 of file HcalTopology.cc.
References HcalDetId::changeForm(), incrementDepth(), neighbor(), and HcalDetId::oldFormat().
Referenced by spr::matrixHCALIdsDepth().
|
virtual |
Is this a valid cell id?
Reimplemented from CaloSubdetectorTopology.
Definition at line 181 of file HcalTopology.cc.
References assert(), DetId::Hcal, and validHcal().
Referenced by RecAnalyzerMinbias::beginRun(), decAIEta(), decIPhi(), fillDefaults(), HcalGeometry::getCells(), incAIEta(), incIPhi(), CaloMiscalibMapHcal::prefillMap(), undefinedCells(), HcaluLUTTPGCoder::update(), and HcaluLUTTPGCoder::updateXML().
bool HcalTopology::validDetId | ( | HcalSubdetector | subdet, |
int | ieta, | ||
int | iphi, | ||
int | depth | ||
) | const |
Definition at line 195 of file HcalTopology.cc.
References validHcal().
Referenced by HcalRecHitClient::analyze(), HcalCoarsePedestalMonitor::fill_Nevents(), HcalDigiMonitor::fill_Nevents(), HcalHotCellMonitor::fillNevents_energy(), HcalHotCellMonitor::fillNevents_neighbor(), HcalHotCellMonitor::fillNevents_persistentenergy(), HcalDeadCellMonitor::fillNevents_problemCells(), HcalDeadCellMonitor::fillNevents_recentdigis(), HcalDeadCellMonitor::fillNevents_recentrechits(), HcalMonitorClient::PlotPedestalValues(), HcalDeadCellClient::updateChannelStatus(), and HcalHotCellClient::updateChannelStatus().
|
private |
Is this a valid cell id, ignoring the exclusion list
Basic rules used to derive this code:
HB has 72 towers in iphi. Ieta 1-14 have depth=1, Ieta 15-16 have depth=1 or 2.
HE ieta=16-20 have 72 towers in iphi ieta=21-29 have 36 towers in iphi ieta=16 is depth 3 only ieta=17 is depth 1 only ieta=18-26 & 29 have depth 1 and 2 ieta=27-28 has depth 1-3
HF ieta=29-39 have 36 in iphi ieta=40-41 have 18 in iphi (71,3,7,11...) all have two depths
HO has 15 towers in ieta and 72 in iphi and depth = 4 (one value)
At H2:
HE ieta 17 is two depths HE ieta 22- have 36 towers in iphi (starts one higher) HE ieta 24- has three depths
Definition at line 373 of file HcalTopology.cc.
References HLT_25ns10e33_v2_cff::depth, reco::dp, firstHERing(), firstHFQuadPhiRing(), firstHFRing(), HcalBarrel, HcalEndcap, HcalForward, HcalOuter, IPHI_MAX, lastHFRing(), and sd.
bool HcalTopology::validHcal | ( | const HcalDetId & | id | ) | const |
Is this a valid cell id?
Definition at line 186 of file HcalTopology.cc.
References isExcluded(), convertSQLiteXML::ok, and validRaw().
Referenced by HcalDigitizer::accumulateCaloHits(), valid(), and validDetId().
bool HcalTopology::validHT | ( | const HcalTrigTowerDetId & | id | ) | const |
Definition at line 201 of file HcalTopology.cc.
References HLT_25ns10e33_v2_cff::depth, IPHI_MAX, HcalTopologyMode::tm_LHC_1x1, HcalTopologyMode::tm_LHC_RCT, triggerMode_, and relval_steps::version.
Referenced by CaloTPGTranscoderULUT::HTvalid(), CaloTPGTranscoderULUT::loadHCALCompress(), and validRaw().
|
private |
Is this a valid cell id?
Definition at line 421 of file HcalTopology.cc.
References HLT_25ns10e33_v2_cff::depth, etaBinsHE_, firstHEDoublePhiRing(), firstHEQuadPhiRing(), firstHERing(), firstHETripleDepthRing(), firstHFQuadPhiRing(), firstHFRing(), HcalDDDRecConstants::getDepthEta16(), HcalDDDRecConstants::getMaxDepth(), HcalDDDRecConstants::getNoff(), HcalTopologyMode::H2, HcalTopologyMode::H2HE, HcalBarrel, HcalEndcap, HcalForward, HcalOuter, HcalTriggerTower, hcons_, i, IPHI_MAX, lastHBRing(), lastHERing(), lastHFRing(), lastHORing(), maxEta_, HcalDDDRecConstants::maxHFDepth(), mode_, convertSQLiteXML::ok, HcalTopologyMode::SLHC, and validHT().
Referenced by decIPhi(), decrementDepth(), exclude(), incIPhi(), incrementDepth(), and validHcal().
Get the neighbors of the given cell in west direction
Implements CaloSubdetectorTopology.
Definition at line 264 of file HcalTopology.cc.
Referenced by spr::newHCALIdEW().
|
private |
Definition at line 188 of file HcalTopology.h.
Referenced by getCALIBSize().
|
private |
Definition at line 199 of file HcalTopology.h.
Referenced by getDepthSegmentation(), and setDepthSegmentation().
|
private |
Definition at line 178 of file HcalTopology.h.
Referenced by doublePhiBins(), and nPhiBins().
|
private |
Definition at line 191 of file HcalTopology.h.
Referenced by HcalTopology(), nPhiBins(), and phiBin().
|
private |
Definition at line 191 of file HcalTopology.h.
Referenced by HcalTopology(), nPhiBins(), and phiBin().
|
private |
Definition at line 173 of file HcalTopology.h.
Referenced by decrementDepth(), and HcalTopology().
|
private |
Definition at line 173 of file HcalTopology.h.
Referenced by decrementDepth(), HcalTopology(), and validRaw().
|
private |
Definition at line 180 of file HcalTopology.h.
Referenced by HcalTopology(), and incAIEta().
|
private |
Definition at line 180 of file HcalTopology.h.
Referenced by decAIEta(), decrementDepth(), and HcalTopology().
|
private |
Definition at line 191 of file HcalTopology.h.
Referenced by etaMax(), etaRange(), etaRing(), and HcalTopology().
|
private |
Definition at line 191 of file HcalTopology.h.
Referenced by etaMax(), etaRange(), etaRing(), and HcalTopology().
|
private |
Definition at line 163 of file HcalTopology.h.
Referenced by exclude(), excludeSubdetector(), and isExcluded().
|
private |
Definition at line 163 of file HcalTopology.h.
Referenced by exclude(), excludeSubdetector(), and isExcluded().
|
private |
Definition at line 163 of file HcalTopology.h.
Referenced by exclude(), excludeSubdetector(), and isExcluded().
|
private |
Definition at line 163 of file HcalTopology.h.
Referenced by exclude(), excludeSubdetector(), and isExcluded().
|
private |
Definition at line 162 of file HcalTopology.h.
Referenced by exclude(), and isExcluded().
|
private |
Definition at line 168 of file HcalTopology.h.
Referenced by etaRing(), firstHBRing(), HcalTopology(), nPhiBins(), and phiBin().
|
private |
Definition at line 176 of file HcalTopology.h.
Referenced by firstHEDoublePhiRing(), and HcalTopology().
|
private |
Definition at line 176 of file HcalTopology.h.
Referenced by firstHEQuadPhiRing(), and HcalTopology().
|
private |
Definition at line 169 of file HcalTopology.h.
Referenced by firstHERing(), and HcalTopology().
|
private |
Definition at line 177 of file HcalTopology.h.
Referenced by firstHETripleDepthRing(), and HcalTopology().
|
private |
Definition at line 176 of file HcalTopology.h.
Referenced by firstHFQuadPhiRing(), and HcalTopology().
|
private |
Definition at line 170 of file HcalTopology.h.
Referenced by etaRange(), etaRing(), firstHFRing(), HcalTopology(), nPhiBins(), and phiBin().
|
private |
Definition at line 171 of file HcalTopology.h.
Referenced by firstHORing(), and HcalTopology().
|
private |
Definition at line 183 of file HcalTopology.h.
Referenced by denseId2detId(), detId2denseId(), getHBSize(), HcalTopology(), and ncells().
|
private |
Definition at line 161 of file HcalTopology.h.
Referenced by depthBinInformation(), HcalTopology(), and validRaw().
|
private |
Definition at line 184 of file HcalTopology.h.
Referenced by denseId2detId(), detId2denseId(), getHESize(), HcalTopology(), and ncells().
|
private |
Definition at line 186 of file HcalTopology.h.
Referenced by getHFSize(), HcalTopology(), and ncells().
|
private |
Definition at line 185 of file HcalTopology.h.
Referenced by denseId2detId(), detId2denseId(), getHOSize(), HcalTopology(), and ncells().
|
private |
Definition at line 187 of file HcalTopology.h.
Referenced by getHTSize(), and HcalTopology().
|
private |
Definition at line 168 of file HcalTopology.h.
Referenced by etaMax(), HcalTopology(), and lastHBRing().
|
private |
Definition at line 169 of file HcalTopology.h.
Referenced by etaMax(), etaRange(), etaRing(), HcalTopology(), and lastHERing().
|
private |
Definition at line 170 of file HcalTopology.h.
Referenced by HcalTopology(), and lastHFRing().
|
private |
Definition at line 171 of file HcalTopology.h.
Referenced by etaMax(), HcalTopology(), and lastHORing().
|
private |
Definition at line 179 of file HcalTopology.h.
Referenced by denseId2detId(), detId2denseId(), detId2denseIdHB(), HcalTopology(), maxDepth(), and maxDepthHB().
|
private |
Definition at line 179 of file HcalTopology.h.
Referenced by denseId2detId(), detId2denseId(), detId2denseIdHE(), HcalTopology(), maxDepth(), and maxDepthHE().
|
private |
Definition at line 179 of file HcalTopology.h.
Referenced by denseId2detId(), depthBinInformation(), detId2denseId(), detId2denseIdHF(), HcalTopology(), and maxDepth().
|
private |
Definition at line 181 of file HcalTopology.h.
Referenced by HcalTopology(), and validRaw().
|
private |
Definition at line 165 of file HcalTopology.h.
Referenced by decrementDepth(), depthBinInformation(), etaRange(), HcalTopology(), incrementDepth(), mode(), and validRaw().
|
private |
Definition at line 174 of file HcalTopology.h.
Referenced by decrementDepth(), denseId2detId(), detId2denseId(), detId2denseIdHB(), and HcalTopology().
|
private |
Definition at line 174 of file HcalTopology.h.
Referenced by denseId2detId(), detId2denseId(), detId2denseIdHE(), etaMax(), and HcalTopology().
|
private |
Definition at line 189 of file HcalTopology.h.
Referenced by getNumberOfShapes(), and HcalTopology().
|
private |
Definition at line 192 of file HcalTopology.h.
Referenced by HcalTopology(), and phiBin().
|
private |
Definition at line 178 of file HcalTopology.h.
Referenced by nPhiBins(), and singlePhiBins().
|
private |
Definition at line 195 of file HcalTopology.h.
Referenced by denseId2detId(), detId2denseId(), detId2denseIdHB(), detId2denseIdHE(), detId2denseIdHF(), detId2denseIdHO(), HcalTopology(), and topoVersion().
|
private |
Definition at line 166 of file HcalTopology.h.
Referenced by HcalTopology(), triggerMode(), and validHT().
|
private |
Definition at line 193 of file HcalTopology.h.
Referenced by HcalTopology(), and phiBin().
|
private |
Definition at line 193 of file HcalTopology.h.
Referenced by HcalTopology(), and phiBin().