Go to the documentation of this file. 1 #ifndef GeometryCaloGeometryFlatTrd_h
2 #define GeometryCaloGeometryFlatTrd_h
5 #include <CLHEP/Geometry/Point3D.h>
6 #include <CLHEP/Geometry/Plane3D.h>
7 #include <CLHEP/Geometry/Vector3D.h>
8 #include <CLHEP/Geometry/Transform3D.h>
26 static constexpr uint32_t
k_dZ = 0;
29 static constexpr uint32_t
k_Phi = 2;
31 static constexpr uint32_t
k_dY1 = 3;
32 static constexpr uint32_t
k_dX1 = 4;
34 static constexpr uint32_t
k_dX2 = 5;
36 static constexpr uint32_t
k_Alp1 = 6;
38 static constexpr uint32_t
k_dY2 = 7;
39 static constexpr uint32_t
k_dX3 = 8;
41 static constexpr uint32_t
k_dX4 = 9;
43 static constexpr uint32_t
k_Alp2 = 10;
45 static constexpr uint32_t
k_Cell = 11;
86 static void createCorners(
const std::vector<CCGFloat>&
pv,
const Tr3D& tr, std::vector<GlobalPoint>&
co);
HepGeom::Transform3D Tr3D
std::vector< Pt3D > Pt3DVec
static void createCorners(const std::vector< CCGFloat > &pv, const Tr3D &tr, std::vector< GlobalPoint > &co)
GlobalVector makeAxis(void)
static void localCorners(Pt3DVec &vec, const CCGFloat *pv, Pt3D &ref)
A base class to handle the particular shape of HGCal volumes.
static constexpr uint32_t k_Cell
GlobalPoint const & getPosition() const override
Returns the position of reference for this cell.
CaloCellGeometry::CCGFloat CCGFloat
static constexpr uint32_t k_Phi
Pt3D getLocal(const GlobalPoint &global) const
static constexpr uint32_t k_Theta
void getTransform(Tr3D &tr, Pt3DVec *lptr) const override
--------— only needed by specific utility; overloaded when needed -—
std::ostream & operator<<(std::ostream &s, const FlatTrd &cell)
CaloCellGeometry::Pt3D Pt3D
static constexpr uint32_t k_dX1
__host__ __device__ VT * co
static constexpr uint32_t k_Alp1
static constexpr uint32_t k_dY2
static constexpr uint32_t k_dX4
CaloCellGeometry::Tr3D Tr3D
HepGeom::Point3D< CCGFloat > Pt3D
CaloCellGeometry::Tr3D Tr3D
static constexpr uint32_t k_dX3
static constexpr unsigned int ncornerBy2_
FlatTrd & operator=(const FlatTrd &tr)
const CCGFloat * param() const
float etaPos() const override
static constexpr uint32_t k_dX2
CCGFloat getPhiAxis() const
void vocalCorners(Pt3DVec &vec, const CCGFloat *pv, Pt3D &ref) const override
float phiSpan() const override
float phiPos() const override
CCGFloat getThetaAxis() const
void setRefPoint(const GlobalPoint &pos)
CaloCellGeometry::Pt3D Pt3D
const GlobalVector & axis() const
GlobalPoint backCtr(void) const
CaloCellGeometry::Pt3DVec Pt3DVec
float etaSpan() const override
static constexpr uint32_t k_Alp2
void initCorners(CornersVec &) override
CaloCellGeometry::CCGFloat CCGFloat
static constexpr unsigned int ncorner_
static constexpr uint32_t k_dY1
Geom::Phi< T > phi() const
void setPosition(const GlobalPoint &p)
static constexpr uint32_t k_dZ
CaloCellGeometry::Pt3DVec Pt3DVec