#include <IdealZPrism.h>
Public Types | |
typedef CaloCellGeometry::CCGFloat | CCGFloat |
enum | DEPTH { None, EM, HADR } |
typedef CaloCellGeometry::Pt3D | Pt3D |
typedef CaloCellGeometry::Pt3DVec | Pt3DVec |
Public Types inherited from CaloCellGeometry | |
typedef float | CCGFloat |
typedef EZMgrFL< GlobalPoint > | CornersMgr |
typedef EZArrayFL< GlobalPoint > | CornersVec |
typedef EZMgrFL< CCGFloat > | ParMgr |
typedef EZArrayFL< CCGFloat > | ParVec |
typedef std::vector< ParVec > | ParVecVec |
typedef HepGeom::Point3D< CCGFloat > | Pt3D |
typedef std::vector< Pt3D > | Pt3DVec |
using | RepCorners = std::array< RhoEtaPhi, k_cornerSize > |
typedef HepGeom::Transform3D | Tr3D |
Public Member Functions | |
CCGFloat | dEta () const |
CCGFloat | dPhi () const |
CCGFloat | dz () const |
CCGFloat | eta () const |
IdealZPrism const * | forPF () const |
IdealZPrism () | |
IdealZPrism (const IdealZPrism &idzp) | |
IdealZPrism (const GlobalPoint &faceCenter, CornersMgr *mgr, const CCGFloat *parm, IdealZPrism::DEPTH depth) | |
IdealZPrism & | operator= (const IdealZPrism &idzp) |
virtual void | vocalCorners (Pt3DVec &vec, const CCGFloat *pv, Pt3D &ref) const override |
CCGFloat | z () const |
virtual | ~IdealZPrism () |
Public Member Functions inherited from CaloCellGeometry | |
bool | emptyCorners () const |
float | etaPos () const |
float | etaSpan () const |
const GlobalPoint & | getBackPoint () const |
CornersVec const & | getCorners () const |
Returns the corner points of this cell's volume. More... | |
RepCorners const & | getCornersREP () const |
const GlobalPoint & | getPosition () const |
Returns the position of reference for this cell. More... | |
virtual void | getTransform (Tr3D &tr, Pt3DVec *lptr) const |
--------— only needed by specific utility; overloaded when needed -— More... | |
bool | inside (const GlobalPoint &point) const |
Returns true if the specified point is inside this cell. More... | |
const CCGFloat * | param () const |
float | phiPos () const |
float | phiSpan () const |
RhoEtaPhi const & | repPos () const |
float | rhoPos () const |
virtual | ~CaloCellGeometry () |
Static Public Member Functions | |
static void | localCorners (Pt3DVec &vec, const CCGFloat *pv, Pt3D &ref) |
Static Public Member Functions inherited from CaloCellGeometry | |
static const CCGFloat * | checkParmPtr (const std::vector< CCGFloat > &vd, ParVecVec &pvv) |
static const CCGFloat * | getParmPtr (const std::vector< CCGFloat > &vd, ParMgr *mgr, ParVecVec &pvv) |
Private Member Functions | |
virtual void | initCorners (CornersVec &) override |
Static Private Member Functions | |
static GlobalPoint | etaPhiPerp (float eta, float phi, float perp) |
static GlobalPoint | etaPhiR (float eta, float phi, float rad) |
static GlobalPoint | etaPhiZ (float eta, float phi, float z) |
Private Attributes | |
std::unique_ptr< IdealZPrism > | m_geoForPF |
Additional Inherited Members | |
Static Public Attributes inherited from CaloCellGeometry | |
static constexpr unsigned int | k_cornerSize = 8 |
static const CCGFloat | k_ScaleFromDDDtoGeant |
Protected Member Functions inherited from CaloCellGeometry | |
CaloCellGeometry (CornersVec::const_reference gp, CornersMgr *mgr, const CCGFloat *par) | |
CaloCellGeometry (const CornersVec &cv, const CCGFloat *par) | |
CaloCellGeometry (void) | |
void | initSpan () |
Prism class used for HF volumes. HF volumes are prisms with axes along the Z direction whose face shapes are set by
Required parameters for an ideal Z prism:
Total: 6 parameters
Internally, the "point of reference" is the center (eta/phi) of the front face of the prism. Therefore, the only internally stored parameters are eta and phi HALF-widths and the tower z thickness.
Definition at line 26 of file IdealZPrism.h.
Definition at line 32 of file IdealZPrism.h.
Definition at line 33 of file IdealZPrism.h.
Definition at line 34 of file IdealZPrism.h.
enum IdealZPrism::DEPTH |
Enumerator | |
---|---|
None | |
EM | |
HADR |
Definition at line 30 of file IdealZPrism.h.
IdealZPrism::IdealZPrism | ( | ) |
Definition at line 8 of file IdealZPrism.cc.
References constexpr, particleFlowClusterECALTimeSelected_cfi::depth, EM, particleFlowRecHitHF_cfi::EMDepthCorrection, particleFlowRecHitHF_cfi::HADDepthCorrection, None, and PV3DBase< T, PVType, FrameType >::z().
IdealZPrism::IdealZPrism | ( | const IdealZPrism & | idzp | ) |
Definition at line 26 of file IdealZPrism.cc.
References forPF(), and m_geoForPF.
IdealZPrism::IdealZPrism | ( | const GlobalPoint & | faceCenter, |
CornersMgr * | mgr, | ||
const CCGFloat * | parm, | ||
IdealZPrism::DEPTH | depth | ||
) |
Definition at line 42 of file IdealZPrism.cc.
References CaloCellGeometry::initSpan().
|
virtual |
Definition at line 50 of file IdealZPrism.cc.
CCGFloat IdealZPrism::dEta | ( | ) | const |
Definition at line 54 of file IdealZPrism.cc.
References CaloCellGeometry::param().
Referenced by initCorners(), localCorners(), and operator<<().
CCGFloat IdealZPrism::dPhi | ( | ) | const |
Definition at line 60 of file IdealZPrism.cc.
References CaloCellGeometry::param().
Referenced by initCorners(), localCorners(), and operator<<().
CCGFloat IdealZPrism::dz | ( | ) | const |
Definition at line 66 of file IdealZPrism.cc.
References CaloCellGeometry::param().
Referenced by Electron.Electron::cutBasedId(), initCorners(), localCorners(), and operator<<().
CCGFloat IdealZPrism::eta | ( | void | ) | const |
Definition at line 72 of file IdealZPrism.cc.
References CaloCellGeometry::param().
Referenced by Particle.Particle::__str__(), forPF(), initCorners(), Jet.Jet::jetID(), localCorners(), and Jet.Jet::puJetId().
|
staticprivate |
|
staticprivate |
|
staticprivate |
Definition at line 112 of file IdealZPrism.cc.
Referenced by forPF(), initCorners(), and localCorners().
|
inline |
Definition at line 67 of file IdealZPrism.h.
References eta(), etaPhiPerp(), etaPhiR(), etaPhiZ(), initCorners(), m_geoForPF, perp(), phi, and z().
Referenced by IdealZPrism(), and operator=().
|
overrideprivatevirtual |
Implements CaloCellGeometry.
Definition at line 159 of file IdealZPrism.cc.
References dEta(), dPhi(), dz(), eta(), PV3DBase< T, PVType, FrameType >::eta(), etaPhiZ(), CaloCellGeometry::getPosition(), AlCaHLTBitMon_ParallelJobs::p, phi, PV3DBase< T, PVType, FrameType >::phi(), EZArrayFL< T >::uninitialized(), x, y, and PV3DBase< T, PVType, FrameType >::z().
Referenced by forPF().
Definition at line 122 of file IdealZPrism.cc.
References dEta(), dPhi(), dz(), eta(), etaPhiZ(), i, PV3DBase< T, PVType, FrameType >::mag(), AlCaHLTBitMon_ParallelJobs::p, x, y, and z().
Referenced by FWTGeoRecoGeometryESProducer::addHcalCaloGeometryForward(), HcalGeometry::localCorners(), and vocalCorners().
IdealZPrism & IdealZPrism::operator= | ( | const IdealZPrism & | idzp | ) |
Definition at line 33 of file IdealZPrism.cc.
References forPF(), and m_geoForPF.
|
overridevirtual |
Implements CaloCellGeometry.
Definition at line 84 of file IdealZPrism.cc.
References localCorners().
CCGFloat IdealZPrism::z | ( | ) | const |
Definition at line 78 of file IdealZPrism.cc.
References CaloCellGeometry::param().
Referenced by forPF(), localCorners(), and geometryXMLparser.Alignable::pos().
|
private |
Definition at line 88 of file IdealZPrism.h.
Referenced by forPF(), IdealZPrism(), and operator=().