A base class to handle the particular shape of Ecal Xtals. Taken from ORCA Calorimetry Code. More...
#include <TruncatedPyramid.h>
Public Types | |
typedef CaloCellGeometry::CCGFloat | CCGFloat |
typedef CaloCellGeometry::Pt3D | Pt3D |
typedef CaloCellGeometry::Pt3DVec | Pt3DVec |
typedef CaloCellGeometry::Tr3D | Tr3D |
Public Types inherited from CaloCellGeometry | |
typedef float | CCGFloat |
typedef EZMgrFL< GlobalPoint > | CornersMgr |
enum | CornersSize { k_cornerSize = 8 } |
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 |
typedef HepGeom::Transform3D | Tr3D |
Public Member Functions | |
const GlobalVector & | axis () const |
CCGFloat | getPhiAxis () const |
const GlobalPoint | getPosition (CCGFloat depth) const |
CCGFloat | getThetaAxis () const |
virtual void | getTransform (Tr3D &tr, Pt3DVec *lptr) const override |
--------— only needed by specific utility; overloaded when needed -— More... | |
TruncatedPyramid & | operator= (const TruncatedPyramid &tr) |
TruncatedPyramid (void) | |
TruncatedPyramid (const TruncatedPyramid &tr) | |
TruncatedPyramid (CornersMgr *cMgr, const GlobalPoint &fCtr, const GlobalPoint &bCtr, const GlobalPoint &cor1, const CCGFloat *parV) | |
TruncatedPyramid (const CornersVec &corn, const CCGFloat *par) | |
virtual void | vocalCorners (Pt3DVec &vec, const CCGFloat *pv, Pt3D &ref) const override |
virtual | ~TruncatedPyramid () |
Public Member Functions inherited from CaloCellGeometry | |
bool | emptyCorners () const |
float | etaPos () const |
float | etaSpan () const |
const GlobalPoint & | getBackPoint () const |
const CornersVec & | getCorners () const |
Returns the corner points of this cell's volume. More... | |
const GlobalPoint & | getPosition () const |
Returns the position of reference for this cell. 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 |
virtual | ~CaloCellGeometry () |
Static Public Member Functions | |
static void | createCorners (const std::vector< CCGFloat > &pv, const Tr3D &tr, std::vector< GlobalPoint > &co) |
static void | localCorners (Pt3DVec &vec, const CCGFloat *pv, Pt3D &ref) |
static void | localCornersReflection (Pt3DVec &vec, const CCGFloat *pv, Pt3D &ref) |
static void | localCornersSwap (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 | |
const GlobalPoint | backCtr (void) const |
virtual void | initCorners (CornersVec &) override |
GlobalVector | makeAxis (void) |
Private Attributes | |
GlobalVector | m_axis |
Pt3D | m_corOne |
Additional Inherited Members | |
Static Public Attributes inherited from CaloCellGeometry | |
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 () |
A base class to handle the particular shape of Ecal Xtals. Taken from ORCA Calorimetry Code.
Definition at line 19 of file TruncatedPyramid.h.
Definition at line 22 of file TruncatedPyramid.h.
Definition at line 23 of file TruncatedPyramid.h.
Definition at line 24 of file TruncatedPyramid.h.
Definition at line 25 of file TruncatedPyramid.h.
TruncatedPyramid::TruncatedPyramid | ( | void | ) |
Definition at line 20 of file TruncatedPyramid.cc.
TruncatedPyramid::TruncatedPyramid | ( | const TruncatedPyramid & | tr | ) |
Definition at line 26 of file TruncatedPyramid.cc.
TruncatedPyramid::TruncatedPyramid | ( | CornersMgr * | cMgr, |
const GlobalPoint & | fCtr, | ||
const GlobalPoint & | bCtr, | ||
const GlobalPoint & | cor1, | ||
const CCGFloat * | parV | ||
) |
TruncatedPyramid::TruncatedPyramid | ( | const CornersVec & | corn, |
const CCGFloat * | par | ||
) |
|
virtual |
Definition at line 61 of file TruncatedPyramid.cc.
const GlobalVector & TruncatedPyramid::axis | ( | ) | const |
|
private |
Definition at line 104 of file TruncatedPyramid.cc.
References CaloCellGeometry::getCorners(), x, y, and z.
Referenced by makeAxis().
|
static |
Definition at line 315 of file TruncatedPyramid.cc.
References assert(), filterCSVwithJSON::copy, cross(), dot(), i, localCorners(), AlCaHLTBitMon_ParallelJobs::p, truncPyr::refl(), tmp, x, y, and z.
CCGFloat TruncatedPyramid::getPhiAxis | ( | ) | const |
Definition at line 77 of file TruncatedPyramid.cc.
References m_axis, and PV3DBase< T, PVType, FrameType >::phi().
Referenced by EcalClusterLocal::localCoordsEB(), EcalClusterLocal::localCoordsEE(), and operator<<().
const GlobalPoint TruncatedPyramid::getPosition | ( | CCGFloat | depth | ) | const |
Definition at line 65 of file TruncatedPyramid.cc.
References CaloCellGeometry::getPosition(), and m_axis.
Referenced by EcalSimple2007H4TBAnalyzer::analyze(), PFEcalRecHitCreatorMaxSample< Geometry, Layer, Detector >::importRecHits(), PFEcalRecHitCreator< Geometry, Layer, Detector >::importRecHits(), EcalClusterLocal::localCoordsEB(), and EcalClusterLocal::localCoordsEE().
CCGFloat TruncatedPyramid::getThetaAxis | ( | ) | const |
Definition at line 71 of file TruncatedPyramid.cc.
References m_axis, and PV3DBase< T, PVType, FrameType >::theta().
Referenced by EcalClusterLocal::localCoordsEB(), EcalClusterLocal::localCoordsEE(), and operator<<().
--------— only needed by specific utility; overloaded when needed -—
Reimplemented from CaloCellGeometry.
Definition at line 115 of file TruncatedPyramid.cc.
References angle(), assert(), axis(), alignCSCRings::e, CaloCellGeometry::getPosition(), localCorners(), localCornersReflection(), localCornersSwap(), m_corOne, mag(), AlCaHLTBitMon_ParallelJobs::p, CaloCellGeometry::param(), csvLumiCalc::unit, x, PV3DBase< T, PVType, FrameType >::x(), y, PV3DBase< T, PVType, FrameType >::y(), z, and PV3DBase< T, PVType, FrameType >::z().
Referenced by initCorners().
|
overrideprivatevirtual |
Implements CaloCellGeometry.
Definition at line 186 of file TruncatedPyramid.cc.
References getTransform(), i, and EZArrayFL< T >::uninitialized().
Definition at line 246 of file TruncatedPyramid.cc.
References assert(), funct::cos(), funct::sin(), reco::t2, and funct::tan().
Referenced by createCorners(), getTransform(), EcalEndcapGeometry::localCorners(), localCornersReflection(), localCornersSwap(), makeEcalShape(), and vocalCorners().
|
static |
Definition at line 212 of file TruncatedPyramid.cc.
References localCorners(), truncPyr::refl(), and tmp.
Referenced by getTransform(), and EcalBarrelGeometry::localCorners().
Definition at line 287 of file TruncatedPyramid.cc.
References localCorners(), and tmp.
Referenced by getTransform(), and EcalBarrelGeometry::localCorners().
|
private |
Definition at line 97 of file TruncatedPyramid.cc.
References backCtr(), CaloCellGeometry::getPosition(), and Vector3DBase< T, FrameTag >::unit().
TruncatedPyramid & TruncatedPyramid::operator= | ( | const TruncatedPyramid & | tr | ) |
|
overridevirtual |
Implements CaloCellGeometry.
Definition at line 89 of file TruncatedPyramid.cc.
References localCorners().
|
private |
Definition at line 83 of file TruncatedPyramid.h.
Referenced by axis(), getPhiAxis(), getPosition(), getThetaAxis(), and operator=().
|
private |
Definition at line 84 of file TruncatedPyramid.h.
Referenced by getTransform(), and operator=().