CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Types | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes
FlatTrd Class Referencefinal

A base class to handle the particular shape of HGCal volumes. More...

#include <FlatTrd.h>

Inheritance diagram for FlatTrd:
CaloCellGeometry

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< GlobalPointCornersMgr
 
typedef EZArrayFL< GlobalPointCornersVec
 
typedef EZMgrFL< CCGFloatParMgr
 
typedef EZArrayFL< CCGFloatParVec
 
typedef std::vector< ParVecParVecVec
 
typedef HepGeom::Point3D
< CCGFloat
Pt3D
 
typedef std::vector< Pt3DPt3DVec
 
using RepCorners = std::array< RhoEtaPhi, k_cornerSize >
 
typedef HepGeom::Transform3D Tr3D
 

Public Member Functions

const GlobalVectoraxis () const
 
virtual float etaPos () const
 
 FlatTrd (void)
 
 FlatTrd (const FlatTrd &tr)
 
 FlatTrd (CornersMgr *cMgr, const GlobalPoint &fCtr, const GlobalPoint &bCtr, const GlobalPoint &cor1, const CCGFloat *parV)
 
 FlatTrd (const CornersVec &corn, const CCGFloat *par)
 
 FlatTrd (const FlatTrd &tr, const Pt3D &local)
 
Pt3D getLocal (const GlobalPoint &global) const
 
CCGFloat getPhiAxis () const
 
virtual const GlobalPointgetPosition () const
 
GlobalPoint getPosition (const Pt3D &local) const
 
CCGFloat getThetaAxis () const
 
virtual void getTransform (Tr3D &tr, Pt3DVec *lptr) const override
 --------— only needed by specific utility; overloaded when needed -— More...
 
FlatTrdoperator= (const FlatTrd &tr)
 
virtual float phiPos () const
 
virtual void vocalCorners (Pt3DVec &vec, const CCGFloat *pv, Pt3D &ref) const override
 
virtual ~FlatTrd ()
 
- Public Member Functions inherited from CaloCellGeometry
bool emptyCorners () const
 
float etaPos () const
 
float etaSpan () const
 
const GlobalPointgetBackPoint () const
 
CornersVec const & getCorners () const
 Returns the corner points of this cell's volume. More...
 
RepCorners const & getCornersREP () const
 
const GlobalPointgetPosition () 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 CCGFloatparam () const
 
float phiPos () const
 
float phiSpan () const
 
RhoEtaPhi const & repPos () const
 
float rhoPos () 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 Public Member Functions inherited from CaloCellGeometry
static const CCGFloatcheckParmPtr (const std::vector< CCGFloat > &vd, ParVecVec &pvv)
 
