CMS 3D CMS Logo

TotemT1Organization.h
Go to the documentation of this file.
1 #ifndef Forward_TotemT1Organization_h
2 #define Forward_TotemT1Organization_h 1
3 // -*- C++ -*-
4 //
5 // Package: Forward
6 // Class : TotemT1Organization
7 //
17 //
18 // Original Author: R. Capra
19 // Created: Tue May 16 10:14:34 CEST 2006
20 //
21 
22 // system include files
23 
24 // user include files
25 
27 
29 public:
30  // ---------- public enums -------------------------------
31 
32  enum ObjectType {
33  Undefined = 0,
34  Upper = 1,
35  Lower = 2,
38  Frame1 = 5,
43  Frame4Left = 10,
45  Frame5 = 12,
49  };
50 
51 public:
52  // ---------- Constructor and destructor -----------------
54  ~TotemT1Organization() override;
55 
56  // ---------- member functions ---------------------------
57  uint32_t getUnitID(const G4Step* aStep) const override;
58 
59  int getCurrentUnitID(void) const;
60  void setCurrentUnitID(int currentUnitID);
61 
62  // ---------- Detector position --------------------------
63 
64  int getCurrentDetectorPosition(void) const;
65  void setCurrentDetectorPosition(int currentDetectorPosition);
66 
67  // ---------- Plane: between 0 and (nPlanes-1) (or -1 for Undefined)
68  int getCurrentPlane(void) const;
69  void setCurrentPlane(int currentPlane);
70 
71  // ---------- CSC: between 0 and 5 (or -1 for Undefined)
72  int getCurrentCSC(void) const;
73  void setCurrentCSC(int currentCSC);
74 
75  // ---------- Layer: between 0 and (nLayers-1) (or -1 for Undefined)
76  int getCurrentLayer(void) const;
77  void setCurrentLayer(int currentLayer);
78 
79  // ---------- Object Type --------------------------------
80 
81  ObjectType getCurrentObjectType(void) const;
82  void setCurrentObjectType(ObjectType currentObjectType);
83 
84  int fromObjectTypeToInt(ObjectType objectType);
85  int fromObjectTypeToInt(ObjectType objectType, int layer);
86 
87  // ---------- Private methods ----------------------------
88 
89 private:
90  uint32_t getUnitID(const G4Step* aStep);
91 
92  void _checkUnitIDUpdate(void) const;
93  void _checkDataUpdate(void) const;
94 
95  void _FromUnitIDToData(void);
96  void _FromDataToUnitID(void);
97 
98  // ---------- Private data members -----------------------
107 };
108 #endif
void setCurrentObjectType(ObjectType currentObjectType)
void _checkDataUpdate(void) const
int getCurrentPlane(void) const
void setCurrentDetectorPosition(int currentDetectorPosition)
void setCurrentLayer(int currentLayer)
void setCurrentUnitID(int currentUnitID)
ObjectType getCurrentObjectType(void) const
int getCurrentUnitID(void) const
int getCurrentCSC(void) const
void setCurrentPlane(int currentPlane)
void setCurrentCSC(int currentCSC)
int getCurrentDetectorPosition(void) const
int fromObjectTypeToInt(ObjectType objectType)
uint32_t getUnitID(const G4Step *aStep) const override
void _checkUnitIDUpdate(void) const
int getCurrentLayer(void) const