#include <Geometry/CaloGeometry/interface/CaloCellGeometry.h>
Public Types | |
typedef EZMgrFL< GlobalPoint > | CornersMgr |
enum | CornersSize { k_cornerSize = 8 } |
typedef EZArrayFL< GlobalPoint > | CornersVec |
typedef EZMgrFL< float > | ParMgr |
typedef EZArrayFL< float > | ParVec |
typedef std::vector< ParVec > | ParVecVec |
Public Member Functions | |
bool | emptyCorners () const |
virtual const CornersVec & | getCorners () const =0 |
const GlobalPoint & | getPosition () const |
virtual bool | inside (const GlobalPoint &point) const =0 |
virtual | ~CaloCellGeometry () |
Static Public Member Functions | |
static const float * | getParmPtr (const std::vector< float > &vd, ParMgr *mgr, ParVecVec &pvv) |
Static Public Attributes | |
static const float | k_ScaleFromDDDtoGeant |
Protected Member Functions | |
CaloCellGeometry (const CornersVec &cv) | |
CaloCellGeometry (CornersVec::const_reference gp, const CornersMgr *mgr) | |
CornersVec & | setCorners () const |
Private Attributes | |
CornersVec | m_corners |
const GlobalPoint | m_refPoint |
Definition at line 19 of file CaloCellGeometry.h.
typedef EZMgrFL< GlobalPoint > CaloCellGeometry::CornersMgr |
Definition at line 24 of file CaloCellGeometry.h.
typedef EZArrayFL< GlobalPoint > CaloCellGeometry::CornersVec |
Definition at line 23 of file CaloCellGeometry.h.
typedef EZMgrFL< float > CaloCellGeometry::ParMgr |
Definition at line 28 of file CaloCellGeometry.h.
typedef EZArrayFL<float> CaloCellGeometry::ParVec |
Definition at line 26 of file CaloCellGeometry.h.
typedef std::vector<ParVec> CaloCellGeometry::ParVecVec |
Definition at line 27 of file CaloCellGeometry.h.
virtual CaloCellGeometry::~CaloCellGeometry | ( | ) | [inline, virtual] |
CaloCellGeometry::CaloCellGeometry | ( | CornersVec::const_reference | gp, | |
const CornersMgr * | mgr | |||
) | [inline, protected] |
Definition at line 54 of file CaloCellGeometry.h.
00055 : 00056 m_refPoint ( gp ), 00057 m_corners ( mgr ) {}
CaloCellGeometry::CaloCellGeometry | ( | const CornersVec & | cv | ) | [inline, protected] |
bool CaloCellGeometry::emptyCorners | ( | ) | const [inline] |
Definition at line 45 of file CaloCellGeometry.h.
References EZArrayFL< T >::empty(), and m_corners.
Referenced by VisEventSetupService::emptyCorners(), and operator<<().
const CaloCellGeometry::CornersVec & CaloCellGeometry::getCorners | ( | ) | const [pure virtual] |
Implemented in calogeom::IdealObliquePrism, calogeom::IdealZPrism, PreshowerStrip, TruncatedPyramid, calogeom::IdealCastorTrapezoid, and calogeom::IdealZDCTrapezoid.
Definition at line 6 of file CaloCellGeometry.cc.
References m_corners.
Referenced by VisEBRecHit::analyze(), VisHORecHit::analyze(), VisCaloTower::analyze(), VisEcalRecHit::analyze(), VisHBRecHit::analyze(), VisEERecHit::analyze(), VisBasicCluster::analyze(), VisHERecHit::analyze(), VisHFRecHit::analyze(), PhiSymmetryCalibration::beginJob(), VisEventSetup::build(), VisEventSetupService::buildCaloDet(), CaloGeometryHelper::buildCrystalArray(), PFRecHitProducerECAL::createEcalRecHit(), PFRecHitProducerHCAL::createHcalRecHit(), CaloTowersCreationAlgo::emCrystalShwrPos(), EcalEndcapGeometry::getClosestCell(), calogeom::IdealCastorTrapezoid::getCorners(), calogeom::IdealObliquePrism::getCorners(), VisEventSetupService::getCorners(), calogeom::IdealZPrism::getCorners(), calogeom::IdealZDCTrapezoid::getCorners(), TruncatedPyramid::getCorners(), PreshowerStrip::getCorners(), HCaloDetIdAssociator::getDetIdPoints(), CaloDetIdAssociator::getDetIdPoints(), CaloTowersCreationAlgo::hadSegmentShwrPos(), JetMaker::makeSpecific(), operator<<(), VisPFRecHitTwig::update(), and VisPFClusterTwig::update().
00007 { 00008 return m_corners ; 00009 }
const float * CaloCellGeometry::getParmPtr | ( | const std::vector< float > & | vd, | |
CaloCellGeometry::ParMgr * | mgr, | |||
CaloCellGeometry::ParVecVec & | pvv | |||
) | [static] |
Definition at line 31 of file CaloCellGeometry.cc.
References prof2calltree::back, EZArrayFL< T >::begin(), i, j, same, EZArrayFL< T >::size(), and v.
Referenced by CaloTowerHardcodeGeometryLoader::makeCell(), HcalHardcodeGeometryLoader::makeCell(), CastorHardcodeGeometryLoader::makeCell(), HcalDDDGeometryLoader::makeCell(), and EcalTBHodoscopeGeometryLoaderFromDDD::makeGeometry().
00035 { 00036 const float* pP ( 0 ) ; 00037 00038 for( unsigned int ii ( 0 ) ; ii != pvv.size() ; ++ii ) 00039 { 00040 const ParVec& v ( pvv[ii] ) ; 00041 assert( v.size() == vv.size() ) ; 00042 00043 bool same ( true ) ; 00044 for( unsigned int j ( 0 ) ; j != vv.size() ; ++j ) 00045 { 00046 same = same && ( vv[j] == v[j] ) ; 00047 if( !same ) break ; 00048 } 00049 if( same ) 00050 { 00051 pP = &(*v.begin()) ; 00052 break ; 00053 } 00054 } 00055 if( 0 == pP ) 00056 { 00057 pvv.push_back( ParVec( mgr ) ) ; 00058 ParVec& back ( pvv.back() ) ; 00059 for( unsigned int i ( 0 ) ; i != vv.size() ; ++i ) 00060 { 00061 back[i] = vv[i] ; 00062 } 00063 pP = &(*back.begin()) ; 00064 } 00065 return pP ; 00066 }
const GlobalPoint& CaloCellGeometry::getPosition | ( | ) | const [inline] |
Definition at line 40 of file CaloCellGeometry.h.
References m_refPoint.
Referenced by VisEBRecHit::analyze(), VisHORecHit::analyze(), VisEcalRecHit::analyze(), VisHBRecHit::analyze(), EcalTPGParamBuilder::analyze(), HcalRecHitsValidation::analyze(), VisEERecHit::analyze(), VisHERecHit::analyze(), EcalTrigPrimAnalyzer::analyze(), VisHFRecHit::analyze(), TruncatedPyramid::axis(), PhiSymmetryCalibration::beginJob(), VisEventSetupService::buildCaloDet(), CaloGeometryHelper::buildCrystalArray(), SuperClusterShapeAlgo::Calculate_Covariances(), ClusterShapeAlgo::Calculate_Covariances(), ClusterShapeAlgo::Calculate_EnergyDepTopology(), PositionCalc::Calculate_Location(), CaloTowersCreationAlgo::convert(), EcalClusterTools::covariances(), PFRecHitProducerECAL::createEcalRecHit(), PFRecHitProducerHCAL::createHcalRecHit(), DistanceToCell::DistanceToCell(), EcalHitMaker::EcalHitMaker(), InvRingCalib::EERingDef(), CaloTowersCreationAlgo::emCrystalShwrPos(), GlobalHitsProducer::fillECal(), GlobalHitsProdHist::fillECal(), GlobalHitsAnalyzer::fillECal(), ECALRecHitAnalyzer::FillGeometry(), CaloTowerAnalyzer::FillGeometry(), HCALRecHitAnalyzer::FillGeometry(), GlobalRecHitsAnalyzer::fillHCal(), GlobalHitsAnalyzer::fillHCal(), GlobalHitsProducer::fillHCal(), GlobalHitsProdHist::fillHCal(), GlobalRecHitsProducer::fillHCal(), JetAnalyzer::fillRecHitHists(), PFRecHitProducerECAL::findEcalRecHitGeometry(), VisEventSetupService::getBinNumber(), HardTauAlgorithm::getCellMomentum(), VisEventSetupService::getCellPosition(), EcalEndcapGeometry::getCells(), EcalBarrelGeometry::getCells(), HcalGeometry::getClosestCell(), CaloGeometryHelper::getClosestCell(), EcalBarrelGeometry::getClosestCell(), EcalEndcapGeometry::getClosestCell(), calogeom::IdealCastorTrapezoid::getCorners(), calogeom::IdealObliquePrism::getCorners(), calogeom::IdealZPrism::getCorners(), calogeom::IdealZDCTrapezoid::getCorners(), PreshowerStrip::getCorners(), L2TauNarrowConeIsolationProducer::getECALHits(), L2TauIsolationProducer::getECALHits(), EcalClusterTools::getEnergyDepTopology(), CaloGeometry::getPosition(), CaloDetIdAssociator::getPosition(), HCaloDetIdAssociator::getPosition(), TruncatedPyramid::getPosition(), CaloRecoTauTagInfoAlgorithm::getPositionAndEnergyEcalRecHits(), CaloTowersCreationAlgo::hadSegmentShwrPos(), CaloGeometryHelper::initialize(), EcalRingCalibrationTools::initializeFromGeometry(), PreshowerStrip::inside(), calogeom::IdealZPrism::inside(), calogeom::IdealObliquePrism::inside(), calogeom::IdealCastorTrapezoid::inside(), calogeom::IdealZDCTrapezoid::inside(), JetAnalyzer::MakeCellListFromCaloTowers(), CosmicClusterAlgo::makeClusters(), HybridClusterAlgo::makeClusters(), Multi5x5ClusterAlgo::makeClusters(), IslandClusterAlgo::makeClusters(), JetAnalyzer::MakeEmCellList(), JetAnalyzer::MakeHadCellList(), PreshowerClusterAlgo::makeOneCluster(), EcalClusterTools::meanClusterPosition(), DistanceToCell::operator()(), operator<<(), calogeom::operator<<(), processHits(), JetCrystalsAssociator::produce(), HcalDigiTester::reco(), and CaloHitResponse::timeOfFlight().
00040 { return m_refPoint ; }
virtual bool CaloCellGeometry::inside | ( | const GlobalPoint & | point | ) | const [pure virtual] |
Implemented in calogeom::IdealObliquePrism, calogeom::IdealZPrism, PreshowerStrip, TruncatedPyramid, calogeom::IdealCastorTrapezoid, and calogeom::IdealZDCTrapezoid.
Referenced by CaloDetIdAssociator::insideElement(), and HCaloDetIdAssociator::insideElement().
CornersVec& CaloCellGeometry::setCorners | ( | ) | const [inline, protected] |
Definition at line 65 of file CaloCellGeometry.h.
References m_corners.
Referenced by calogeom::IdealCastorTrapezoid::getCorners(), calogeom::IdealObliquePrism::getCorners(), calogeom::IdealZPrism::getCorners(), calogeom::IdealZDCTrapezoid::getCorners(), and PreshowerStrip::getCorners().
00065 { return m_corners ; }
const float CaloCellGeometry::k_ScaleFromDDDtoGeant [static] |
Definition at line 32 of file CaloCellGeometry.h.
Referenced by TruncatedPyramid::createCorners(), and EcalTBHodoscopeGeometryLoaderFromDDD::makeGeometry().
CornersVec CaloCellGeometry::m_corners [mutable, private] |
Definition at line 71 of file CaloCellGeometry.h.
Referenced by emptyCorners(), getCorners(), and setCorners().
const GlobalPoint CaloCellGeometry::m_refPoint [private] |