CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
ZdcGeometry.h
Go to the documentation of this file.
1 #ifndef Geometry_ForwardGeometry_ZdcGeometry_h
2 #define Geometry_ForwardGeometry_ZDcGeometry_h
3 
10 
12 {
13  public:
14 
19 
21 
22  enum { k_NumberOfShapes = 3 } ;
23 
25 
26  static std::string dbString() { return "PZdcRcd" ; }
27 
28  virtual unsigned int numberOfShapes() const { return k_NumberOfShapes ; }
29  virtual unsigned int numberOfParametersPerShape() const { return k_NumberOfParametersPerShape ; }
30 
31  ZdcGeometry() ;
32 
33  explicit ZdcGeometry(const ZdcTopology * topology);
34  virtual ~ZdcGeometry();
35 
36  virtual const std::vector<DetId>& getValidDetIds(
37  DetId::Detector det = DetId::Detector ( 0 ) ,
38  int subdet = 0 ) const;
39 
40  virtual DetId getClosestCell(const GlobalPoint& r) const ;
41 
42  static std::string producerTag() { return "ZDC" ; }
43 
44  static unsigned int numberOfAlignments() { return 2 ; }
45 
46  static unsigned int alignmentTransformIndexLocal( const DetId& id ) ;
47 
48  static unsigned int alignmentTransformIndexGlobal( const DetId& id ) ;
49 
50  static std::vector<HepGeom::Point3D<double> > localCorners( const double* pv,
51  unsigned int i,
52  HepGeom::Point3D<double> & ref ) ;
53 
54  static CaloCellGeometry* newCell( const GlobalPoint& f1 ,
55  const GlobalPoint& f2 ,
56  const GlobalPoint& f3 ,
58  const double* parm,
59  const DetId& detId ) ;
60 
61  private:
62 
65  mutable int lastReqSubdet_;
66  mutable std::vector<DetId> m_validIds;
68 };
69 
70 
71 #endif
72 
static unsigned int alignmentTransformIndexLocal(const DetId &id)
Definition: ZdcGeometry.cc:83
int i
Definition: DBlmapReader.cc:9
virtual ~ZdcGeometry()
Definition: ZdcGeometry.cc:24
static std::string producerTag()
Definition: ZdcGeometry.h:42
static unsigned int alignmentTransformIndexGlobal(const DetId &id)
Definition: ZdcGeometry.cc:93
static unsigned int numberOfAlignments()
Definition: ZdcGeometry.h:44
PZdcRcd PGeometryRecord
Definition: ZdcGeometry.h:17
static std::vector< HepGeom::Point3D< double > > localCorners(const double *pv, unsigned int i, HepGeom::Point3D< double > &ref)
Definition: ZdcGeometry.cc:99
std::vector< DetId > m_validIds
Definition: ZdcGeometry.h:66
virtual unsigned int numberOfParametersPerShape() const
Definition: ZdcGeometry.h:29
bool m_ownsTopology
Definition: ZdcGeometry.h:67
DetId::Detector lastReqDet_
Definition: ZdcGeometry.h:64
const ZdcTopology * theTopology
Definition: ZdcGeometry.h:63
virtual DetId getClosestCell(const GlobalPoint &r) const
Definition: ZdcGeometry.cc:65
ZDCAlignmentRcd AlignmentRecord
Definition: ZdcGeometry.h:15
Definition: DetId.h:20
static CaloCellGeometry * newCell(const GlobalPoint &f1, const GlobalPoint &f2, const GlobalPoint &f3, CaloCellGeometry::CornersMgr *mgr, const double *parm, const DetId &detId)
Definition: ZdcGeometry.cc:107
Detector
Definition: DetId.h:26
Definition: EZMgrFL.h:8
int lastReqSubdet_
Definition: ZdcGeometry.h:65
ZDCGeometryRecord AlignedRecord
Definition: ZdcGeometry.h:16
virtual const std::vector< DetId > & getValidDetIds(DetId::Detector det=DetId::Detector(0), int subdet=0) const
Get a list of valid detector ids (for the given subdetector)
Definition: ZdcGeometry.cc:30
HcalZDCDetId DetIdType
Definition: ZdcGeometry.h:18
Definition: PZdcRcd.h:5
static std::string dbString()
Definition: ZdcGeometry.h:26
virtual unsigned int numberOfShapes() const
Definition: ZdcGeometry.h:28