16 m_ownsTopology (
true ),
17 m_cellVec ( k_NumberOfCellsForCorners )
21 theTopology(topology),
24 m_ownsTopology (
false ),
25 m_cellVec ( k_NumberOfCellsForCorners )
37 DetId returnId ( 0 ) ;
39 for( std::vector<DetId>::const_iterator it ( detIds.begin() ) ;
40 it != detIds.end(); ++it )
102 0 == cell->
param() ? 0 : cell ) ;
virtual ~CastorGeometry()
static unsigned int alignmentTransformIndexLocal(const DetId &id)
std::vector< Pt3D > Pt3DVec
CaloCellGeometry::CCGFloat CCGFloat
virtual const CaloCellGeometry * cellGeomPtr(uint32_t index) 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 const CaloCellGeometry * getGeometry(const DetId &id) const
Get the cell geometry of a given detector id. Should return false if not found.
const CCGFloat * param() const
const CastorTopology * theTopology
virtual void newCell(const GlobalPoint &f1, const GlobalPoint &f2, const GlobalPoint &f3, const CCGFloat *parm, const DetId &detId)
std::vector< DetId > m_validIds
CaloCellGeometry::CCGFloat CCGFloat
uint32_t denseIndex() const
CaloCellGeometry::Pt3D Pt3D
CaloCellGeometry::Pt3DVec Pt3DVec
bool inside(const GlobalPoint &point) const
Returns true if the specified point is inside this cell.
CaloCellGeometry::CornersMgr * cornersMgr()
CaloCellGeometry::Pt3DVec Pt3DVec
HepGeom::Point3D< CCGFloat > Pt3D
CaloCellGeometry::Pt3D Pt3D
static void localCorners(Pt3DVec &lc, const CCGFloat *pv, unsigned int i, Pt3D &ref)
static unsigned int alignmentTransformIndexGlobal(const DetId &id)
static void localCorners(Pt3DVec &vec, const CCGFloat *pv, Pt3D &ref)
virtual DetId getClosestCell(const GlobalPoint &r) const