#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 |
std::shared_ptr< const IdealZPrism > | forPF () const |
IdealZPrism () | |
IdealZPrism (const IdealZPrism &idzp) | |
IdealZPrism (const GlobalPoint &faceCenter, CornersMgr *mgr, const CCGFloat *parm, IdealZPrism::DEPTH depth) | |
IdealZPrism & | operator= (const IdealZPrism &idzp) |
void | vocalCorners (Pt3DVec &vec, const CCGFloat *pv, Pt3D &ref) const override |
CCGFloat | z () const |
~IdealZPrism () override | |
Public Member Functions inherited from CaloCellGeometry | |
bool | emptyCorners () const |
virtual float | etaPos () const |
virtual float | etaSpan () const |
GlobalPoint const & | getBackPoint () const |
CornersVec const & | getCorners () const |
Returns the corner points of this cell's volume. More... | |
RepCorners const & | getCornersREP () const |
virtual const GlobalPoint & | getPosition () const |
Returns the position of reference for this cell. More... | |
virtual GlobalPoint | getPosition (CCGFloat) const |
virtual GlobalPoint | getPosition (const Pt3D &) const |
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 |
virtual float | phiPos () const |
virtual float | phiSpan () const |
RhoEtaPhi const & | repPos () const |
virtual float | rhoPos () const |
void | setBackPoint (const GlobalPoint &pos) |
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) |
Static Public Attributes | |
static constexpr uint32_t | k_dEta = 0 |
static constexpr uint32_t | k_dPhi = 1 |
static constexpr uint32_t | k_dZ = 2 |
static constexpr uint32_t | k_Eta = 3 |
static constexpr uint32_t | k_Z = 4 |
Static Public Attributes inherited from CaloCellGeometry | |
static constexpr unsigned int | k_cornerSize = 8 |
static const CCGFloat | k_ScaleFromDDDtoGeant |
Private Member Functions | |
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 | |
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 () |
void | setCornerVec (const std::vector< GlobalPoint > &cor) |
void | setRefPoint (const GlobalPoint &pos) |
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 30 of file IdealZPrism.h.
Definition at line 31 of file IdealZPrism.h.
Definition at line 32 of file IdealZPrism.h.
enum IdealZPrism::DEPTH |
Enumerator | |
---|---|
None | |
EM | |
HADR |
Definition at line 28 of file IdealZPrism.h.
IdealZPrism::IdealZPrism | ( | ) |
Definition at line 9 of file IdealZPrism.cc.
IdealZPrism::IdealZPrism | ( | const IdealZPrism & | idzp | ) |
IdealZPrism::IdealZPrism | ( | const GlobalPoint & | faceCenter, |
CornersMgr * | mgr, | ||
const CCGFloat * | parm, | ||
IdealZPrism::DEPTH | depth | ||
) |
Definition at line 41 of file IdealZPrism.cc.
References CaloCellGeometry::initSpan().
|
override |
Definition at line 47 of file IdealZPrism.cc.
CCGFloat IdealZPrism::dEta | ( | ) | const |
Definition at line 49 of file IdealZPrism.cc.
References k_dEta, and CaloCellGeometry::param().
Referenced by initCorners(), localCorners(), and operator<<().
CCGFloat IdealZPrism::dPhi | ( | ) | const |
Definition at line 51 of file IdealZPrism.cc.
References k_dPhi, and CaloCellGeometry::param().
Referenced by initCorners(), localCorners(), and operator<<().
CCGFloat IdealZPrism::dz | ( | ) | const |
Definition at line 53 of file IdealZPrism.cc.
References k_dZ, and CaloCellGeometry::param().
Referenced by Electron.Electron::cutBasedId(), ntupleDataFormat.Track::dzPull(), initCorners(), localCorners(), and operator<<().
CCGFloat IdealZPrism::eta | ( | void | ) | const |
Definition at line 55 of file IdealZPrism.cc.
References k_Eta, and CaloCellGeometry::param().
Referenced by Particle.Particle::__str__(), etaPhiPerp(), etaPhiR(), etaPhiZ(), initCorners(), Jet.Jet::jetID(), localCorners(), and Jet.Jet::puJetId().
|
staticprivate |
|
staticprivate |
Definition at line 61 of file IdealZPrism.cc.
|
staticprivate |
Definition at line 69 of file IdealZPrism.cc.
References eta(), phi, and z().
Referenced by initCorners(), and localCorners().
|
inline |
Definition at line 61 of file IdealZPrism.h.
References m_geoForPF.
Referenced by IdealZPrism(), and operator=().
|
overrideprivatevirtual |
Implements CaloCellGeometry.
Definition at line 105 of file IdealZPrism.cc.
References cms::cuda::co, dEta(), dPhi(), dz(), eta(), etaPhiZ(), CaloCellGeometry::getPosition(), AlCaHLTBitMon_ParallelJobs::p, phi, x, and y.
Definition at line 73 of file IdealZPrism.cc.
References cms::cuda::assert(), dEta(), dPhi(), dz(), eta(), etaPhiZ(), mps_fire::i, k_dEta, k_dPhi, k_dZ, k_Eta, k_Z, AlCaHLTBitMon_ParallelJobs::p, MetAnalyzer::pv(), x, y, and z().
Referenced by FWTGeoRecoGeometryESProducer::addHcalCaloGeometryForward(), HcalGeometry::localCorners(), and vocalCorners().
IdealZPrism & IdealZPrism::operator= | ( | const IdealZPrism & | idzp | ) |
|
overridevirtual |
Implements CaloCellGeometry.
Definition at line 59 of file IdealZPrism.cc.
References localCorners(), and MetAnalyzer::pv().
CCGFloat IdealZPrism::z | ( | ) | const |
Definition at line 57 of file IdealZPrism.cc.
References k_Z, and CaloCellGeometry::param().
Referenced by etaPhiZ(), localCorners(), geometryXMLparser.Alignable::pos(), and ntupleDataFormat._HitObject::r3D().
|
static |
Definition at line 34 of file IdealZPrism.h.
Referenced by dEta(), and localCorners().
|
static |
Definition at line 35 of file IdealZPrism.h.
Referenced by dPhi(), and localCorners().
|
static |
Definition at line 36 of file IdealZPrism.h.
Referenced by dz(), and localCorners().
|
static |
Definition at line 37 of file IdealZPrism.h.
Referenced by eta(), and localCorners().
|
static |
Definition at line 38 of file IdealZPrism.h.
Referenced by localCorners(), and z().
|
private |
Definition at line 78 of file IdealZPrism.h.
Referenced by forPF(), IdealZPrism(), and operator=().