#include <CaloSubdetectorGeometry.h>
Public Types | |
typedef CaloCellGeometry::CCGFloat | CCGFloat |
typedef std::vector < CaloCellGeometry const * > | CellSet |
typedef std::set< DetId > | DetIdSet |
typedef std::vector< CCGFloat > | DimVec |
typedef std::vector< unsigned int > | IVec |
typedef CaloCellGeometry::ParMgr | ParMgr |
typedef CaloCellGeometry::ParVec | ParVec |
typedef CaloCellGeometry::ParVecVec | ParVecVec |
typedef std::vector< CCGFloat > | TrVec |
Public Member Functions | |
void | allocateCorners (CaloCellGeometry::CornersVec::size_type n) |
void | allocatePar (ParVec::size_type n, unsigned int m) |
CaloSubdetectorGeometry () | |
CaloCellGeometry::CornersMgr * | cornersMgr () |
CCGFloat | deltaEta (const DetId &detId) const |
CCGFloat | deltaPhi (const DetId &detId) const |
virtual void | fillDefaultNamedParameters () const |
virtual DetIdSet | getCells (const GlobalPoint &r, double dR) const |
Get a list of all cells within a dR of the given cell. More... | |
virtual CellSet | getCellSet (const GlobalPoint &r, double dR) const |
virtual DetId | getClosestCell (const GlobalPoint &r) const |
virtual const CaloCellGeometry * | getGeometry (const DetId &id) const |
Get the cell geometry of a given detector id. Should return false if not found. More... | |
virtual void | getSummary (TrVec &trVector, IVec &iVector, DimVec &dimVector, IVec &dinsVector) const |
virtual const std::vector < DetId > & | getValidDetIds (DetId::Detector det=DetId::Detector(0), int subdet=0) const |
Get a list of valid detector ids (for the given subdetector) More... | |
virtual void | initializeParms () |
virtual void | newCell (const GlobalPoint &f1, const GlobalPoint &f2, const GlobalPoint &f3, const CCGFloat *parm, const DetId &detId)=0 |
virtual unsigned int | numberOfParametersPerShape () const |
virtual unsigned int | numberOfShapes () const |
virtual unsigned int | numberOfTransformParms () const |
ParMgr * | parMgr () |
const ParMgr * | parMgrConst () const |
ParVecVec & | parVecVec () |
const ParVecVec & | parVecVec () const |
virtual bool | present (const DetId &id) const |
is this detid present in the geometry? More... | |
virtual | ~CaloSubdetectorGeometry () |
The base class DOES assume that it owns the CaloCellGeometry objects. More... | |
Protected Member Functions | |
virtual const CaloCellGeometry * | cellGeomPtr (uint32_t index) const =0 |
virtual unsigned int | indexFor (const DetId &id) const |
virtual unsigned int | sizeForDenseIndex (const DetId &id) const |
Static Protected Member Functions | |
static CCGFloat | deltaR (const GlobalPoint &p1, const GlobalPoint &p2) |
Protected Attributes | |
ParVecVec | m_parVecVec |
std::vector< DetId > | m_validIds |
Private Member Functions | |
CaloSubdetectorGeometry (const CaloSubdetectorGeometry &) | |
avoid copies More... | |
CaloSubdetectorGeometry & | operator= (const CaloSubdetectorGeometry &) |
Private Attributes | |
CaloCellGeometry::CornersMgr * | m_cmgr |
std::vector< CCGFloat > * | m_deltaEta |
std::vector< CCGFloat > * | m_deltaPhi |
ParMgr * | m_parMgr |
bool | m_sortedIds |
Base class for a geometry container for a specific calorimetry subdetector.
Definition at line 24 of file CaloSubdetectorGeometry.h.
Definition at line 28 of file CaloSubdetectorGeometry.h.
typedef std::vector<CaloCellGeometry const *> CaloSubdetectorGeometry::CellSet |
Definition at line 27 of file CaloSubdetectorGeometry.h.
typedef std::set<DetId> CaloSubdetectorGeometry::DetIdSet |
Definition at line 30 of file CaloSubdetectorGeometry.h.
typedef std::vector<CCGFloat> CaloSubdetectorGeometry::DimVec |
Definition at line 39 of file CaloSubdetectorGeometry.h.
typedef std::vector<unsigned int> CaloSubdetectorGeometry::IVec |
Definition at line 38 of file CaloSubdetectorGeometry.h.
Definition at line 33 of file CaloSubdetectorGeometry.h.
Definition at line 34 of file CaloSubdetectorGeometry.h.
Definition at line 35 of file CaloSubdetectorGeometry.h.
typedef std::vector<CCGFloat> CaloSubdetectorGeometry::TrVec |
Definition at line 37 of file CaloSubdetectorGeometry.h.
CaloSubdetectorGeometry::CaloSubdetectorGeometry | ( | ) |
Definition at line 13 of file CaloSubdetectorGeometry.cc.
|
virtual |
The base class DOES assume that it owns the CaloCellGeometry objects.
Definition at line 22 of file CaloSubdetectorGeometry.cc.
References m_cmgr, m_deltaEta, m_deltaPhi, and m_parMgr.
|
private |
avoid copies
void CaloSubdetectorGeometry::allocateCorners | ( | CaloCellGeometry::CornersVec::size_type | n | ) |
Definition at line 129 of file CaloSubdetectorGeometry.cc.
References CaloCellGeometry::k_cornerSize, m_cmgr, and m_validIds.
Referenced by CastorHardcodeGeometryLoader::fill(), ZdcHardcodeGeometryLoader::fill(), CaloTowerHardcodeGeometryLoader::load(), HcalFlexiHardcodeGeometryLoader::load(), HcalHardcodeGeometryLoader::load(), HcalDDDGeometryLoader::load(), and EcalTBHodoscopeGeometryLoaderFromDDD::makeGeometry().
void CaloSubdetectorGeometry::allocatePar | ( | ParVec::size_type | n, |
unsigned int | m | ||
) |
Definition at line 139 of file CaloSubdetectorGeometry.cc.
References m_parMgr.
Referenced by CastorHardcodeGeometryLoader::fill(), ZdcHardcodeGeometryLoader::fill(), CaloTowerHardcodeGeometryLoader::load(), HcalFlexiHardcodeGeometryLoader::load(), HcalHardcodeGeometryLoader::load(), HcalDDDGeometryLoader::load(), and EcalTBHodoscopeGeometryLoaderFromDDD::makeGeometry().
|
protectedpure virtual |
Implemented in GCC11_FINAL< T, TOPO >, GCC11_FINAL< T, TOPO >, EcalPreshowerGeometry, CastorGeometry, CaloTowerGeometry, ZdcGeometry, HcalDDDGeometry, and EcalTBHodoscopeGeometry.
Referenced by deltaEta(), deltaPhi(), getGeometry(), and getSummary().
|
inline |
Definition at line 83 of file CaloSubdetectorGeometry.h.
References m_cmgr.
Referenced by CastorHardcodeGeometryLoader::fill(), ZdcHardcodeGeometryLoader::fill(), CaloTowerHardcodeGeometryLoader::load(), HcalFlexiHardcodeGeometryLoader::load(), HcalHardcodeGeometryLoader::load(), HcalDDDGeometryLoader::load(), EcalTBHodoscopeGeometryLoaderFromDDD::makeGeometry(), EcalTBHodoscopeGeometry::newCell(), HcalDDDGeometry::newCell(), ZdcGeometry::newCell(), CaloTowerGeometry::newCell(), CastorGeometry::newCell(), EcalPreshowerGeometry::newCell(), and HcalGeometry::newCell().
Definition at line 270 of file CaloSubdetectorGeometry.cc.
References cellGeomPtr(), PV3DBase< T, PVType, FrameType >::eta(), CaloCellGeometry::getCorners(), i, indexFor(), m_deltaEta, and sizeForDenseIndex().
Definition at line 220 of file CaloSubdetectorGeometry.cc.
References cellGeomPtr(), CaloCellGeometry::getCorners(), i, indexFor(), m_deltaPhi, M_PI, PV3DBase< T, PVType, FrameType >::phi(), and sizeForDenseIndex().
|
inlinestaticprotected |
|
inlinevirtual |
|
virtual |
Get a list of all cells within a dR of the given cell.
The default implementation makes a loop over all cell geometries. Cleverer implementations are suggested to use rough conversions between eta/phi and ieta/iphi and test on the boundaries.
Reimplemented in HcalGeometry.
Definition at line 84 of file CaloSubdetectorGeometry.cc.
References reco::deltaR2(), PFRecoTauDiscriminationAgainstElectronDeadECAL_cfi::dR, PV3DBase< T, PVType, FrameType >::eta(), eta(), getGeometry(), CaloCellGeometry::getPosition(), i, M_PI, m_validIds, AlCaHLTBitMon_ParallelJobs::p, phi, and PV3DBase< T, PVType, FrameType >::phi().
Referenced by egammaisolation::EgammaRecHitExtractor::collect(), HcalGeometry::getCells(), getCellSet(), EgammaRecHitIsolation::getSum_(), CaloDualConeSelector::select(), and CaloConeSelector::select().
|
virtual |
Definition at line 120 of file CaloSubdetectorGeometry.cc.
References getCells(), and getGeometry().
|
virtual |
Reimplemented in EcalPreshowerGeometry, CastorGeometry, HcalGeometry, and HcalDDDGeometry.
Definition at line 55 of file CaloSubdetectorGeometry.cc.
References reco::deltaR2(), PV3DBase< T, PVType, FrameType >::eta(), eta(), getGeometry(), CaloCellGeometry::getPosition(), i, getHLTprescales::index, m_validIds, AlCaHLTBitMon_ParallelJobs::p, phi, and PV3DBase< T, PVType, FrameType >::phi().
Referenced by HcalCorrPFCalculation::analyze(), IsolatedTracksCone::analyze(), spr::chargeIsolation(), spr::chargeIsolationHcal(), spr::findDetIdCalo(), CaloGeometryHelper::getClosestCell(), EcalShowerProperties::getEndpoints(), HoECalculator::getHoE(), PhysicsTowerOrganizer::PhysicsTowerOrganizer(), EcalShowerProperties::processEcalRecHits(), and spr::propagateCALO().
|
virtual |
Get the cell geometry of a given detector id. Should return false if not found.
Reimplemented in HcalGeometry.
Definition at line 43 of file CaloSubdetectorGeometry.cc.
References cellGeomPtr().
Referenced by PreshowerHitMaker::addHit(), BetaCalculatorECAL::addStepToXtal(), EcalTPGParamBuilder::analyze(), EcalSelectiveReadoutValidation::analyzeEB(), EcalSelectiveReadoutValidation::analyzeEE(), EcalBoundaryInfoCalculator< EcalDetId >::boundaryRecHits(), CaloRecoTauAlgorithm::buildCaloTau(), SuperClusterShapeAlgo::Calculate_Covariances(), ClusterShapeAlgo::Calculate_Covariances(), ClusterShapeAlgo::Calculate_EnergyDepTopology(), PositionCalc::Calculate_Location(), CaloCellCrossing::CaloCellCrossing(), compEcalEnergySum(), compHcalEnergySum(), CaloTowersCreationAlgo::convert(), EcalClusterTools::covariances(), PFRecHitProducerECAL::createEcalRecHit(), PFHCALDualTimeRecHitProducer::createHcalRecHit(), PFRecHitProducerHCAL::createHcalRecHit(), PFRecHitProducerHO::createHORecHit(), PFRecHitProducerPS::createRecHits(), DistanceToCell::DistanceToCell(), InvRingCalib::EERingDef(), HCALRecHitAnalyzer::FillGeometry(), EcalDeadCellBoundaryEnergyFilter::filter(), PFRecHitProducerECAL::findEcalRecHitGeometry(), PFRecHitProducerHO::findHORecHitGeometry(), EcalBoundaryInfoCalculator< EcalDetId >::gapRecHits(), getCells(), getCellSet(), EcalDeadCellTriggerPrimitiveFilter::getChannelStatusMaps(), EcalDeadCellDeltaRFilter::getChannelStatusMaps(), CaloGeometryHelper::getClosestCell(), CastorGeometry::getClosestCell(), getClosestCell(), EcalPreshowerGeometry::getClosestCellInPlane(), HCaloDetIdAssociator::getDetIdPoints(), CaloDetIdAssociator::getDetIdPoints(), L2TauModularIsolationProducer::getECALHits(), L2TauIsolationProducer::getECALHits(), L2TauNarrowConeIsolationProducer::getECALHits(), EcalShowerProperties::getEndpoints(), EcalClusterTools::getEnergyDepTopology(), CaloGeometry::getGeometry(), EcalHitMaker::getHits(), CaloGeometry::getPosition(), HCaloDetIdAssociator::getPosition(), CaloDetIdAssociator::getPosition(), EcalClusterLocalContCorrection::getValue(), EcalBasicClusterLocalContCorrection::getValue(), EcalClusterCrackCorrection::getValue(), CalorimetryManager::HDShowerSimulation(), PhotonFixCMS::initialise(), CaloGeometryHelper::initialize(), EcalRingCalibrationTools::initializeFromGeometry(), EcalPreshowerGeometry::initializeParms(), CaloDetIdAssociator::insideElement(), HCaloDetIdAssociator::insideElement(), EcalClusterLocal::localCoordsEB(), EcalClusterLocal::localCoordsEE(), IslandClusterAlgo::makeClusters(), CosmicClusterAlgo::makeClusters(), Multi5x5ClusterAlgo::makeClusters(), PreshowerPhiClusterAlgo::makeOneCluster(), PreshowerClusterAlgo::makeOneCluster(), JetMaker::makeSpecific(), reco::makeSpecific(), EcalClusterTools::meanClusterPosition(), DistanceToCell::operator()(), present(), PlotEcalRecHits::printEcalRecHits(), PlotSimTracks::printSimTracks(), HcalHitRelabeller::process(), EcalShowerProperties::processEcalRecHits(), CastorEventDisplay::processEvent(), CalorimetryManager::reconstructHCAL(), EcalRecHitWorkerRecover::run(), EcalSelectiveReadoutValidation::setTtEtSums(), EcalSelectiveReadoutSuppressor::setTtFlags(), EcalGeomPhiSymHelper::setup(), CaloHitResponse::timeOfFlight(), and ValidateGeometry::validateCaloGeometry().
|
virtual |
Reimplemented in HcalGeometry.
Definition at line 147 of file CaloSubdetectorGeometry.cc.
References begin, EZArrayFL< T >::begin(), cellGeomPtr(), EZArrayFL< T >::end(), CaloCellGeometry::getPosition(), CaloCellGeometry::getTransform(), i, gen::k, m_validIds, numberOfParametersPerShape(), numberOfShapes(), numberOfTransformParms(), convertSQLiteXML::ok, CaloCellGeometry::param(), parVecVec(), findQualityFiles::rr, and groupFilesInBlocks::tt.
Referenced by CaloGeometryDBEP< T, U >::produceAligned().
|
virtual |
Get a list of valid detector ids (for the given subdetector)
Reimplemented in HcalGeometry, and HcalDDDGeometry.
Definition at line 31 of file CaloSubdetectorGeometry.cc.
References m_sortedIds, m_validIds, python.multivaluedict::sort(), and funct::true.
Referenced by testEcalTPGScale::analyze(), EcalTPGParamBuilder::analyze(), PositionCalc::Calculate_Location(), CaloCellCrossing::CaloCellCrossing(), HcalRecHitsMaker::createVectorOfSubdetectorCells(), EcalPreshowerRecHitsMaker::createVectorsOfCells(), HcalGeometry::fillDetIds(), HCALRecHitAnalyzer::FillGeometry(), CastorGeometry::getClosestCell(), HcalDDDGeometry::getValidDetIds(), HcalGeometry::getValidDetIds(), PFRecHitProducerHO::hoNeighbArray(), EcalPreshowerGeometry::initializeParms(), EcalTPCondAnalyzer::printCRYSTAL(), EcalDigiProducer::updateGeometry(), and ValidateGeometry::validateCaloGeometry().
|
protectedvirtual |
Reimplemented in HcalGeometry.
Definition at line 317 of file CaloSubdetectorGeometry.cc.
References CaloGenericDetId::denseIndex().
Referenced by deltaEta(), and deltaPhi().
|
inlinevirtual |
Reimplemented in GCC11_FINAL< T, TOPO >, and EcalPreshowerGeometry.
Definition at line 104 of file CaloSubdetectorGeometry.h.
References hitfit::return.
|
pure virtual |
Implemented in HcalGeometry, EcalPreshowerGeometry, CastorGeometry, CaloTowerGeometry, ZdcGeometry, HcalDDDGeometry, and EcalTBHodoscopeGeometry.
Referenced by HcalFlexiHardcodeGeometryLoader::fillHBHO(), HcalFlexiHardcodeGeometryLoader::fillHE(), HcalFlexiHardcodeGeometryLoader::fillHF(), CaloTowerHardcodeGeometryLoader::makeCell(), CastorHardcodeGeometryLoader::makeCell(), ZdcHardcodeGeometryLoader::makeCell(), HcalHardcodeGeometryLoader::makeCell(), HcalDDDGeometryLoader::makeCell(), and EcalTBHodoscopeGeometryLoaderFromDDD::makeGeometry().
|
inlinevirtual |
Reimplemented in GCC11_FINAL< T, TOPO >, GCC11_FINAL< T, TOPO >, EcalPreshowerGeometry, CaloTowerGeometry, CastorGeometry, ZdcGeometry, and HcalGeometry.
Definition at line 94 of file CaloSubdetectorGeometry.h.
Referenced by getSummary().
|
inlinevirtual |
Reimplemented in GCC11_FINAL< T, TOPO >, GCC11_FINAL< T, TOPO >, EcalPreshowerGeometry, CaloTowerGeometry, CastorGeometry, ZdcGeometry, and HcalGeometry.
Definition at line 93 of file CaloSubdetectorGeometry.h.
Referenced by getSummary(), HcalFlexiHardcodeGeometryLoader::load(), and HcalHardcodeGeometryLoader::load().
|
inlinevirtual |
Reimplemented in EcalPreshowerGeometry, and CastorGeometry.
Definition at line 95 of file CaloSubdetectorGeometry.h.
Referenced by getSummary(), and HcalGeometry::getSummary().
|
private |
|
inline |
Definition at line 87 of file CaloSubdetectorGeometry.h.
References m_parMgr.
Referenced by CastorHardcodeGeometryLoader::fill(), ZdcHardcodeGeometryLoader::fill(), HcalFlexiHardcodeGeometryLoader::fillHBHO(), HcalFlexiHardcodeGeometryLoader::fillHE(), HcalFlexiHardcodeGeometryLoader::fillHF(), CaloTowerHardcodeGeometryLoader::load(), HcalFlexiHardcodeGeometryLoader::load(), HcalHardcodeGeometryLoader::load(), HcalDDDGeometryLoader::load(), CaloTowerHardcodeGeometryLoader::makeCell(), CastorHardcodeGeometryLoader::makeCell(), ZdcHardcodeGeometryLoader::makeCell(), HcalHardcodeGeometryLoader::makeCell(), HcalDDDGeometryLoader::makeCell(), and EcalTBHodoscopeGeometryLoaderFromDDD::makeGeometry().
|
inline |
|
inline |
Definition at line 90 of file CaloSubdetectorGeometry.h.
References m_parVecVec.
Referenced by HcalFlexiHardcodeGeometryLoader::fillHBHO(), HcalFlexiHardcodeGeometryLoader::fillHE(), HcalFlexiHardcodeGeometryLoader::fillHF(), getSummary(), HcalGeometry::getSummary(), CaloTowerHardcodeGeometryLoader::makeCell(), CastorHardcodeGeometryLoader::makeCell(), ZdcHardcodeGeometryLoader::makeCell(), HcalHardcodeGeometryLoader::makeCell(), HcalDDDGeometryLoader::makeCell(), and EcalTBHodoscopeGeometryLoaderFromDDD::makeGeometry().
|
inline |
|
virtual |
is this detid present in the geometry?
Definition at line 49 of file CaloSubdetectorGeometry.cc.
References getGeometry().
Referenced by EcalPreshowerGeometry::getClosestCellInPlane(), EcalShowerProperties::getEndpoints(), and CaloGeometry::present().
|
protectedvirtual |
Reimplemented in HcalGeometry.
Definition at line 319 of file CaloSubdetectorGeometry.cc.
References CaloGenericDetId::sizeForDenseIndexing().
Referenced by deltaEta(), and deltaPhi().
|
private |
Definition at line 125 of file CaloSubdetectorGeometry.h.
Referenced by allocateCorners(), cornersMgr(), and ~CaloSubdetectorGeometry().
|
mutableprivate |
Definition at line 134 of file CaloSubdetectorGeometry.h.
Referenced by deltaEta(), and ~CaloSubdetectorGeometry().
|
mutableprivate |
Definition at line 133 of file CaloSubdetectorGeometry.h.
Referenced by deltaPhi(), and ~CaloSubdetectorGeometry().
|
private |
Definition at line 123 of file CaloSubdetectorGeometry.h.
Referenced by allocatePar(), parMgr(), parMgrConst(), and ~CaloSubdetectorGeometry().
|
protected |
Definition at line 113 of file CaloSubdetectorGeometry.h.
Referenced by parVecVec().
|
mutableprivate |
Definition at line 131 of file CaloSubdetectorGeometry.h.
Referenced by getValidDetIds().
|
mutableprotected |
Definition at line 119 of file CaloSubdetectorGeometry.h.
Referenced by allocateCorners(), getCells(), getClosestCell(), getSummary(), getValidDetIds(), EcalTBHodoscopeGeometry::newCell(), ZdcGeometry::newCell(), CaloTowerGeometry::newCell(), CastorGeometry::newCell(), EcalPreshowerGeometry::newCell(), and HcalGeometry::newCell().