CMS 3D CMS Logo

HGCalProperty.h
Go to the documentation of this file.
1 #ifndef Geometry_HGCalCommonData_HGCalProperty_h
2 #define Geometry_HGCalCommonData_HGCalProperty_h
3 
4 #include <cmath>
5 #include <cstdint>
6 
7 namespace HGCalProperty {
8  int32_t waferProperty(const int32_t thick, const int32_t partial, const int32_t orient, const int32_t cassette = 0);
9  int32_t waferThick(const int32_t property);
10  int32_t waferPartial(const int32_t property);
11  int32_t waferOrient(const int32_t property);
12  int32_t waferCassette(const int32_t property);
13  int32_t tileProperty(const int32_t type, const int32_t sipm);
14  int32_t tileType(const int32_t property);
15  int32_t tileSiPM(const int32_t property);
16 
17  constexpr int32_t kHGCalWaferUOffset = 0;
18  constexpr int32_t kHGCalWaferUMask = 0x1F;
19  constexpr int32_t kHGCalWaferUSignOffset = 5;
20  constexpr int32_t kHGCalWaferUSignMask = 0x1;
21  constexpr int32_t kHGCalWaferVOffset = 6;
22  constexpr int32_t kHGCalWaferVMask = 0x1F;
23  constexpr int32_t kHGCalWaferVSignOffset = 11;
24  constexpr int32_t kHGCalWaferVSignMask = 0x1;
25  constexpr int32_t kHGCalWaferCopyOffset = 0;
26  constexpr int32_t kHGCalWaferCopyMask = 0x7FFFF;
27  constexpr int32_t kHGCalLayerOldMask = 0x1000000;
28 
29  constexpr int32_t kHGCalLayerOffset = 18;
30  constexpr int32_t kHGCalLayerMask = 0x1F;
31 
32  constexpr int32_t kHGCalPhiOffset = 0;
33  constexpr int32_t kHGCalPhiMask = 0x1FF;
34  constexpr int32_t kHGCalRingOffset = 9;
35  constexpr int32_t kHGCalRingMask = 0x1FF;
36 
37  constexpr int32_t kHGCalFactor = 10;
38  constexpr int32_t kHGCalFactorPartial = 100;
39  constexpr int32_t kHGCalFactorCassette = 100;
40  constexpr int32_t kHGCalOffsetThick = 1;
41  constexpr int32_t kHGCalOffsetPartial = 10;
42  constexpr int32_t kHGCalOffsetOrient = 1000;
43  constexpr int32_t kHGCalOffsetCassette = 10000;
44  constexpr int32_t kHGCalOffsetType = 1;
45  constexpr int32_t kHGCalOffsetSiPM = 10;
46  constexpr int32_t kHGCalTilePack = 1000;
47 
48  constexpr int32_t kHGCalTilePhis = 288;
49  constexpr int32_t kHGCalTilePhisBy2 = kHGCalTilePhis / 2;
50  constexpr int32_t kHGCalTilePhisBy3 = kHGCalTilePhis / 3;
51  constexpr int32_t kHGCalTilePhisBy12 = kHGCalTilePhis / 12;
52 
53 }; // namespace HGCalProperty
54 
55 #endif
constexpr int32_t kHGCalTilePhisBy3
Definition: HGCalProperty.h:50
constexpr int32_t kHGCalWaferVOffset
Definition: HGCalProperty.h:21
int32_t tileType(const int32_t property)
constexpr int32_t kHGCalTilePhisBy12
Definition: HGCalProperty.h:51
constexpr int32_t kHGCalFactorCassette
Definition: HGCalProperty.h:39
constexpr int32_t kHGCalWaferVSignOffset
Definition: HGCalProperty.h:23
constexpr int32_t kHGCalWaferCopyOffset
Definition: HGCalProperty.h:25
constexpr int32_t kHGCalWaferVMask
Definition: HGCalProperty.h:22
int32_t waferOrient(const int32_t property)
constexpr int32_t kHGCalWaferUSignMask
Definition: HGCalProperty.h:20
constexpr int32_t kHGCalWaferUOffset
Definition: HGCalProperty.h:17
constexpr int32_t kHGCalWaferUSignOffset
Definition: HGCalProperty.h:19
int32_t waferCassette(const int32_t property)
constexpr int32_t kHGCalRingMask
Definition: HGCalProperty.h:35
int32_t waferProperty(const int32_t thick, const int32_t partial, const int32_t orient, const int32_t cassette=0)
Definition: HGCalProperty.cc:3
constexpr int32_t kHGCalWaferCopyMask
Definition: HGCalProperty.h:26
int32_t tileSiPM(const int32_t property)
int32_t waferThick(const int32_t property)
constexpr int32_t kHGCalOffsetCassette
Definition: HGCalProperty.h:43
constexpr int32_t kHGCalOffsetOrient
Definition: HGCalProperty.h:42
constexpr int32_t kHGCalTilePhis
Definition: HGCalProperty.h:48
constexpr int32_t kHGCalFactorPartial
Definition: HGCalProperty.h:38
constexpr int32_t kHGCalWaferVSignMask
Definition: HGCalProperty.h:24
constexpr int32_t kHGCalLayerOldMask
Definition: HGCalProperty.h:27
constexpr int32_t kHGCalPhiOffset
Definition: HGCalProperty.h:32
int32_t waferPartial(const int32_t property)
constexpr int32_t kHGCalLayerOffset
Definition: HGCalProperty.h:29
constexpr int32_t kHGCalOffsetSiPM
Definition: HGCalProperty.h:45
constexpr int32_t kHGCalTilePhisBy2
Definition: HGCalProperty.h:49
constexpr int32_t kHGCalLayerMask
Definition: HGCalProperty.h:30
constexpr int32_t kHGCalWaferUMask
Definition: HGCalProperty.h:18
constexpr int32_t kHGCalOffsetThick
Definition: HGCalProperty.h:40
constexpr int32_t kHGCalPhiMask
Definition: HGCalProperty.h:33
constexpr int32_t kHGCalRingOffset
Definition: HGCalProperty.h:34
constexpr int32_t kHGCalTilePack
Definition: HGCalProperty.h:46
int32_t tileProperty(const int32_t type, const int32_t sipm)
constexpr int32_t kHGCalFactor
Definition: HGCalProperty.h:37
constexpr int32_t kHGCalOffsetPartial
Definition: HGCalProperty.h:41
constexpr int32_t kHGCalOffsetType
Definition: HGCalProperty.h:44