44 int subdet = 0 )
const;
95 const DetId& detId ) ;
120 int phiBin(
double phi,
int etaring)
const;
static unsigned int numberOfBarrelAlignments()
std::vector< DetId > m_heIds
virtual void newCell(const GlobalPoint &f1, const GlobalPoint &f2, const GlobalPoint &f3, const CCGFloat *parm, const DetId &detId)
virtual DetId getClosestCell(const GlobalPoint &r) const
std::set< DetId > DetIdSet
static unsigned int alignmentTransformIndexLocal(const DetId &id)
virtual unsigned int detId2denseId(const DetId &id) const
return a linear packed id
std::vector< CCGFloat > DimVec
static unsigned int alignmentEndcapIndexLocal(const DetId &id)
std::vector< DetId > m_emptyIds
virtual void getSummary(CaloSubdetectorGeometry::TrVec &trVector, CaloSubdetectorGeometry::IVec &iVector, CaloSubdetectorGeometry::DimVec &dimVector, CaloSubdetectorGeometry::IVec &dinsVector) const
static DetId detIdFromOuterAlignmentIndex(unsigned int i)
static std::string producerTag()
std::vector< unsigned int > IVec
std::vector< CCGFloat > TrVec
virtual const CaloCellGeometry * getGeometry(const DetId &id) const
Get the cell geometry of a given detector id. Should return false if not found.
HcalAlignmentRcd AlignmentRecord
std::vector< IdealObliquePrism > HECellVec
std::vector< Pt3D > Pt3DVec
virtual unsigned int numberOfParametersPerShape() 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)
virtual CaloSubdetectorGeometry::DetIdSet getCells(const GlobalPoint &r, double dR) const
Get a list of all cells within a dR of the given cell.
const HcalTopology & theTopology
std::vector< DetId > m_hbIds
CaloCellGeometry::Pt3DVec Pt3DVec
std::vector< DetId > m_hoIds
unsigned int getNumberOfShapes() const
std::vector< IdealObliquePrism > HOCellVec
static unsigned int numberOfOuterAlignments()
static DetId detIdFromForwardAlignmentIndex(unsigned int i)
static unsigned int alignmentTransformIndexGlobal(const DetId &id)
static unsigned int alignmentBarrelIndexLocal(const DetId &id)
virtual unsigned int sizeForDenseIndex(const DetId &id) const
CaloCellGeometry::CCGFloat CCGFloat
static DetId detIdFromBarrelAlignmentIndex(unsigned int i)
std::vector< DetId > m_hfIds
static DetId detIdFromLocalAlignmentIndex(unsigned int i)
int etaRing(HcalSubdetector bc, double abseta) const
helper methods for getClosestCell
CaloSubdetectorGeometry::IVec m_dins
HcalGeometry(const HcalTopology &topology)
HcalGeometryRecord AlignedRecord
void localCorners(Pt3DVec &lc, const CCGFloat *pv, unsigned int i, Pt3D &ref)
static unsigned int alignmentOuterIndexLocal(const DetId &id)
CaloCellGeometry::Pt3D Pt3D
std::vector< IdealZPrism > HFCellVec
static unsigned int numberOfEndcapAlignments()
static std::string dbString()
virtual ~HcalGeometry()
The HcalGeometry will delete all its cell geometries at destruction time.
CaloCellGeometry::CCGFloat CCGFloat
CaloCellGeometry::Pt3DVec Pt3DVec
HepGeom::Point3D< CCGFloat > Pt3D
std::vector< IdealObliquePrism > HBCellVec
virtual const CaloCellGeometry * cellGeomPtr(unsigned int index) const
virtual unsigned int indexFor(const DetId &id) const
virtual unsigned int numberOfShapes() const
static unsigned int numberOfForwardAlignments()
static unsigned int alignmentForwardIndexLocal(const DetId &id)
static DetId detIdFromEndcapAlignmentIndex(unsigned int i)
static unsigned int alignmentBarEndForIndexLocal(const DetId &id, unsigned int nD)
CaloCellGeometry::Pt3D Pt3D
int phiBin(double phi, int etaring) const
static unsigned int numberOfAlignments()
virtual unsigned int ncells() const
return a count of valid cells (for dense indexing use)