CMS 3D CMS Logo

CastorGeometry.h
Go to the documentation of this file.
1 #ifndef Geometry_ForwardGeometry_CastorGeometry_h
2 #define Geometry_ForwardGeometry_CastorGeometry_h 1
3 
11 
12 #include <vector>
13 
15 public:
16  typedef std::vector<IdealCastorTrapezoid> CellVec;
17 
22 
27 
29 
30  enum { k_NumberOfShapes = 4 };
31 
33 
34  static std::string dbString() { return "PCastorRcd"; }
35 
36  unsigned int numberOfTransformParms() const override { return 3; }
37 
38  unsigned int numberOfShapes() const override { return k_NumberOfShapes; }
39  unsigned int numberOfParametersPerShape() const override { return k_NumberOfParametersPerShape; }
40 
42 
43  explicit CastorGeometry(const CastorTopology* topology);
44  ~CastorGeometry() override;
45 
46  DetId getClosestCell(const GlobalPoint& r) const override;
47 
48  static std::string producerTag() { return "CASTOR"; }
49 
50  static unsigned int numberOfAlignments() { return 1; }
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, const CCGFloat* pv, unsigned int i, Pt3D& ref);
57 
58  void newCell(const GlobalPoint& f1,
59  const GlobalPoint& f2,
60  const GlobalPoint& f3,
61  const CCGFloat* parm,
62  const DetId& detId) override;
63 
64 protected:
65  // Modify the RawPtr class
66  const CaloCellGeometry* getGeometryRawPtr(uint32_t index) const override;
67 
68 private:
71  mutable int lastReqSubdet_;
73 
75 };
76 
77 #endif
CaloCellGeometry::Tr3D
HepGeom::Transform3D Tr3D
Definition: CaloCellGeometry.h:53
CaloCellGeometry::Pt3DVec
std::vector< Pt3D > Pt3DVec
Definition: CaloCellGeometry.h:55
mps_fire.i
i
Definition: mps_fire.py:428
CastorAlignmentRcd
Definition: CastorAlignmentRcd.h:6
CaloCellGeometry::CCGFloat
float CCGFloat
Definition: CaloCellGeometry.h:52
CastorGeometry::PGeometryRecord
PCastorRcd PGeometryRecord
Definition: CastorGeometry.h:25
CCGFloat
CaloCellGeometry::CCGFloat CCGFloat
Definition: CaloCellGeometry.cc:4
CastorGeometry::Pt3D
CaloCellGeometry::Pt3D Pt3D
Definition: CastorGeometry.h:19
CastorGeometry::alignmentTransformIndexLocal
static unsigned int alignmentTransformIndexLocal(const DetId &id)
Definition: CastorGeometry.cc:44
CastorGeometry::CastorGeometry
CastorGeometry()
Definition: CastorGeometry.cc:12
CastorGeometry::Pt3DVec
CaloCellGeometry::Pt3DVec Pt3DVec
Definition: CastorGeometry.h:20
CastorGeometry::lastReqDet_
DetId::Detector lastReqDet_
Definition: CastorGeometry.h:70
CastorGeometry::k_NumberOfCellsForCorners
Definition: CastorGeometry.h:28
CastorGeometry::producerTag
static std::string producerTag()
Definition: CastorGeometry.h:48
CastorGeometry::CellVec
std::vector< IdealCastorTrapezoid > CellVec
Definition: CastorGeometry.h:16
CastorGeometry::Tr3D
CaloCellGeometry::Tr3D Tr3D
Definition: CastorGeometry.h:21
Pt3D
CaloCellGeometry::Pt3D Pt3D
Definition: CaloCellGeometry.cc:5
DetId
Definition: DetId.h:17
CastorGeometry::alignmentTransformIndexGlobal
static unsigned int alignmentTransformIndexGlobal(const DetId &id)
Definition: CastorGeometry.cc:52
CastorGeometry::~CastorGeometry
~CastorGeometry() override
Definition: CastorGeometry.cc:26
ecaldqm::topology
const CaloTopology * topology(nullptr)
CastorGeometryRecord
Definition: CastorGeometryRecord.h:23
CastorGeometry::AlignedRecord
CastorGeometryRecord AlignedRecord
Definition: CastorGeometry.h:24
CastorGeometry::k_NumberOfShapes
Definition: CastorGeometry.h:30
Point3DBase< float, GlobalTag >
CaloCellGeometry::Pt3D
HepGeom::Point3D< CCGFloat > Pt3D
Definition: CaloCellGeometry.h:54
CastorGeometry::getClosestCell
DetId getClosestCell(const GlobalPoint &r) const override
Definition: CastorGeometry.cc:31
CastorGeometry::numberOfTransformParms
unsigned int numberOfTransformParms() const override
Definition: CastorGeometry.h:36
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
HcalCastorDetId
Definition: HcalCastorDetId.h:23
PCastorRcd
Definition: PCastorRcd.h:5
CastorGeometry::AlignmentRecord
CastorAlignmentRcd AlignmentRecord
Definition: CastorGeometry.h:23
CaloSubdetectorGeometry.h
CaloCellGeometry
Definition: CaloCellGeometry.h:50
DeadROC_duringRun.f2
f2
Definition: DeadROC_duringRun.py:220
CastorTopology
Definition: CastorTopology.h:13
MetAnalyzer.pv
def pv(vc)
Definition: MetAnalyzer.py:7
CastorGeometry::theTopology
const CastorTopology * theTopology
Definition: CastorGeometry.h:69
DetId::Detector
Detector
Definition: DetId.h:24
CastorGeometry::getGeometryRawPtr
const CaloCellGeometry * getGeometryRawPtr(uint32_t index) const override
Definition: CastorGeometry.cc:75
CastorGeometry::numberOfAlignments
static unsigned int numberOfAlignments()
Definition: CastorGeometry.h:50
CastorGeometry::numberOfParametersPerShape
unsigned int numberOfParametersPerShape() const override
Definition: CastorGeometry.h:39
alignCSCRings.r
r
Definition: alignCSCRings.py:93
HcalCastorDetId::kSizeForDenseIndexing
Definition: HcalCastorDetId.h:71
CastorGeometry::dbString
static std::string dbString()
Definition: CastorGeometry.h:34
PCastorRcd.h
CastorTopology.h
CaloSubdetectorGeometry
Definition: CaloSubdetectorGeometry.h:22
CastorGeometry::m_ownsTopology
bool m_ownsTopology
Definition: CastorGeometry.h:72
CastorGeometry::m_cellVec
CellVec m_cellVec
Definition: CastorGeometry.h:74
CastorGeometry::k_NumberOfParametersPerShape
Definition: CastorGeometry.h:32
AlignmentPI::index
index
Definition: AlignmentPayloadInspectorHelper.h:46
CastorGeometry::newCell
void newCell(const GlobalPoint &f1, const GlobalPoint &f2, const GlobalPoint &f3, const CCGFloat *parm, const DetId &detId) override
Definition: CastorGeometry.cc:60
Pt3DVec
CaloCellGeometry::Pt3DVec Pt3DVec
Definition: CaloCellGeometry.cc:6
CastorGeometry::lastReqSubdet_
int lastReqSubdet_
Definition: CastorGeometry.h:71
CastorAlignmentRcd.h
CastorGeometry
Definition: CastorGeometry.h:14
HcalCastorDetId.h
IdealCastorTrapezoid.h
CastorGeometry::localCorners
static void localCorners(Pt3DVec &lc, const CCGFloat *pv, unsigned int i, Pt3D &ref)
Definition: CastorGeometry.cc:56
CastorGeometry::DetIdType
HcalCastorDetId DetIdType
Definition: CastorGeometry.h:26
CastorGeometry::numberOfShapes
unsigned int numberOfShapes() const override
Definition: CastorGeometry.h:38
CastorGeometry::CCGFloat
CaloCellGeometry::CCGFloat CCGFloat
Definition: CastorGeometry.h:18
DeadROC_duringRun.f1
f1
Definition: DeadROC_duringRun.py:219
CastorGeometryRecord.h