CMS 3D CMS Logo

DEtrait.h
Go to the documentation of this file.
1 #ifndef DE_TRAIT_H
2 #define DE_TRAIT_H
3 
4 /*\class template DEtrait
5  *\description data|emulation auxiliary template
6  type associator trait struct
7  *\author Nuno Leonardo (CERN)
8  *\date 07.03
9  */
10 
11 // L1 dataformats includes
32 
33 //d|e record
35 
36 namespace dedefs {
37 
38  const int DEnsys = 12;
39 
40  enum SysList { ETP, HTP, RCT, GCT, DTP, DTF, CTP, CTF, RPC, LTC, GMT, GLT };
41 
43  "ETP", "HTP", "RCT", "GCT", "DTP", "DTF", "CTP", "CTF", "RPC", "LTC", "GMT", "GLT"};
44 
46  "ECAL", "HCAL", "RCT", "GCT", "DTTPG", "DTTF", "CSCTPG", "CSCTF", "RPC", "LTC", "GMT", "GT"};
47 
48  enum ColList {
88  };
89 
90 } // namespace dedefs
91 
92 typedef std::vector<L1MuDTChambPhDigi> L1MuDTChambPhDigiCollection;
93 typedef std::vector<L1MuDTChambThDigi> L1MuDTChambThDigiCollection;
94 typedef std::vector<L1MuRegionalCand> L1MuRegionalCandCollection;
95 typedef std::vector<CSCALCTDigi> CSCALCTDigiCollection_;
96 typedef std::vector<CSCCLCTDigi> CSCCLCTDigiCollection_;
97 typedef std::vector<CSCCorrelatedLCTDigi> CSCCorrelatedLCTDigiCollection_;
98 typedef std::vector<L1CSCSPStatusDigi> L1CSCSPStatusDigiCollection_;
99 typedef std::vector<L1MuGMTCand> L1MuGMTCandCollection;
100 typedef std::vector<L1MuGMTReadoutRecord> L1MuGMTReadoutRecordCollection;
101 typedef std::vector<L1DataEmulDigi> L1DEDigiCollection;
102 
103 template <typename T>
104 struct DEtrait {};
105 
106 template <>
110  static inline int de_type() { return dedefs::ECALtp; }
111 };
112 
113 template <>
117  static inline int de_type() { return dedefs::HCALtp; }
118 };
119 
120 template <>
124  static inline int de_type() { return dedefs::RCTem; }
125 };
126 
127 template <>
131  static inline int de_type() { return dedefs::RCTrgn; }
132 };
133 
134 template <>
138  static inline int de_type() { return dedefs::GCTem; }
139 };
140 
141 template <>
145  static inline int de_type() { return dedefs::GCTjet; }
146 };
147 
148 template <>
152  static inline int de_type() { return dedefs::GCTethad; }
153 };
154 template <>
158  static inline int de_type() { return dedefs::GCTetmiss; }
159 };
160 template <>
164  static inline int de_type() { return dedefs::GCTettot; }
165 };
166 template <>
170  static inline int de_type() { return dedefs::GCThtmiss; }
171 };
172 template <>
176  static inline int de_type() { return dedefs::GCThfring; }
177 };
178 template <>
182  static inline int de_type() { return dedefs::GCThfbit; }
183 };
184 template <>
188  static inline int de_type() { return dedefs::GCTjetcnt; }
189 };
190 
191 template <>
195  static inline int de_type() { return dedefs::DTtpPh; }
196 };
197 template <>
201  static inline int de_type() { return dedefs::DTtpTh; }
202 };
203 
204 template <>
208  static inline int de_type() { return dedefs::MUrtf; }
209 };
210 
211 template <>
215  static inline int de_type() { return dedefs::CSCtpa; }
216 };
217 template <>
221  static inline int de_type() { return dedefs::CSCtpc; }
222 };
223 
224 template <>
228  static inline int de_type() { return dedefs::CSCtpl; }
229 };
230 
231 template <>
235  static inline int de_type() { return dedefs::CSCsta; }
236 };
237 
238 template <>
242  static inline int de_type() { return dedefs::LTCi; }
243 };
244 
245 template <>
249  static inline int de_type() { return dedefs::GMTcnd; }
250 };
251 
252 template <>
256  static inline int de_type() { return dedefs::GMTrdt; }
257 };
258 
259 template <>
262  typedef bool cand_type;
263  static inline int de_type() { return dedefs::GTdword; }
264 };
265 
266 #endif
L1MuDTChambPhDigiCollection coll_type
Definition: DEtrait.h:193
CSCCLCTDigiCollection_ coll_type
Definition: DEtrait.h:219
L1GctEtHadCollection coll_type
Definition: DEtrait.h:150
std::vector< CSCALCTDigi > CSCALCTDigiCollection_
Definition: DEtrait.h:95
L1GctJetCountsCollection coll_type
Definition: DEtrait.h:186
std::vector< L1CaloEmCand > L1CaloEmCollection
const std::string SystLabelExt[DEnsys]
Definition: DEtrait.h:45
const int DEnsys
Definition: DEtrait.h:38
std::vector< L1GctEtMiss > L1GctEtMissCollection
std::vector< L1GctHFRingEtSums > L1GctHFRingEtSumsCollection
std::vector< L1MuGMTReadoutRecord > L1MuGMTReadoutRecordCollection
Definition: DEtrait.h:100
std::vector< L1GctEtHad > L1GctEtHadCollection
L1CaloRegionCollection coll_type
Definition: DEtrait.h:129
Level-1 Trigger jet candidate.
Definition: L1GctJetCand.h:17
std::vector< L1GctJetCounts > L1GctJetCountsCollection
L1GctEtMissCollection coll_type
Definition: DEtrait.h:156
Level-1 Region Calorimeter Trigger EM candidate.
Definition: L1CaloEmCand.h:17
Persistable copy of missing Et measured at Level-1.
Definition: L1GctEtMiss.h:17
HcalTriggerPrimitiveDigi cand_type
Definition: DEtrait.h:116
std::vector< L1DataEmulDigi > L1DEDigiCollection
Definition: DEtrait.h:101
L1GctEtTotalCollection coll_type
Definition: DEtrait.h:162
Level-1 Trigger EM candidate at output of GCT.
Definition: L1GctEmCand.h:21
L1GctHFBitCountsCollection coll_type
Definition: DEtrait.h:180
L1MuGMTReadoutRecordCollection coll_type
Definition: DEtrait.h:254
std::vector< L1GctEtTotal > L1GctEtTotalCollection
std::vector< L1GctHFBitCounts > L1GctHFBitCountsCollection
std::vector< L1GctJetCand > L1GctJetCandCollection
L1GctHFRingEtSumsCollection coll_type
Definition: DEtrait.h:174
L1MuGMTCandCollection coll_type
Definition: DEtrait.h:247
L1 GCT HF ring Et sums.
L1GctHtMissCollection coll_type
Definition: DEtrait.h:168
std::vector< bool > DecisionWord
typedefs
Persistable copy of total Et measured at Level-1.
Definition: L1GctEtTotal.h:17
std::vector< CSCCLCTDigi > CSCCLCTDigiCollection_
Definition: DEtrait.h:96
std::vector< L1CSCSPStatusDigi > L1CSCSPStatusDigiCollection_
Definition: DEtrait.h:98
EcalTrigPrimDigiCollection coll_type
Definition: DEtrait.h:108
L1GctJetCandCollection coll_type
Definition: DEtrait.h:143
L1GctEmCandCollection coll_type
Definition: DEtrait.h:136
std::vector< L1MuDTChambThDigi > L1MuDTChambThDigiCollection
Definition: DEtrait.h:93
Persistable copy of total Ht measured at Level-1.
Definition: L1GctEtHad.h:17
std::vector< LTCDigi > LTCDigiCollection
Definition: LTCDigi.h:91
std::vector< L1MuRegionalCand > L1MuRegionalCandCollection
static int de_type()
Definition: DEtrait.h:263
L1 GCT HF ring Et sums.
std::vector< L1GctHtMiss > L1GctHtMissCollection
L1CSCSPStatusDigiCollection_ coll_type
Definition: DEtrait.h:233
std::vector< L1MuDTChambPhDigi > L1MuDTChambPhDigiCollection
Definition: DEtrait.h:92
std::vector< CSCCorrelatedLCTDigi > CSCCorrelatedLCTDigiCollection_
Definition: DEtrait.h:97
Persistable copy of missing Et measured at Level-1.
Definition: L1GctHtMiss.h:16
CSCCorrelatedLCTDigiCollection_ coll_type
Definition: DEtrait.h:226
LTCDigiCollection coll_type
Definition: DEtrait.h:240
ColList
Definition: DEtrait.h:48
SysList
Definition: DEtrait.h:40
HcalTrigPrimDigiCollection coll_type
Definition: DEtrait.h:115
L1MuDTChambThDigiCollection coll_type
Definition: DEtrait.h:199
const std::string SystLabel[DEnsys]
Definition: DEtrait.h:42
CSCALCTDigiCollection_ coll_type
Definition: DEtrait.h:213
Definition: DEtrait.h:36
EcalTriggerPrimitiveDigi cand_type
Definition: DEtrait.h:109
L1CaloEmCollection coll_type
Definition: DEtrait.h:122
A calorimeter trigger region (sum of 4x4 trigger towers)
Definition: L1CaloRegion.h:21
L1MuRegionalCandCollection coll_type
Definition: DEtrait.h:206
std::vector< L1CaloRegion > L1CaloRegionCollection
DecisionWord coll_type
Definition: DEtrait.h:261
std::vector< L1MuGMTCand > L1MuGMTCandCollection
Definition: DEtrait.h:99
std::vector< L1MuRegionalCand > L1MuRegionalCandCollection
Definition: DEtrait.h:94
std::vector< L1GctEmCand > L1GctEmCandCollection