CMS 3D CMS Logo

GEMeMap.h
Go to the documentation of this file.
1 #ifndef CondFormats_GEMObjects_GEMeMap_h
2 #define CondFormats_GEMObjects_GEMeMap_h
3 
5 #include <string>
6 #include <vector>
7 
8 class GEMROMapping;
9 
10 class GEMeMap {
11 public:
12  GEMeMap();
13  explicit GEMeMap(const std::string& version);
14 
15  virtual ~GEMeMap();
16 
17  const std::string& version() const;
18  void convert(GEMROMapping& romap);
19  void convertDummy(GEMROMapping& romap);
20 
21  struct GEMChamberMap {
22  std::vector<unsigned int> fedId;
23  std::vector<uint8_t> amcNum;
24  std::vector<uint8_t> gebId;
25  std::vector<int> gemNum;
26  std::vector<int> vfatVer;
27 
29  };
30 
31  struct GEMVFatMap {
32  std::vector<int> gemNum;
33  std::vector<uint16_t> vfatAdd;
34  std::vector<int> vfatType;
35  std::vector<int> iEta;
36  std::vector<int> localPhi;
37 
39  };
40  struct GEMStripMap {
41  std::vector<int> vfatType;
42  std::vector<int> vfatCh;
43  std::vector<int> vfatStrip;
44 
46  };
47 
48  std::vector<GEMChamberMap> theChamberMap_;
49  std::vector<GEMVFatMap> theVFatMap_;
50  std::vector<GEMStripMap> theStripMap_;
51 
52 private:
54 
56 
57 public:
58  // size of ID bits
59  static const int vfatVerV3_ = 3; // VFAT v3
60  static const int vfatTypeV3_ = 11; // VFAT v3
61  static const int chipIdMask_ = 0xfff; // chipId mask for 12 bits
62  static const int maxGEBs_ = 32; // 5 bits for GEB id
63  static const int maxAMCs_ = 15; // 4 bits for AMC no.
64  static const int maxVFatGE0_ = 12; // vFat per eta partition, not known yet for ME0
65  static const int maxVFatGE11_ = 3; // vFat per eta partition in GE11
66  static const int maxVFatGE21_ = 6; // vFat per eta partition in GE21
67  static const int maxChan_ = 128; // channels per vFat
68 };
69 #endif // GEMeMap_H
GEMeMap::GEMeMap
GEMeMap()
Definition: GEMeMap.cc:6
GEMeMap::chipIdMask_
static const int chipIdMask_
Definition: GEMeMap.h:61
GEMeMap::vfatVerV3_
static const int vfatVerV3_
Definition: GEMeMap.h:59
GEMeMap::theVersion
std::string theVersion
Definition: GEMeMap.h:53
COND_SERIALIZABLE
#define COND_SERIALIZABLE
Definition: Serializable.h:39
GEMROMapping
Definition: GEMROMapping.h:7
GEMeMap::GEMStripMap
Definition: GEMeMap.h:40
GEMeMap::theVFatMap_
std::vector< GEMVFatMap > theVFatMap_
Definition: GEMeMap.h:49
GEMeMap::GEMChamberMap::gemNum
std::vector< int > gemNum
Definition: GEMeMap.h:25
GEMeMap::GEMVFatMap
Definition: GEMeMap.h:31
GEMeMap
Definition: GEMeMap.h:10
GEMeMap::maxVFatGE21_
static const int maxVFatGE21_
Definition: GEMeMap.h:66
GEMeMap::GEMStripMap::vfatType
std::vector< int > vfatType
Definition: GEMeMap.h:41
GEMeMap::maxGEBs_
static const int maxGEBs_
Definition: GEMeMap.h:62
GEMeMap::GEMVFatMap::localPhi
std::vector< int > localPhi
Definition: GEMeMap.h:36
GEMeMap::GEMVFatMap::vfatType
std::vector< int > vfatType
Definition: GEMeMap.h:34
GEMeMap::maxVFatGE11_
static const int maxVFatGE11_
Definition: GEMeMap.h:65
GEMeMap::GEMChamberMap::fedId
std::vector< unsigned int > fedId
Definition: GEMeMap.h:22
GEMeMap::GEMVFatMap::gemNum
std::vector< int > gemNum
Definition: GEMeMap.h:32
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
GEMeMap::GEMChamberMap
Definition: GEMeMap.h:21
GEMeMap::theChamberMap_
std::vector< GEMChamberMap > theChamberMap_
Definition: GEMeMap.h:48
GEMeMap::GEMChamberMap::vfatVer
std::vector< int > vfatVer
Definition: GEMeMap.h:26
GEMeMap::GEMVFatMap::vfatAdd
std::vector< uint16_t > vfatAdd
Definition: GEMeMap.h:33
Serializable.h
GEMeMap::GEMChamberMap::gebId
std::vector< uint8_t > gebId
Definition: GEMeMap.h:24
GEMeMap::maxVFatGE0_
static const int maxVFatGE0_
Definition: GEMeMap.h:64
GEMeMap::maxAMCs_
static const int maxAMCs_
Definition: GEMeMap.h:63
GEMeMap::convert
void convert(GEMROMapping &romap)
Definition: GEMeMap.cc:14
GEMeMap::GEMStripMap::vfatStrip
std::vector< int > vfatStrip
Definition: GEMeMap.h:43
GEMeMap::convertDummy
void convertDummy(GEMROMapping &romap)
Definition: GEMeMap.cc:75
GEMeMap::theStripMap_
std::vector< GEMStripMap > theStripMap_
Definition: GEMeMap.h:50
GEMeMap::GEMChamberMap::amcNum
std::vector< uint8_t > amcNum
Definition: GEMeMap.h:23
GEMeMap::GEMVFatMap::iEta
std::vector< int > iEta
Definition: GEMeMap.h:35
GEMeMap::~GEMeMap
virtual ~GEMeMap()
Definition: GEMeMap.cc:10
GEMeMap::GEMStripMap::vfatCh
std::vector< int > vfatCh
Definition: GEMeMap.h:42
GEMeMap::maxChan_
static const int maxChan_
Definition: GEMeMap.h:67
GEMeMap::vfatTypeV3_
static const int vfatTypeV3_
Definition: GEMeMap.h:60
GEMeMap::version
const std::string & version() const
Definition: GEMeMap.cc:12