Go to the documentation of this file.
52 std::shared_ptr<const CaloCellGeometry>
getGeometry(
const DetId&
id)
const override;
102 const DetId& detId)
override;
std::vector< Pt3D > Pt3DVec
const CaloCellGeometry * getGeometryRawPtr(uint32_t index) const override
void increaseReserve(unsigned int extra)
unsigned int sizeForDenseIndex(const DetId &id) const override
CaloCellGeometry::Pt3D Pt3D
static unsigned int numberOfAlignments()
static std::string producerTag()
HcalAlignmentRcd AlignmentRecord
std::set< DetId > DetIdSet
std::vector< CCGFloat > DimVec
CaloCellGeometry::Pt3DVec Pt3DVec
unsigned int newCellImpl(const GlobalPoint &f1, const GlobalPoint &f2, const GlobalPoint &f3, const CCGFloat *parm, const DetId &detId)
CaloCellGeometry::CCGFloat CCGFloat
std::vector< CCGFloat > TrVec
void newCellFast(const GlobalPoint &f1, const GlobalPoint &f2, const GlobalPoint &f3, const CCGFloat *parm, const DetId &detId)
static unsigned int alignmentBarrelIndexLocal(const DetId &id)
static unsigned int alignmentTransformIndexLocal(const DetId &id)
static unsigned int alignmentEndcapIndexLocal(const DetId &id)
std::vector< unsigned int > IVec
static unsigned int numberOfBarrelAlignments()
std::vector< IdealObliquePrism > HOCellVec
unsigned int indexFor(const DetId &id) const override
static DetId detIdFromBarrelAlignmentIndex(unsigned int i)
const std::vector< DetId > & getValidDetIds(DetId::Detector det=DetId::Detector(0), int subdet=0) const override
Get a list of valid detector ids (for the given subdetector)
unsigned int numberOfParametersPerShape() const override
const HcalTopology & m_topology
static unsigned int numberOfOuterAlignments()
edm::AtomicPtrCache< std::vector< DetId > > m_emptyIds
CaloCellGeometry::Pt3D Pt3D
GlobalPoint getBackPosition(const DetId &id) const
void getSummary(CaloSubdetectorGeometry::TrVec &trVector, CaloSubdetectorGeometry::IVec &iVector, CaloSubdetectorGeometry::DimVec &dimVector, CaloSubdetectorGeometry::IVec &dinsVector) const override
std::vector< IdealObliquePrism > HECellVec
static DetId detIdFromForwardAlignmentIndex(unsigned int i)
int phiBin(HcalSubdetector bc, int etaring, double phi) const
static unsigned int alignmentOuterIndexLocal(const DetId &id)
unsigned int detId2denseId(const DetId &id) const override
return a linear packed id
HepGeom::Point3D< CCGFloat > Pt3D
CaloCellGeometry::CCGFloat CCGFloat
std::shared_ptr< const CaloCellGeometry > getGeometry(const DetId &id) const override
Get the cell geometry of a given detector id. Should return false if not found.
std::vector< IdealObliquePrism > HBCellVec
GlobalPoint getPosition(const DetId &id) const
CaloCellGeometry::CornersVec getCorners(const DetId &id) const
static std::string dbString()
void newCell(const GlobalPoint &f1, const GlobalPoint &f2, const GlobalPoint &f3, const CCGFloat *parm, const DetId &detId) override
friend class HcalGeometryPlan1Tester
static unsigned int alignmentTransformIndexGlobal(const DetId &id)
static unsigned int numberOfForwardAlignments()
CaloSubdetectorGeometry::IVec m_dins
static unsigned int alignmentForwardIndexLocal(const DetId &id)
CaloSubdetectorGeometry::DetIdSet getCells(const GlobalPoint &r, double dR) const override
Get a list of all cells within a dR of the given cell.
static unsigned int alignmentBarEndForIndexLocal(const DetId &id, unsigned int nD)
HcalGeometry(const HcalTopology &topology)
edm::AtomicPtrCache< std::vector< DetId > > m_hbIds
edm::AtomicPtrCache< std::vector< DetId > > m_hoIds
static DetId detIdFromLocalAlignmentIndex(unsigned int i)
unsigned int getNumberOfShapes() const
static unsigned int numberOfEndcapAlignments()
void localCorners(Pt3DVec &lc, const CCGFloat *pv, unsigned int i, Pt3D &ref)
unsigned int getHxSize(const int type) const
unsigned int ncells() const override
return a count of valid cells (for dense indexing use)
int etaRing(HcalSubdetector bc, double abseta) const
helper methods for getClosestCell
HcalGeometryRecord AlignedRecord
CaloCellGeometry::Pt3DVec Pt3DVec
const HcalTopology & topology() const
std::vector< IdealZPrism > HFCellVec
~HcalGeometry() override
The HcalGeometry will delete all its cell geometries at destruction time.
std::shared_ptr< const CaloCellGeometry > getGeometryBase(const DetId &id) const
virtual std::shared_ptr< const CaloCellGeometry > cellGeomPtr(uint32_t index) const
edm::AtomicPtrCache< std::vector< DetId > > m_heIds
static DetId detIdFromOuterAlignmentIndex(unsigned int i)
edm::AtomicPtrCache< std::vector< DetId > > m_hfIds
DetId correctId(const DetId &id) const
unsigned int numberOfShapes() const override
static DetId detIdFromEndcapAlignmentIndex(unsigned int i)
DetId getClosestCell(const GlobalPoint &r) const override