CMS 3D CMS Logo

HcalTestBeamNumbering.h
Go to the documentation of this file.
1 #ifndef SimDataFormats_HcalTestBeamNumbering_h
2 #define SimDataFormats_HcalTestBeamNumbering_h
3 // File: HcalTestBeamNumbering.h
5 // Description: Numbering scheme for high granularity calorimeter (SIM step)
7 
8 #include <boost/cstdint.hpp>
9 
11 public:
12  static const int kHcalBeamXValueOffset = 0;
13  static const int kHcalBeamXValueMask = 0x1FF;
14  static const int kHcalBeamXSignOffset = 9;
15  static const int kHcalBeamXSignMask = 0x1;
16  static const int kHcalBeamYValueOffset = 10;
17  static const int kHcalBeamYValueMask = 0x1FF;
18  static const int kHcalBeamYSignOffset = 19;
19  static const int kHcalBeamYSignMask = 0x1;
20  static const int kHcalBeamLayerOffset = 21;
21  static const int kHcalBeamLayerMask = 0x7F;
22  static const int kHcalBeamTypeOffset = 28;
23  static const int kHcalBeamTypeMask = 0xF;
24 
26 
28  static uint32_t packIndex(int det, int lay, int x, int y);
29  static void unpackIndex(const uint32_t& idx, int& det, int& lay, int& x, int& y);
30 };
31 
32 #endif
static const int kHcalBeamYValueOffset
static const int kHcalBeamYSignMask
static const int kHcalBeamLayerMask
static const int kHcalBeamYValueMask
static const int kHcalBeamXSignMask
static uint32_t packIndex(int det, int lay, int x, int y)
static const int kHcalBeamXValueMask
static const int kHcalBeamLayerOffset
static const int kHcalBeamTypeMask
static const int kHcalBeamYSignOffset
static const int kHcalBeamXSignOffset
static const int kHcalBeamXValueOffset
static void unpackIndex(const uint32_t &idx, int &det, int &lay, int &x, int &y)
static const int kHcalBeamTypeOffset