10 m_hbCellVec ( topo.getHBSize() ) ,
11 m_heCellVec ( topo.getHESize() ) ,
12 m_hoCellVec ( topo.getHOSize() ) ,
13 m_hfCellVec ( topo.getHFSize() )
25 for(
unsigned int i ( 0 ) ;
i != baseIds.size() ; ++
i )
27 const DetId id ( baseIds[
i] );
62 std::vector<DetId>
const &
83 double abseta = fabs(r.
eta());
85 if (phi < 0) phi += twopi;
87 double z = fabs(r.
z());
89 LogDebug(
"HCalGeom") <<
"HcalDDDGeometry::getClosestCell for eta "
90 << r.
eta() <<
" phi " << phi/deg <<
" z " << r.
z()
104 phibin =
static_cast<int>(((phi/deg)+
hcalCells_[
i].phiOffset()+
107 if (phibin == 0) phibin =
hcalCells_[
i].nPhiBins();
108 phibin = phibin*4 - 1;
110 phibin =
static_cast<int>(((phi/deg)+
hcalCells_[
i].phiOffset())/
117 int etabin = (r.
z() > 0) ? etaring : -etaring;
119 bestId =
HcalDetId(bc, etabin, phibin, dbin);
126 bestId =
HcalDetId(bc, etabin, phibin, dbin);
134 LogDebug(
"HCalGeom") <<
"HcalDDDGeometry::getClosestCell " << bestId;
144 for (
unsigned int i=0;
i<cells.size();
i++) {
148 LogDebug(
"HCalGeom") <<
"HcalDDDGeometry::insertCell " << cells.size()
149 <<
" cells inserted == Total " << num
223 const unsigned int index ( din
235 const unsigned int index ( din
244 return ( 0 == cell || 0 == cell->
param() ? 0 : cell ) ;
virtual unsigned int detId2denseId(const DetId &id) const
return a linear packed id
virtual const CaloCellGeometry * cellGeomPtr(uint32_t index) const
std::vector< DetId > m_hfIds
std::vector< DetId > m_heIds
Geom::Phi< T > phi() const
virtual void newCell(const GlobalPoint &f1, const GlobalPoint &f2, const GlobalPoint &f3, const CCGFloat *parm, const DetId &detId)
CaloCellGeometry::CCGFloat CCGFloat
virtual ~HcalDDDGeometry()
The HcalDDDGeometry will delete all its cell geometries at destruction time.
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)
const HcalTopology & topo_
const CCGFloat * param() const
int insertCell(std::vector< HcalCellType > const &)
HcalDDDGeometry(const HcalTopology &theTopo)
std::vector< HcalCellType > hcalCells_
std::vector< DetId > m_hbIds
std::vector< DetId > m_emptyIds
void addValidID(const DetId &id)
CaloCellGeometry::CornersMgr * cornersMgr()
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 DetId getClosestCell(const GlobalPoint &r) const
Detector det() const
get the detector field from this detid
std::vector< DetId > m_hoIds