CMS 3D CMS Logo

DTConfigTraco.h
Go to the documentation of this file.
1 //-------------------------------------------------
2 //
12 //
13 //--------------------------------------------------
14 #ifndef DT_CONFIG_TRACO_H
15 #define DT_CONFIG_TRACO_H
16 
17 //---------------
18 // C++ Headers --
19 //---------------
20 
21 //----------------------
22 // Base Class Headers --
23 //----------------------
24 
25 //------------------------------------
26 // Collaborating Class Declarations --
27 //------------------------------------
31 
32 #include <boost/cstdint.hpp>
33 
34 // ---------------------
35 // -- Class Interface --
36 // ---------------------
37 
38 
39 class DTConfigTraco : public DTConfig {
40 
41  public:
42 
44  static const int RESOLPSI=512;
46  static const int RESOLPSIR=4096;
48  static const int NMAXCAND;
49 
50 
53 
56 
58  DTConfigTraco(int debug, unsigned short int * buffer);
59 
62 
64  void setDefaults(const edm::ParameterSet& ps);
65 
67  inline int debug() const { return m_debug; }
68 
70  inline int KRAD() const { return m_krad;}
71 
73  inline int BTIC() const { return m_btic;}
74 
76  inline int DD() const { return m_dd;}
77 
79  inline int TcReuse(int i) const {
80  if(i==0)
81  return m_reusei;
82  else
83  return m_reuseo;
84  }
85 
87  inline int singleHflag(int i) const {
88  if(i==0)
89  return m_fhtmsk;
90  else
91  return m_shtmsk;
92  }
93 
95  inline int singleLflag(int i) const {
96  if(i==0)
97  return m_fltmsk;
98  else
99  return m_sltmsk;
100  }
101 
103  inline int prefInner(int i) const {
104  if(i==0)
105  return m_fslmsk;
106  else
107  return m_sslmsk;
108  }
109 
111  inline int prefHtrig(int i) const {
112  if(i==0)
113  return m_fhtprf;
114  else
115  return m_shtprf;
116  }
117 
119  inline int sortKascend(int i) const {
120  if(i==0)
121  return m_fhism;
122  else
123  return m_shism;
124  }
125 
126 
128  inline int TcKToll(int i) const {
129  if(i==0)
130  return m_fprgcomp;
131  else
132  return m_sprgcomp;
133  }
134 
136  inline int TcBxLts() const { return m_lts; }
137 
139  inline int singleLenab(int i) const { return m_ltf; }
140 
142  inline int usedBti(int bti) const { return m_trgenb.element(bti-1); }
143 
145  inline int IBTIOFF() const { return m_ibtioff; }
146 
148  inline int BendingAngleCut() const { return m_kprgcom; }
149 
151  inline int LVALIDIFH() const { return m_lvalidifh;}
152 
155  inline void setDebug(int debug) { m_debug=debug; }
156 
158  inline void setKRAD(int KRAD) { m_krad=KRAD;}
159 
161  inline void setBTIC(int BTIC) { m_btic=BTIC;}
162 
164  inline void setDD(int DD) { m_dd=DD;}
165 
167  inline void setTcReuse(int i, int TcReuse ) {
168  if(i==0)
170  else
172  }
173 
175  inline void setSingleHflag(int i, int singleHflag) {
176  if(i==0)
178  else
180  }
181 
183  inline void setSingleLflag(int i, int singleLflag) {
184  if(i==0)
186  else
188  }
189 
191  inline void setPrefInner(int i, int prefInner) {
192  if(i==0)
194  else
196  }
197 
199  inline void setPrefHtrig(int i, int prefHtrig) {
200  if(i==0)
202  else
204  }
205 
207  inline void setSortKascend(int i, int sortKascend) {
208  if(i==0)
210  else
212  }
213 
214 
216  inline void setTcKToll(int i, int TcKToll) {
217  if(i==0)
219  else
221  }
222 
224  inline void setTcBxLts(int TcBxLts) { m_lts=TcBxLts; }
225 
227  inline void setSingleLenab(int i, int singleLenab) { m_ltf=singleLenab; }
228 
230  inline void setUsedBti(int bti, int mask) { m_trgenb.set(bti-1,mask); }
231 
233  inline void setIBTIOFF(int IBTIOFF) { m_ibtioff=IBTIOFF; }
234 
237 
240 
242  void print() const ;
243 
244 /* //! Return pointer to parameter set */
245 /* const edm::ParameterSet* getParameterSet() { return m_ps; } */
246 
247 
248 private:
249  // const edm::ParameterSet* m_ps;
250 
251  int8_t m_debug;
252  int8_t m_krad;
253  int8_t m_btic;
254  int8_t m_dd;
255  int8_t m_reusei;
256  int8_t m_reuseo;
257  int8_t m_fhtmsk;
258  int8_t m_shtmsk;
259  int8_t m_fltmsk;
260  int8_t m_sltmsk;
261  int8_t m_fslmsk;
262  int8_t m_sslmsk;
263  int8_t m_fhtprf;
264  int8_t m_shtprf;
265  int8_t m_fhism;
266  int8_t m_shism;
267  int8_t m_fprgcomp;
268  int8_t m_sprgcomp;
269  int8_t m_lts;
270  int8_t m_ltf;
272  int8_t m_ibtioff;
273  int16_t m_kprgcom;
274  int8_t m_lvalidifh;
275 
276 };
277 
278 #endif
DTConfigTraco()
Constructor.
Definition: DTConfigTraco.h:55
void print() const
Print the setup.
void setPrefInner(int i, int prefInner)
Set Preference to inner on first/second tracks: F(S)SLMSK.
void setBTIC(int BTIC)
Set BTIC traco parameter: must be equal to Btis ST parameter.
void setDefaults(const edm::ParameterSet &ps)
Set default parameters.
void setSingleLenab(int i, int singleLenab)
Set Single LTRIG accept enabling on first/second tracks LTF.
int KRAD() const
KRAD traco parameter.
Definition: DTConfigTraco.h:70
int prefHtrig(int i) const
Preference to HTRIG on first/second tracks: F(S)HTPRF.
int LVALIDIFH() const
Flag for Low validation parameter.
int8_t m_lvalidifh
void setSortKascend(int i, int sortKascend)
Set Ascend. order for K sorting first/second tracks: F(S)HISM.
int singleLenab(int i) const
Single LTRIG accept enabling on first/second tracks LTF.
void setIBTIOFF(int IBTIOFF)
Set IBTIOFF traco parameter.
int BTIC() const
BTIC traco parameter: must be equal to Btis ST parameter.
Definition: DTConfigTraco.h:73
void setUsedBti(int bti, int mask)
Set Connected bti in traco: bti mask.
void setDD(int DD)
Set DD traco parameter: this is fixed.
void setPrefHtrig(int i, int prefHtrig)
Set Preference to HTRIG on first/second tracks: F(S)HTPRF.
int BendingAngleCut() const
Bending angle cut for all stations and triggers : KPRGCOM.
void setBendingAngleCut(int BendingAngleCut)
Set Bending angle cut for all stations and triggers : KPRGCOM.
BitArray< 16 > m_trgenb
void setTcKToll(int i, int TcKToll)
Set K tollerance for correlation in TRACO: F(S)PRGCOMP.
void setSingleHflag(int i, int singleHflag)
Set Single HTRIG enabling on first/second tracks F(S)HTMSK.
int TcBxLts() const
Suppr. of LTRIG in 4 BX before HTRIG: LTS.
~DTConfigTraco()
Destructor.
void setTcReuse(int i, int TcReuse)
Set Recycling of TRACO cand. in inner/outer SL : REUSEI/REUSEO.
static const int RESOLPSIR
Costant: resulution for psiR (phi)
Definition: DTConfigTraco.h:46
int singleHflag(int i) const
Single HTRIG enabling on first/second tracks F(S)HTMSK.
Definition: DTConfigTraco.h:87
int TcKToll(int i) const
K tollerance for correlation in TRACO: F(S)PRGCOMP.
int prefInner(int i) const
Preference to inner on first/second tracks: F(S)SLMSK.
int element(const int pos) const
Definition: BitArray.h:210
void setKRAD(int KRAD)
Set KRAD traco parameter.
int16_t m_kprgcom
void setSingleLflag(int i, int singleLflag)
Set Single LTRIG enabling on first/second tracks: F(S)LTMSK.
int usedBti(int bti) const
Connected bti in traco: bti mask.
void setTcBxLts(int TcBxLts)
Set Suppr. of LTRIG in 4 BX before HTRIG: LTS.
int DD() const
DD traco parameter: this is fixed.
Definition: DTConfigTraco.h:76
int singleLflag(int i) const
Single LTRIG enabling on first/second tracks: F(S)LTMSK.
Definition: DTConfigTraco.h:95
void setLVALIDIFH(int LVALIDIFH)
Set Flag for Low validation parameter.
int TcReuse(int i) const
Recycling of TRACO cand. in inner/outer SL : REUSEI/REUSEO.
Definition: DTConfigTraco.h:79
static const int NMAXCAND
Costant: maximum number of TRACO output candidates to TS.
Definition: DTConfigTraco.h:48
static const int RESOLPSI
Costants: esolution for psi and DeltaPsiR (phi_B)
Definition: DTConfigTraco.h:44
int debug() const
Debug flag.
Definition: DTConfigTraco.h:67
void setDebug(int debug)
int sortKascend(int i) const
Ascend. order for K sorting first/second tracks: F(S)HISM.
void set(const int i)
Definition: BitArray.h:230
int IBTIOFF() const
IBTIOFF traco parameter.