#include <CaloGeometry.h>
Public Member Functions | |
CaloGeometry () | |
std::shared_ptr< const CaloCellGeometry > | getGeometry (const DetId &id) const |
Get the cell geometry of a given detector id. More... | |
GlobalPoint | getPosition (const DetId &id) const |
Get the position of a given detector id. More... | |
const CaloSubdetectorGeometry * | getSubdetectorGeometry (const DetId &id) const |
access the subdetector geometry for the given subdetector directly More... | |
const CaloSubdetectorGeometry * | getSubdetectorGeometry (DetId::Detector det, int subdet) const |
access the subdetector geometry for the given subdetector directly More... | |
std::vector< DetId > | getValidDetIds () const |
Get the list of all valid detector ids. More... | |
const std::vector< DetId > & | getValidDetIds (DetId::Detector det, int subdet) const |
Get the list of valid detector ids for the given subdetector. More... | |
bool | present (const DetId &id) const |
is this detid present in the geometry? More... | |
void | setSubdetGeometry (DetId::Detector det, int subdet, const CaloSubdetectorGeometry *geom) |
Register a subdetector geometry. More... | |
Private Types | |
enum | { kMaxDet = 6, kMinDet = 3, kNDets = kMaxDet - kMinDet + 1, kMaxSub = 6, kLength = kNDets*kMaxSub } |
Private Member Functions | |
unsigned int | makeIndex (DetId::Detector det, int subdet, bool &ok) const |
Private Attributes | |
std::vector< const CaloSubdetectorGeometry * > | m_geos |
Static Private Attributes | |
static const std::vector< DetId > | k_emptyVec |
Interface class to the geometry information for all calorimetry subdetectors.
Definition at line 23 of file CaloGeometry.h.
|
private |
Enumerator | |
---|---|
kMaxDet | |
kMinDet | |
kNDets | |
kMaxSub | |
kLength |
Definition at line 69 of file CaloGeometry.h.
CaloGeometry::CaloGeometry | ( | ) |
Definition at line 9 of file CaloGeometry.cc.
std::shared_ptr< const CaloCellGeometry > CaloGeometry::getGeometry | ( | const DetId & | id | ) | const |
Get the cell geometry of a given detector id.
Definition at line 80 of file CaloGeometry.cc.
References relativeConstraints::geom, CaloSubdetectorGeometry::getGeometry(), and getSubdetectorGeometry().
Referenced by FWRecoGeometryESProducer::addCaloGeometry(), FWTGeoRecoGeometryESProducer::addCaloTowerGeometry(), FWTGeoRecoGeometryESProducer::addEcalCaloGeometry(), FWTGeoRecoGeometryESProducer::addHcalCaloGeometryBarrel(), FWTGeoRecoGeometryESProducer::addHcalCaloGeometryEndcap(), FWTGeoRecoGeometryESProducer::addHcalCaloGeometryForward(), FWTGeoRecoGeometryESProducer::addHcalCaloGeometryOuter(), EcalPileUpDepMonitor::analyze(), EcalSimple2007H4TBAnalyzer::analyze(), ECALMultifitAnalyzer_HI::analyze(), CaloTowersCreationAlgo::assignHitEcal(), HFClusterAlgo::clusterize(), EcalDetailedTimeRecHitProducer::deltaTimeOfFlight(), CaloTowersCreationAlgo::emCrystalShwrPos(), ParticleTowerProducer::getNearestTower(), EgammaRecHitIsolation::getSum_(), CaloTowersCreationAlgo::hadShwPosFromCells(), ParticleTowerProducer::produce(), and ParticleTowerProducer::resetTowers().
GlobalPoint CaloGeometry::getPosition | ( | const DetId & | id | ) | const |
Get the position of a given detector id.
Definition at line 69 of file CaloGeometry.cc.
References relativeConstraints::geom, CaloSubdetectorGeometry::getGeometry(), getSubdetectorGeometry(), and notFound.
Referenced by cms::ProducerAnalyzer::analyze(), EopTreeWriter::analyze(), HFClusterAlgo::clusterize(), egammaisolation::EgammaRecHitExtractor::collect(), muonisolation::CaloExtractor::deposit(), egammaisolation::EgammaHcalExtractor::deposit(), muonisolation::CaloExtractorByAssociator::deposits(), ecalEnergyInCone(), EcalRecHitWorkerRecover::estimateEnergy(), ecaldqm::eta(), reco::HcalNoiseInfoProducer::fillrechits(), muonisolation::CaloExtractor::fillVetos(), EcalBadCalibFilter::filter(), filterCellsInCone(), spr::findCone(), ParametrizedSubtractor::getEt(), ParametrizedSubtractor::getEta(), spr::getGpos(), EgammaHcalIsolation::getHcalSum(), HCaloDetIdAssociator::getPosition(), HcalHaloAlgo::getPosition(), CSCHaloAlgo::getPosition(), EgammaHLTHcalIsolationDoubleCone::isolPtSum(), PFRecoTauDiscriminationAgainstElectronDeadECAL::loopXtals(), HFClusterAlgo::makeCluster(), spr::matrixECALIds(), EcalIsolatedParticleCandidateProducer::produce(), IsolatedEcalPixelTrackCandidateProducer::produce(), EleIsoDetIdCollectionProducer::produce(), GamIsoDetIdCollectionProducer::produce(), EcalRecHitWorkerRecover::run(), and spr::timeOfFlight().
const CaloSubdetectorGeometry * CaloGeometry::getSubdetectorGeometry | ( | const DetId & | id | ) | const |
access the subdetector geometry for the given subdetector directly
Definition at line 44 of file CaloGeometry.cc.
References diffTreeTool::index, m_geos, makeIndex(), and convertSQLiteXML::ok.
Referenced by FWRecoGeometryESProducer::addCaloGeometry(), cms::ProducerAnalyzer::analyze(), PhiSymmetryCalibration::analyze(), DQMSourcePi0::analyze(), HcalRecHitsValidation::analyze(), IsolatedTracksCone::analyze(), CaloTowerConstituentsMapBuilder::assignEEtoHE(), PFECALHashNavigator::beginEvent(), PFRecHitQTestECALMultiThreshold::beginEvent(), CaloTruthAccumulator::beginLuminosityBlock(), ReducedESRecHitCollectionProducer::beginRun(), IsolatedPixelTrackCandidateProducer::beginRun(), IsolatedPixelTrackCandidateL1TProducer::beginRun(), HGCDigitizer::beginRun(), HcalHBHEMuonAnalyzer::beginRun(), HGCalTriggerGeometryBase::bhGeometry(), EcalBoundaryInfoCalculator< EcalDetId >::boundaryRecHits(), CaloRecoTauAlgorithm::buildCaloTau(), PhotonEnergyCorrector::calculate(), HcalHaloAlgo::Calculate(), EcalHaloAlgo::Calculate(), CSCHaloAlgo::Calculate(), spr::chargeIsolationEcal(), EcalClusterPUCleaningTools::CleanedSuperCluster(), Multi5x5ClusterProducer::clusterizeECALPart(), EgammaHLTMulti5x5ClusterProducer::clusterizeECALPart(), CosmicClusterProducer::clusterizeECALPart(), EgammaHLTIslandClusterProducer::clusterizeECALPart(), IslandClusterProducer::clusterizeECALPart(), WriteESAlignments::convert(), EcalClusterToolsT< noZS >::covariances(), egammaisolation::EgammaRecHitExtractor::deposit(), HcalRecHitsAnalyzer::dqmBeginRun(), HcalDigisValidation::dqmBeginRun(), HGCalHitValidation::dqmBeginRun(), TrackDetMatchInfo::dumpGeometry(), Pi0FixedMassWindowCalibration::duringLoop(), EcalBarrelTopology::EcalBarrelTopology(), EcalEndcapTopology::EcalEndcapTopology(), HGCalTriggerGeometryBase::eeGeometry(), InvRingCalib::EERingDef(), EgammaRecHitIsolation::EgammaRecHitIsolation(), cms::MinBias::endJob(), HGCalTriggerGeometryBase::fhGeometry(), GlobalHitsProdHist::fillECal(), GlobalHitsAnalyzer::fillECal(), GlobalHitsProducer::fillECal(), HCALRecHitAnalyzer::FillGeometry(), ECALRecHitAnalyzer::FillGeometry(), GlobalHitsAnalyzer::fillHCal(), GlobalHitsProdHist::fillHCal(), GlobalHitsProducer::fillHCal(), GlobalRecHitsAnalyzer::fillHCal(), GlobalRecHitsProducer::fillHCal(), AlCaHOCalibProducer::fillHOStore(), PhotonProducer::fillPhotonCollection(), HcalRecHitsValidation::fillRecHitsTmp(), EcalDeadCellBoundaryEnergyFilter::filter(), HLTEcalResonanceFilter::filter(), HLTRegionalEcalResonanceFilter::filter(), filterCellsInCone(), spr::findCone(), spr::findDetIdECAL(), spr::findDetIdHCAL(), EcalBoundaryInfoCalculator< EcalDetId >::gapRecHits(), BetaCalculatorECAL::getDetailedTrackLengthInXtals(), CaloDetIdAssociator::getDetIdPoints(), HCaloDetIdAssociator::getDetIdPoints(), EcalClusterToolsT< noZS >::getEnergyDepTopology(), EcalClusterLazyToolsBase::getESHits(), hgcal::RecHitTools::getEventSetup(), getGeometry(), EcalClusterLazyToolsBase::getGeometry(), spr::getGpos(), HoECalculator::getHoE(), hgcal::RecHitTools::getLayer(), hgcal::RecHitTools::getPosition(), getPosition(), HCaloDetIdAssociator::getPosition(), CaloDetIdAssociator::getPosition(), TrackDetMatchInfo::getPosition(), hgcal::RecHitTools::getRadiusToSide(), hgcal::RecHitTools::getSiThickness(), EcalClusterLocalContCorrection::getValue(), EcalBasicClusterLocalContCorrection::getValue(), EcalClusterCrackCorrection::getValue(), PFHBHERecHitCreator::importRecHits(), PFHcalRecHitCreator< Digi, Geometry, Layer, Detector >::importRecHits(), PFEcalRecHitCreatorMaxSample< Geometry, Layer, Detector >::importRecHits(), PFHGCalRecHitCreator< DET, Layer, subdet >::importRecHits(), PFPSRecHitCreator::importRecHits(), PFEcalBarrelRecHitCreator::importRecHits(), PFHFRecHitCreator::importRecHits(), PFEcalEndcapRecHitCreator::importRecHits(), PFHBHERecHitCreatorMaxSample::importRecHits(), PhotonFixCMS::initialise(), CaloDetIdAssociator::insideElement(), HCaloDetIdAssociator::insideElement(), hgcal::RecHitTools::isHalfCell(), EcalClusterLocal::localCoordsEB(), EcalClusterLocal::localCoordsEE(), HLTCaloObjInRegionsProducer< CaloObjType, CaloObjCollType >::makeFilteredColl(), EgammaHLTNxNClusterProducer::makeNxNClusters(), PiZeroAnalyzer::makePizero(), spr::matrixECALIds(), spr::matrixHCALIds(), EcalClusterToolsT< noZS >::meanClusterPosition(), PhysicsTowerOrganizer::PhysicsTowerOrganizer(), present(), EgammaHLTHybridClusterProducer::produce(), HybridClusterProducer::produce(), PreshowerClusterShapeProducer::produce(), PreshowerPhiClusterProducer::produce(), PreshowerClusterProducer::produce(), PFClusterShapeProducer::produce(), EgammaSCCorrectionMaker::produce(), PFCTRecHitProducer::produce(), HiEgammaSCCorrectionMaker::produce(), HLTRechitInRegionsProducer< T1 >::produce(), JetCrystalsAssociator::produce(), SelectedElectronFEDListProducer< TEle, TCand >::produce(), HLTRecHitInAllL1RegionsProducer< RecHitType >::produce(), spr::propagateCALO(), spr::propagateCosmicCALO(), spr::propagateHCAL(), spr::propagateHCALBack(), spr::propagateIdECAL(), CaloDualConeSelector< HBHERecHit >::selectCallback(), CaloConeSelector< T >::selectCallback(), CaloTowersCreationAlgo::setGeometry(), EcalGeomPhiSymHelper::setup(), Calorimeter::setupGeometry(), spr::timeOfFlight(), CaloHitResponse::timeOfFlight(), EcalTimeDigiProducer::updateGeometry(), EcalDigiProducer::updateGeometry(), ValidateGeometry::validateCaloGeometry(), and reco::writeSpecific().
const CaloSubdetectorGeometry * CaloGeometry::getSubdetectorGeometry | ( | DetId::Detector | det, |
int | subdet | ||
) | const |
access the subdetector geometry for the given subdetector directly
Definition at line 55 of file CaloGeometry.cc.
References diffTreeTool::index, m_geos, makeIndex(), notFound, and convertSQLiteXML::ok.
std::vector< DetId > CaloGeometry::getValidDetIds | ( | ) | const |
Get the list of all valid detector ids.
Definition at line 97 of file CaloGeometry.cc.
References DetId::Hcal, mps_fire::i, kLength, m_geos, and funct::true.
Referenced by FWRecoGeometryESProducer::addCaloGeometry(), FWTGeoRecoGeometryESProducer::addCaloTowerGeometry(), FWTGeoRecoGeometryESProducer::addEcalCaloGeometry(), FWTGeoRecoGeometryESProducer::addHcalCaloGeometryBarrel(), FWTGeoRecoGeometryESProducer::addHcalCaloGeometryEndcap(), FWTGeoRecoGeometryESProducer::addHcalCaloGeometryForward(), FWTGeoRecoGeometryESProducer::addHcalCaloGeometryOuter(), cms::MinBias::beginRun(), HcalRecHitsDQMClient::beginRun(), CastorDigiProducer::checkGeometry(), EcalDccWeightBuilder::computeAllWeights(), EcalMixingModuleValidation::computeSDBunchDigi(), HGCalImagingAlgo::computeThreshold(), InvRingCalib::duringLoop(), EcalEleCalibLooper::duringLoop(), Pi0FixedMassWindowCalibration::duringLoop(), HEcalDetIdAssociator::getASetOfValidDetIds(), HHcalDetIdAssociator::getASetOfValidDetIds(), HCaloDetIdAssociator::getASetOfValidDetIds(), ParticleTowerProducer::getNearestTower(), PreshowerDetIdAssociator::getValidDetIds(), HODetIdAssociator::getValidDetIds(), EcalDetIdAssociator::getValidDetIds(), HcalDetIdAssociator::getValidDetIds(), getValidDetIds(), CaloDetIdAssociator::getValidDetIds(), EcalTBDigiProducer::initializeEvent(), ParticleTowerProducer::resetTowers(), EcalGeomPhiSymHelper::setup(), PhiSymmetryCalibration_step2::setUp(), PhiSymmetryCalibration_step2_SM::setUp(), ParametrizedSubtractor::setupGeometryMap(), PileUpSubtractor::setupGeometryMap(), HcalTBDigiProducer::updateGeometry(), and HcalDigitizer::updateGeometry().
const std::vector< DetId > & CaloGeometry::getValidDetIds | ( | DetId::Detector | det, |
int | subdet | ||
) | const |
Get the list of valid detector ids for the given subdetector.
Definition at line 125 of file CaloGeometry.cc.
References getValidDetIds(), diffTreeTool::index, k_emptyVec, m_geos, makeIndex(), and convertSQLiteXML::ok.
|
private |
Definition at line 15 of file CaloGeometry.cc.
References kMaxDet, kMaxSub, and kMinDet.
Referenced by getSubdetectorGeometry(), getValidDetIds(), and setSubdetGeometry().
bool CaloGeometry::present | ( | const DetId & | id | ) | const |
is this detid present in the geometry?
Definition at line 91 of file CaloGeometry.cc.
References relativeConstraints::geom, getSubdetectorGeometry(), and CaloSubdetectorGeometry::present().
void CaloGeometry::setSubdetGeometry | ( | DetId::Detector | det, |
int | subdet, | ||
const CaloSubdetectorGeometry * | geom | ||
) |
Register a subdetector geometry.
Definition at line 30 of file CaloGeometry.cc.
References relativeConstraints::geom, diffTreeTool::index, m_geos, makeIndex(), and convertSQLiteXML::ok.
|
staticprivate |
Definition at line 61 of file CaloGeometry.h.
Referenced by getValidDetIds().
|
private |
Definition at line 63 of file CaloGeometry.h.
Referenced by getSubdetectorGeometry(), getValidDetIds(), and setSubdetGeometry().