CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
CaloTowerGeometry.h
Go to the documentation of this file.
1 #ifndef GEOMETRY_HCALTOWERALGO_CALOTOWERGEOMETRY_H
2 #define GEOMETRY_HCALTOWERALGO_CALOTOWERGEOMETRY_H 1
3 
7 //#include "CondFormats/AlignmentRecord/interface/CaloTowerAlignmentRcd.h"
9 
19 {
20  public:
21 
22  typedef std::vector<IdealObliquePrism> CellVec ;
23 
27 
32 
34 
35  enum { k_NumberOfShapes = 41 } ;
36 
38 
39  static std::string dbString() { return "PCaloTowerRcd" ; }
40 
41  virtual unsigned int numberOfShapes() const { return k_NumberOfShapes ; }
42  virtual unsigned int numberOfParametersPerShape() const { return k_NumberOfParametersPerShape ; }
43 
44 
46  virtual ~CaloTowerGeometry();
47 
48  static std::string producerTag() { return "TOWER" ; }
49 
50  static unsigned int numberOfAlignments() { return 0 ; }
51 
52  static unsigned int alignmentTransformIndexLocal( const DetId& id ) ;
53 
54  static unsigned int alignmentTransformIndexGlobal( const DetId& id ) ;
55 
56  static void localCorners( Pt3DVec& lc ,
57  const CCGFloat* pv ,
58  unsigned int i ,
59  Pt3D& ref ) ;
60 
61  virtual void newCell( const GlobalPoint& f1 ,
62  const GlobalPoint& f2 ,
63  const GlobalPoint& f3 ,
64  const CCGFloat* parm,
65  const DetId& detId ) ;
66  protected:
67 
68  virtual const CaloCellGeometry* cellGeomPtr( uint32_t index ) const ;
69 
70  private:
71 
73 };
74 
75 #endif
int i
Definition: DBlmapReader.cc:9
CaloTowerDetId DetIdType
CaloTowerGeometryRecord AlignedRecord
CaloTowerAlignmentRcd AlignmentRecord
virtual void newCell(const GlobalPoint &f1, const GlobalPoint &f2, const GlobalPoint &f3, const CCGFloat *parm, const DetId &detId)
std::vector< Pt3D > Pt3DVec
static unsigned int alignmentTransformIndexLocal(const DetId &id)
static std::string producerTag()
virtual unsigned int numberOfParametersPerShape() const
CaloCellGeometry::CCGFloat CCGFloat
CaloCellGeometry::Pt3D Pt3D
static std::string dbString()
CaloCellGeometry::CCGFloat CCGFloat
static unsigned int alignmentTransformIndexGlobal(const DetId &id)
CaloCellGeometry::Pt3D Pt3D
static void localCorners(Pt3DVec &lc, const CCGFloat *pv, unsigned int i, Pt3D &ref)
Definition: DetId.h:20
CaloCellGeometry::Pt3DVec Pt3DVec
HepGeom::Point3D< CCGFloat > Pt3D
std::vector< IdealObliquePrism > CellVec
virtual unsigned int numberOfShapes() const
virtual ~CaloTowerGeometry()
CaloCellGeometry::Pt3DVec Pt3DVec
PCaloTowerRcd PGeometryRecord
virtual const CaloCellGeometry * cellGeomPtr(uint32_t index) const
static unsigned int numberOfAlignments()