static const CCGFloatgetParmPtr (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
 
GlobalPoint m_global
 
Pt3D m_local
 
Tr3D m_tr
 

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 ()
 

Detailed Description

A base class to handle the particular shape of HGCal volumes.

Definition at line 19 of file FlatTrd.h.

Member Typedef Documentation

Definition at line 22 of file FlatTrd.h.

Definition at line 23 of file FlatTrd.h.

Definition at line 24 of file FlatTrd.h.

Definition at line 25 of file FlatTrd.h.

Constructor & Destructor Documentation

FlatTrd::FlatTrd ( void  )

Definition at line 22 of file FlatTrd.cc.

FlatTrd::FlatTrd ( const FlatTrd tr)

Definition at line 27 of file FlatTrd.cc.

FlatTrd::FlatTrd ( CornersMgr cMgr,
const GlobalPoint fCtr,
const GlobalPoint bCtr,
const GlobalPoint cor1,
const CCGFloat parV 
)

Definition at line 48 of file FlatTrd.cc.

FlatTrd::FlatTrd ( const CornersVec corn,
const CCGFloat par 
)

Definition at line 68 of file FlatTrd.cc.

FlatTrd::FlatTrd ( const FlatTrd tr,
const Pt3D local 
)

Definition at line 84 of file FlatTrd.cc.

FlatTrd::~FlatTrd ( )
virtual

Definition at line 96 of file FlatTrd.cc.

Member Function Documentation

const GlobalVector & FlatTrd::axis ( ) const

Definition at line 126 of file FlatTrd.cc.

const GlobalPoint FlatTrd::backCtr ( void  ) const
private

Definition at line 254 of file FlatTrd.cc.

void FlatTrd::createCorners ( const std::vector< CCGFloat > &  pv,
const Tr3D tr,
std::vector< GlobalPoint > &  co 
)
static

Definition at line 136 of file FlatTrd.cc.

Referenced by CaloGeometryDBEP< T, U >::produceAligned().

virtual float FlatTrd::etaPos ( ) const
inlinevirtual

Definition at line 48 of file FlatTrd.h.

References PV3DBase< T, PVType, FrameType >::eta(), and m_global.

48 { return m_global.eta(); }
T eta() const
Definition: PV3DBase.h:76
GlobalPoint m_global
Definition: FlatTrd.h:83
Pt3D FlatTrd::getLocal ( const GlobalPoint global) const

Definition at line 108 of file FlatTrd.cc.

CCGFloat FlatTrd::getPhiAxis ( ) const

Definition at line 122 of file FlatTrd.cc.

virtual const GlobalPoint& FlatTrd::getPosition ( ) const
inlinevirtual

Definition at line 46 of file FlatTrd.h.

References m_global.

46 { return m_global; }
GlobalPoint m_global
Definition: FlatTrd.h:83
GlobalPoint FlatTrd::getPosition ( const Pt3D local) const

Definition at line 98 of file FlatTrd.cc.

CCGFloat FlatTrd::getThetaAxis ( ) const

Definition at line 118 of file FlatTrd.cc.

void FlatTrd::getTransform ( Tr3D tr,
Pt3DVec lptr 
) const
overridevirtual

--------— only needed by specific utility; overloaded when needed -—

Reimplemented from CaloCellGeometry.

Definition at line 190 of file FlatTrd.cc.

void FlatTrd::initCorners ( CaloCellGeometry::CornersVec co)
overrideprivatevirtual

Implements CaloCellGeometry.

Definition at line 235 of file FlatTrd.cc.

void FlatTrd::localCorners ( Pt3DVec vec,
const CCGFloat pv,
Pt3D ref 
)
static

Definition at line 159 of file FlatTrd.cc.

GlobalVector FlatTrd::makeAxis ( void  )
private

Definition at line 250 of file FlatTrd.cc.

FlatTrd & FlatTrd::operator= ( const FlatTrd tr)

Definition at line 31 of file FlatTrd.cc.

virtual float FlatTrd::phiPos ( ) const
inlinevirtual

Definition at line 49 of file FlatTrd.h.

References m_global, and PV3DBase< T, PVType, FrameType >::phi().

49 { return m_global.phi(); }
Geom::Phi< T > phi() const
Definition: PV3DBase.h:69
GlobalPoint m_global
Definition: FlatTrd.h:83
void FlatTrd::vocalCorners ( Pt3DVec vec,
const CCGFloat pv,
Pt3D ref 
) const
overridevirtual

Implements CaloCellGeometry.

Definition at line 130 of file FlatTrd.cc.

Member Data Documentation

GlobalVector FlatTrd::m_axis
private

Definition at line 81 of file FlatTrd.h.

Pt3D FlatTrd::m_corOne
private

Definition at line 82 of file FlatTrd.h.

GlobalPoint FlatTrd::m_global
private

Definition at line 83 of file FlatTrd.h.

Referenced by etaPos(), getPosition(), and phiPos().

Pt3D FlatTrd::m_local
private

Definition at line 82 of file FlatTrd.h.

Tr3D FlatTrd::m_tr
private

Definition at line 84 of file FlatTrd.h.