CMS 3D CMS Logo

List of all members | Public Member Functions | Static Public Attributes | Private Attributes
DTConfigTraco Class Reference

#include <DTConfigTraco.h>

Inheritance diagram for DTConfigTraco:
DTConfig

Public Member Functions

int BendingAngleCut () const
 Bending angle cut for all stations and triggers : KPRGCOM. More...
 
int BTIC () const
 BTIC traco parameter: must be equal to Btis ST parameter. More...
 
int DD () const
 DD traco parameter: this is fixed. More...
 
int debug () const
 Debug flag. More...
 
 DTConfigTraco (const edm::ParameterSet &ps)
 Constructor. More...
 
 DTConfigTraco ()
 Constructor. More...
 
 DTConfigTraco (int debug, unsigned short int *buffer)
 Constructor from string. More...
 
int IBTIOFF () const
 IBTIOFF traco parameter. More...
 
int KRAD () const
 KRAD traco parameter. More...
 
int LVALIDIFH () const
 Flag for Low validation parameter. More...
 
int prefHtrig (int i) const
 Preference to HTRIG on first/second tracks: F(S)HTPRF. More...
 
int prefInner (int i) const
 Preference to inner on first/second tracks: F(S)SLMSK. More...
 
void print () const
 Print the setup. More...
 
void setBendingAngleCut (int BendingAngleCut)
 Set Bending angle cut for all stations and triggers : KPRGCOM. More...
 
void setBTIC (int BTIC)
 Set BTIC traco parameter: must be equal to Btis ST parameter. More...
 
void setDD (int DD)
 Set DD traco parameter: this is fixed. More...
 
void setDebug (int debug)
 
void setDefaults (const edm::ParameterSet &ps)
 Set default parameters. More...
 
void setIBTIOFF (int IBTIOFF)
 Set IBTIOFF traco parameter. More...
 
void setKRAD (int KRAD)
 Set KRAD traco parameter. More...
 
void setLVALIDIFH (int LVALIDIFH)
 Set Flag for Low validation parameter. More...
 
void setPrefHtrig (int i, int prefHtrig)
 Set Preference to HTRIG on first/second tracks: F(S)HTPRF. More...
 
void setPrefInner (int i, int prefInner)
 Set Preference to inner on first/second tracks: F(S)SLMSK. More...
 
void setSingleHflag (int i, int singleHflag)
 Set Single HTRIG enabling on first/second tracks F(S)HTMSK. More...
 
void setSingleLenab (int i, int singleLenab)
 Set Single LTRIG accept enabling on first/second tracks LTF. More...
 
void setSingleLflag (int i, int singleLflag)
 Set Single LTRIG enabling on first/second tracks: F(S)LTMSK. More...
 
void setSortKascend (int i, int sortKascend)
 Set Ascend. order for K sorting first/second tracks: F(S)HISM. More...
 
void setTcBxLts (int TcBxLts)
 Set Suppr. of LTRIG in 4 BX before HTRIG: LTS. More...
 
void setTcKToll (int i, int TcKToll)
 Set K tollerance for correlation in TRACO: F(S)PRGCOMP. More...
 
void setTcReuse (int i, int TcReuse)
 Set Recycling of TRACO cand. in inner/outer SL : REUSEI/REUSEO. More...
 
void setUsedBti (int bti, int mask)
 Set Connected bti in traco: bti mask. More...
 
int singleHflag (int i) const
 Single HTRIG enabling on first/second tracks F(S)HTMSK. More...
 
int singleLenab (int i) const
 Single LTRIG accept enabling on first/second tracks LTF. More...
 
int singleLflag (int i) const
 Single LTRIG enabling on first/second tracks: F(S)LTMSK. More...
 
int sortKascend (int i) const
 Ascend. order for K sorting first/second tracks: F(S)HISM. More...
 
int TcBxLts () const
 Suppr. of LTRIG in 4 BX before HTRIG: LTS. More...
 
int TcKToll (int i) const
 K tollerance for correlation in TRACO: F(S)PRGCOMP. More...
 
int TcReuse (int i) const
 Recycling of TRACO cand. in inner/outer SL : REUSEI/REUSEO. More...
 
int usedBti (int bti) const
 Connected bti in traco: bti mask. More...
 
 ~DTConfigTraco () override
 Destructor. More...
 
- Public Member Functions inherited from DTConfig
 DTConfig ()
 Constructor. More...
 
virtual ~DTConfig ()
 Destructor. More...
 

Static Public Attributes

static const int NMAXCAND
 Costant: maximum number of TRACO output candidates to TS. More...
 
static const int RESOLPSI = 512
 Costants: esolution for psi and DeltaPsiR (phi_B) More...
 
static const int RESOLPSIR = 4096
 Costant: resulution for psiR (phi) More...
 
- Static Public Attributes inherited from DTConfig
static const int NBTITC = 4
 
static const int NSTEPF = 9
 
static const int NSTEPL = 24
 Constants: first and last step to start trigger finding. More...
 
static const int NTCTSS = 4
 Constant: number of TRACOs in input to a TSS. More...
 

Private Attributes

int8_t m_btic
 
int8_t m_dd
 
int8_t m_debug
 
int8_t m_fhism
 
int8_t m_fhtmsk
 
int8_t m_fhtprf
 
int8_t m_fltmsk
 
int8_t m_fprgcomp
 
int8_t m_fslmsk
 
int8_t m_ibtioff
 
int16_t m_kprgcom
 
int8_t m_krad
 
int8_t m_ltf
 
int8_t m_lts
 
int8_t m_lvalidifh
 
int8_t m_reusei
 
int8_t m_reuseo
 
int8_t m_shism
 
int8_t m_shtmsk
 
int8_t m_shtprf
 
int8_t m_sltmsk
 
int8_t m_sprgcomp
 
int8_t m_sslmsk
 
BitArray< 16 > m_trgenb
 

Detailed Description

Configurable parameters and constants for Level-1 Muon DT Trigger - Traco chip

Author
S. Vanini

Definition at line 37 of file DTConfigTraco.h.

Constructor & Destructor Documentation

◆ DTConfigTraco() [1/3]

DTConfigTraco::DTConfigTraco ( const edm::ParameterSet ps)

Constructor.

Definition at line 40 of file DTConfigTraco.cc.

References setDefaults().

40 { setDefaults(ps); }
void setDefaults(const edm::ParameterSet &ps)
Set default parameters.

◆ DTConfigTraco() [2/3]

DTConfigTraco::DTConfigTraco ( )
inline

Constructor.

Definition at line 50 of file DTConfigTraco.h.

50 {};

◆ DTConfigTraco() [3/3]

DTConfigTraco::DTConfigTraco ( int  debug,
unsigned short int *  buffer 
)

Constructor from string.

Definition at line 42 of file DTConfigTraco.cc.

References edmScanValgrind::buffer, gather_cfg::cout, createTree::dd, debug(), Exception, mps_fire::i, m_debug, setBendingAngleCut(), setBTIC(), setDD(), setIBTIOFF(), setKRAD(), setLVALIDIFH(), setPrefHtrig(), setPrefInner(), setSingleHflag(), setSingleLenab(), setSingleLflag(), setSortKascend(), setTcBxLts(), setTcKToll(), setTcReuse(), setUsedBti(), and submitPVValidationJobs::t.

42  {
43  m_debug = debugTRACO;
44 
45  // check if this is a TRACO configuration string
46  if (buffer[2] != 0x15) {
47  throw cms::Exception("DTTPG") << "===> ConfigTraco constructor : not a TRACO string!" << std::endl;
48  }
49 
50  // decode
51  unsigned short int memory_traco[38];
52 
53  for (int i = 0; i < 38; i++) {
54  memory_traco[i] = buffer[i + 5];
55  //std::cout << hex << memory_traco[i];
56  }
57  int btic = memory_traco[0] & 0x3f;
58  int rad = ((memory_traco[0] & 0xc0) >> 6) | ((memory_traco[1] & 0x7) << 2);
59  int dd = (memory_traco[1] & 0xf8) >> 3;
60  int fprgcomp = memory_traco[2] & 0x3;
61  int sprgcomp = memory_traco[3] & 0x3;
62  int fhism = (memory_traco[2] & 0x4) != 0;
63  int fhtprf = (memory_traco[2] & 0x8) != 0;
64  int fslmsk = (memory_traco[2] & 0x10) != 0;
65  int fltmsk = (memory_traco[2] & 0x20) != 0;
66  int fhtmsk = (memory_traco[2] & 0x40) != 0;
67  int shism = (memory_traco[3] & 0x4) != 0;
68  int shtprf = (memory_traco[3] & 0x8) != 0;
69  int sslmsk = (memory_traco[3] & 0x10) != 0;
70  int sltmsk = (memory_traco[3] & 0x20) != 0;
71  int shtmsk = (memory_traco[3] & 0x40) != 0;
72  int reusei = (memory_traco[2] & 0x80) != 0;
73  int reuseo = (memory_traco[3] & 0x80) != 0;
74  int ltf = (memory_traco[4] & 1) != 0;
75  int lts = (memory_traco[4] & 2) != 0;
76  int prgdel = (memory_traco[4] & 0x1c) >> 2;
77  int snapcor = (memory_traco[4] & 0xe0) >> 5;
78  int trgenb[16];
79  for (int it = 0; it < 2; it++) {
80  trgenb[0 + it * 8] = memory_traco[5 + it] & 0x01;
81  trgenb[1 + it * 8] = (memory_traco[5 + it] >> 1) & 0x01;
82  trgenb[2 + it * 8] = (memory_traco[5 + it] >> 1) & 0x01;
83  trgenb[3 + it * 8] = (memory_traco[5 + it] >> 1) & 0x01;
84  trgenb[4 + it * 8] = (memory_traco[5 + it] >> 1) & 0x01;
85  trgenb[5 + it * 8] = (memory_traco[5 + it] >> 1) & 0x01;
86  trgenb[6 + it * 8] = (memory_traco[5 + it] >> 1) & 0x01;
87  trgenb[7 + it * 8] = (memory_traco[5 + it] >> 1) & 0x01;
88  }
89  int trgadel = memory_traco[7] & 0x3;
90  int ibtioff = (memory_traco[7] & 0xfc) >> 2;
91  int kprgcom = (memory_traco[8] & 0xff);
92  int testmode = (memory_traco[9] & 1) != 0;
93  int starttest = (memory_traco[9] & 2) != 0;
94  int prvsignmux = (memory_traco[9] & 4) != 0;
95  int lth = (memory_traco[9] & 8) != 0;
96 
97  if (debug() == 1) {
98  std::cout << "btic=" << btic << " rad=" << rad << " dd=" << dd << " fprgcomp=" << fprgcomp
99  << " sprgcomp=" << sprgcomp << " fhism=" << fhism << " fhtprf=" << fhtprf << " fslmsk=" << fslmsk
100  << " fltmsk=" << fltmsk << " fhtmsk=" << fhtmsk << " shism=" << shism << " shtprf=" << shtprf
101  << " sslmsk=" << sslmsk << " sltmsk=" << sltmsk << " shtmsk=" << shtmsk << " reusei=" << reusei
102  << " reuseo=" << reuseo << " ltf=" << ltf << " lts=" << lts << " prgdel=" << prgdel
103  << " snapcor=" << snapcor << " trgenb=";
104  for (int t = 0; t < 16; t++)
105  std::cout << trgenb[t] << " ";
106  std::cout << " trgadel=" << trgadel << " ibtioff=" << ibtioff << " kprgcom=" << kprgcom << " testmode=" << testmode
107  << " starttest=" << starttest << " prvsignmux=" << prvsignmux << " lth=" << lth << std::endl;
108  }
109 
110  // set parameters
111  setBTIC(btic);
112  setKRAD(rad);
113  setDD(dd);
114  setTcKToll(0, fprgcomp);
115  setTcKToll(1, sprgcomp);
116  setSortKascend(0, fhism);
117  setSortKascend(1, shism);
118  setPrefHtrig(0, fhtprf);
119  setPrefHtrig(1, shtprf);
120  setPrefInner(0, fslmsk);
121  setPrefInner(1, sslmsk);
122  setSingleLflag(0, fltmsk);
123  setSingleLflag(1, sltmsk);
124  setSingleHflag(0, fhtmsk);
125  setSingleHflag(1, shtmsk);
126  setTcReuse(0, reusei);
127  setTcReuse(1, reuseo);
128  setSingleLenab(0, ltf);
129  setSingleLenab(1, ltf);
130  setTcBxLts(lts);
131  setIBTIOFF(ibtioff);
132  setBendingAngleCut(kprgcom);
133  setLVALIDIFH(lth);
134  for (int t = 0; t < 16; t++)
135  setUsedBti(t + 1, trgenb[t]);
136 
137  // the following are not relevant for simulation
138  // prgdel, snapcor, trgadel, testmode, starttest, prvsignmux
139 }
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 setSingleLenab(int i, int singleLenab)
Set Single LTRIG accept enabling on first/second tracks LTF.
void setSortKascend(int i, int sortKascend)
Set Ascend. order for K sorting first/second tracks: F(S)HISM.
void setIBTIOFF(int IBTIOFF)
Set IBTIOFF traco parameter.
string dd
Definition: createTree.py:154
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.
void setBendingAngleCut(int BendingAngleCut)
Set Bending angle cut for all stations and triggers : KPRGCOM.
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.
void setTcReuse(int i, int TcReuse)
Set Recycling of TRACO cand. in inner/outer SL : REUSEI/REUSEO.
int debug() const
Debug flag.
Definition: DTConfigTraco.h:62
void setKRAD(int KRAD)
Set KRAD traco parameter.
void setSingleLflag(int i, int singleLflag)
Set Single LTRIG enabling on first/second tracks: F(S)LTMSK.
void setTcBxLts(int TcBxLts)
Set Suppr. of LTRIG in 4 BX before HTRIG: LTS.
void setLVALIDIFH(int LVALIDIFH)
Set Flag for Low validation parameter.

◆ ~DTConfigTraco()

DTConfigTraco::~DTConfigTraco ( )
override

Destructor.

Definition at line 144 of file DTConfigTraco.cc.

144 {}

Member Function Documentation

◆ BendingAngleCut()

int DTConfigTraco::BendingAngleCut ( ) const
inline

Bending angle cut for all stations and triggers : KPRGCOM.

Definition at line 142 of file DTConfigTraco.h.

References m_kprgcom.

Referenced by DTTracoChip::insideAngWindow(), print(), and setBendingAngleCut().

142 { return m_kprgcom; }
int16_t m_kprgcom

◆ BTIC()

int DTConfigTraco::BTIC ( ) const
inline

BTIC traco parameter: must be equal to Btis ST parameter.

Definition at line 68 of file DTConfigTraco.h.

References m_btic.

Referenced by DTTracoChip::DTTracoChip(), print(), setBTIC(), and DTTracoChip::setTracoAcceptances().

68 { return m_btic; }

◆ DD()

int DTConfigTraco::DD ( ) const
inline

DD traco parameter: this is fixed.

Definition at line 71 of file DTConfigTraco.h.

References m_dd.

Referenced by print(), and setDD().

71 { return m_dd; }

◆ debug()

int DTConfigTraco::debug ( ) const
inline

◆ IBTIOFF()

int DTConfigTraco::IBTIOFF ( ) const
inline

IBTIOFF traco parameter.

Definition at line 139 of file DTConfigTraco.h.

References m_ibtioff.

Referenced by print(), and setIBTIOFF().

139 { return m_ibtioff; }

◆ KRAD()

int DTConfigTraco::KRAD ( ) const
inline

KRAD traco parameter.

Definition at line 65 of file DTConfigTraco.h.

References m_krad.

Referenced by DTTracoChip::DTTracoChip(), print(), and setKRAD().

65 { return m_krad; }

◆ LVALIDIFH()

int DTConfigTraco::LVALIDIFH ( ) const
inline

Flag for Low validation parameter.

Definition at line 145 of file DTConfigTraco.h.

References m_lvalidifh.

Referenced by print(), setLVALIDIFH(), and DTTracoChip::storeUncorr().

145 { return m_lvalidifh; }
int8_t m_lvalidifh

◆ prefHtrig()

int DTConfigTraco::prefHtrig ( int  i) const
inline

Preference to HTRIG on first/second tracks: F(S)HTPRF.

Definition at line 106 of file DTConfigTraco.h.

References mps_fire::i, m_fhtprf, and m_shtprf.

Referenced by DTTracoChip::bestCand(), print(), and setPrefHtrig().

106  {
107  if (i == 0)
108  return m_fhtprf;
109  else
110  return m_shtprf;
111  }

◆ prefInner()

int DTConfigTraco::prefInner ( int  i) const
inline

Preference to inner on first/second tracks: F(S)SLMSK.

Definition at line 98 of file DTConfigTraco.h.

References mps_fire::i, m_fslmsk, and m_sslmsk.

Referenced by print(), setPrefInner(), DTTracoChip::setPV(), and DTTracoChip::storeUncorr().

98  {
99  if (i == 0)
100  return m_fslmsk;
101  else
102  return m_sslmsk;
103  }

◆ print()

void DTConfigTraco::print ( void  ) const

Print the setup.

Definition at line 219 of file DTConfigTraco.cc.

References b, BendingAngleCut(), BTIC(), gather_cfg::cout, DD(), debug(), IBTIOFF(), KRAD(), LVALIDIFH(), prefHtrig(), prefInner(), singleHflag(), singleLenab(), singleLflag(), sortKascend(), TcBxLts(), TcKToll(), TcReuse(), and usedBti().

Referenced by DTConfigTester::analyze().

219  {
220  std::cout << "******************************************************************************" << std::endl;
221  std::cout << "* DTTrigger configuration : TRACO chips *" << std::endl;
222  std::cout << "******************************************************************************" << std::endl;
223  std::cout << "* *" << std::endl;
224  std::cout << "Debug flag : " << debug() << std::endl;
225  std::cout << "KRAD traco parameter : " << KRAD() << std::endl;
226  std::cout << "BTIC traco parameter : " << BTIC() << std::endl;
227  std::cout << "DD traco parameter : " << DD() << std::endl;
228  std::cout << "REUSEI, REUSEO : " << TcReuse(0) << ", " << TcReuse(1) << std::endl;
229  std::cout << "FHTMSK, SHTMSK : " << singleHflag(0) << ", " << singleHflag(1) << std::endl;
230  std::cout << "FLTMSK, SLTMSK: " << singleLflag(0) << ", " << singleLflag(1) << std::endl;
231  std::cout << "FSLMSK, SSLMSK : " << prefInner(0) << ", " << prefInner(1) << std::endl;
232  std::cout << "FHTPRF, SHTPRF : " << prefHtrig(0) << ", " << prefHtrig(1) << std::endl;
233  std::cout << "FHISM, SHISM : " << sortKascend(0) << ", " << sortKascend(1) << std::endl;
234  std::cout << "FPRGCOMP, SPRGCOMP : " << TcKToll(0) << ", " << TcKToll(1) << std::endl;
235  std::cout << "LTS : " << TcBxLts() << std::endl;
236  std::cout << "LTF : " << singleLenab(0) << std::endl;
237  std::cout << "Connected bti in traco - bti mask : ";
238  for (int b = 1; b <= 16; b++)
239  std::cout << usedBti(b) << " ";
240  std::cout << std::endl;
241  std::cout << "IBTIOFF : " << IBTIOFF() << std::endl;
242  std::cout << "bending angle cut : " << BendingAngleCut() << std::endl;
243  std::cout << "flag for Low validation parameter : " << LVALIDIFH() << std::endl;
244  std::cout << "******************************************************************************" << std::endl;
245 }
int singleLflag(int i) const
Single LTRIG enabling on first/second tracks: F(S)LTMSK.
Definition: DTConfigTraco.h:90
int sortKascend(int i) const
Ascend. order for K sorting first/second tracks: F(S)HISM.
int BTIC() const
BTIC traco parameter: must be equal to Btis ST parameter.
Definition: DTConfigTraco.h:68
int prefInner(int i) const
Preference to inner on first/second tracks: F(S)SLMSK.
Definition: DTConfigTraco.h:98
int BendingAngleCut() const
Bending angle cut for all stations and triggers : KPRGCOM.
int usedBti(int bti) const
Connected bti in traco: bti mask.
int singleLenab(int i) const
Single LTRIG accept enabling on first/second tracks LTF.
int singleHflag(int i) const
Single HTRIG enabling on first/second tracks F(S)HTMSK.
Definition: DTConfigTraco.h:82
int TcKToll(int i) const
K tollerance for correlation in TRACO: F(S)PRGCOMP.
int prefHtrig(int i) const
Preference to HTRIG on first/second tracks: F(S)HTPRF.
int IBTIOFF() const
IBTIOFF traco parameter.
int debug() const
Debug flag.
Definition: DTConfigTraco.h:62
int TcReuse(int i) const
Recycling of TRACO cand. in inner/outer SL : REUSEI/REUSEO.
Definition: DTConfigTraco.h:74
double b
Definition: hdecay.h:120
int KRAD() const
KRAD traco parameter.
Definition: DTConfigTraco.h:65
int TcBxLts() const
Suppr. of LTRIG in 4 BX before HTRIG: LTS.
int LVALIDIFH() const
Flag for Low validation parameter.
int DD() const
DD traco parameter: this is fixed.
Definition: DTConfigTraco.h:71

◆ setBendingAngleCut()

void DTConfigTraco::setBendingAngleCut ( int  BendingAngleCut)
inline

Set Bending angle cut for all stations and triggers : KPRGCOM.

Definition at line 229 of file DTConfigTraco.h.

References BendingAngleCut(), and m_kprgcom.

Referenced by DTConfigTraco().

int BendingAngleCut() const
Bending angle cut for all stations and triggers : KPRGCOM.
int16_t m_kprgcom

◆ setBTIC()

void DTConfigTraco::setBTIC ( int  BTIC)
inline

Set BTIC traco parameter: must be equal to Btis ST parameter.

Definition at line 155 of file DTConfigTraco.h.

References BTIC(), and m_btic.

Referenced by DTConfigTraco().

155 { m_btic = BTIC; }
int BTIC() const
BTIC traco parameter: must be equal to Btis ST parameter.
Definition: DTConfigTraco.h:68

◆ setDD()

void DTConfigTraco::setDD ( int  DD)
inline

Set DD traco parameter: this is fixed.

Definition at line 158 of file DTConfigTraco.h.

References DD(), and m_dd.

Referenced by DTConfigTraco().

158 { m_dd = DD; }
int DD() const
DD traco parameter: this is fixed.
Definition: DTConfigTraco.h:71

◆ setDebug()

void DTConfigTraco::setDebug ( int  debug)
inline

Set single parameter functions Set debug flag

Definition at line 149 of file DTConfigTraco.h.

References debug(), and m_debug.

149 { m_debug = debug; }
int debug() const
Debug flag.
Definition: DTConfigTraco.h:62

◆ setDefaults()

void DTConfigTraco::setDefaults ( const edm::ParameterSet ps)

Set default parameters.

Definition at line 150 of file DTConfigTraco.cc.

References b, edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), label, m_btic, m_dd, m_debug, m_fhism, m_fhtmsk, m_fhtprf, m_fltmsk, m_fprgcomp, m_fslmsk, m_ibtioff, m_kprgcom, m_krad, m_ltf, m_lts, m_lvalidifh, m_reusei, m_reuseo, m_shism, m_shtmsk, m_shtprf, m_sltmsk, m_sprgcomp, m_sslmsk, m_trgenb, LaserDQM_cfg::p1, BitArray< N >::set(), and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by DTConfigTraco().

150  {
151  // Debug flag
152  m_debug = ps.getUntrackedParameter<int>("Debug");
153 
154  // KRAD traco parameter
155  m_krad = ps.getParameter<int>("KRAD");
156 
157  // BTIC traco parameter
158  m_btic = ps.getParameter<int>("BTIC");
159 
160  // DD traco parameter: this is fixed
161  m_dd = ps.getParameter<int>("DD");
162 
163  // recycling of TRACO cand. in inner/outer SL : REUSEI/REUSEO
164  m_reusei = ps.getParameter<int>("REUSEI");
165  m_reuseo = ps.getParameter<int>("REUSEO");
166 
167  // single HTRIG enabling on first/second tracks F(S)HTMSK
168  m_fhtmsk = ps.getParameter<int>("FHTMSK");
169  m_shtmsk = ps.getParameter<int>("SHTMSK");
170 
171  // single LTRIG enabling on first/second tracks: F(S)LTMSK
172  m_fltmsk = ps.getParameter<int>("FLTMSK");
173  m_sltmsk = ps.getParameter<int>("SLTMSK");
174 
175  // preference to inner on first/second tracks: F(S)SLMSK
176  m_fslmsk = ps.getParameter<int>("FSLMSK");
177  m_sslmsk = ps.getParameter<int>("SSLMSK");
178 
179  // preference to HTRIG on first/second tracks: F(S)HTPRF
180  m_fhtprf = ps.getParameter<int>("FHTPRF");
181  m_shtprf = ps.getParameter<int>("SHTPRF");
182 
183  // ascend. order for K sorting first/second tracks: F(S)HISM
184  m_fhism = ps.getParameter<int>("FHISM");
185  m_shism = ps.getParameter<int>("SHISM");
186 
187  // K tollerance for correlation in TRACO: F(S)PRGCOMP
188  m_fprgcomp = ps.getParameter<int>("FPRGCOMP");
189  m_sprgcomp = ps.getParameter<int>("SPRGCOMP");
190 
191  // suppr. of LTRIG in 4 BX before HTRIG: LTS
192  m_lts = ps.getParameter<int>("LTS");
193 
194  // single LTRIG accept enabling on first/second tracks LTF
195  m_ltf = ps.getParameter<int>("LTF");
196 
197  // Connected bti in traco: bti mask
198  for (int b = 0; b < 16; b++) {
199  std::string label = "TRGENB";
200  char p0 = (b / 10) + '0';
201  char p1 = (b % 10) + '0';
202  if (p0 != '0')
203  label = label + p0;
204  label = label + p1;
205 
206  m_trgenb.set(b, ps.getParameter<int>(label));
207  }
208 
209  // IBTIOFF traco parameter
210  m_ibtioff = ps.getParameter<int>("IBTIOFF");
211 
212  // bending angle cut for all stations and triggers : KPRGCOM
213  m_kprgcom = ps.getParameter<int>("KPRGCOM");
214 
215  // flag for Low validation parameter
216  m_lvalidifh = ps.getParameter<int>("LVALIDIFH");
217 }
T getParameter(std::string const &) const
Definition: ParameterSet.h:307
int8_t m_lvalidifh
T getUntrackedParameter(std::string const &, T const &) const
char const * label
BitArray< 16 > m_trgenb
int16_t m_kprgcom
double b
Definition: hdecay.h:120
void set(const int i)
Definition: BitArray.h:224

◆ setIBTIOFF()

void DTConfigTraco::setIBTIOFF ( int  IBTIOFF)
inline

Set IBTIOFF traco parameter.

Definition at line 226 of file DTConfigTraco.h.

References IBTIOFF(), and m_ibtioff.

Referenced by DTConfigTraco().

226 { m_ibtioff = IBTIOFF; }
int IBTIOFF() const
IBTIOFF traco parameter.

◆ setKRAD()

void DTConfigTraco::setKRAD ( int  KRAD)
inline

Set KRAD traco parameter.

Definition at line 152 of file DTConfigTraco.h.

References KRAD(), and m_krad.

Referenced by DTConfigTraco().

152 { m_krad = KRAD; }
int KRAD() const
KRAD traco parameter.
Definition: DTConfigTraco.h:65

◆ setLVALIDIFH()

void DTConfigTraco::setLVALIDIFH ( int  LVALIDIFH)
inline

Set Flag for Low validation parameter.

Definition at line 232 of file DTConfigTraco.h.

References LVALIDIFH(), and m_lvalidifh.

Referenced by DTConfigTraco().

232 { m_lvalidifh = LVALIDIFH; }
int8_t m_lvalidifh
int LVALIDIFH() const
Flag for Low validation parameter.

◆ setPrefHtrig()

void DTConfigTraco::setPrefHtrig ( int  i,
int  prefHtrig 
)
inline

Set Preference to HTRIG on first/second tracks: F(S)HTPRF.

Definition at line 193 of file DTConfigTraco.h.

References mps_fire::i, m_fhtprf, m_shtprf, and prefHtrig().

Referenced by DTConfigTraco().

193  {
194  if (i == 0)
196  else
198  }
int prefHtrig(int i) const
Preference to HTRIG on first/second tracks: F(S)HTPRF.

◆ setPrefInner()

void DTConfigTraco::setPrefInner ( int  i,
int  prefInner 
)
inline

Set Preference to inner on first/second tracks: F(S)SLMSK.

Definition at line 185 of file DTConfigTraco.h.

References mps_fire::i, m_fslmsk, m_sslmsk, and prefInner().

Referenced by DTConfigTraco().

185  {
186  if (i == 0)
188  else
190  }
int prefInner(int i) const
Preference to inner on first/second tracks: F(S)SLMSK.
Definition: DTConfigTraco.h:98

◆ setSingleHflag()

void DTConfigTraco::setSingleHflag ( int  i,
int  singleHflag 
)
inline

Set Single HTRIG enabling on first/second tracks F(S)HTMSK.

Definition at line 169 of file DTConfigTraco.h.

References mps_fire::i, m_fhtmsk, m_shtmsk, and singleHflag().

Referenced by DTConfigTraco().

169  {
170  if (i == 0)
172  else
174  }
int singleHflag(int i) const
Single HTRIG enabling on first/second tracks F(S)HTMSK.
Definition: DTConfigTraco.h:82

◆ setSingleLenab()

void DTConfigTraco::setSingleLenab ( int  i,
int  singleLenab 
)
inline

Set Single LTRIG accept enabling on first/second tracks LTF.

Definition at line 220 of file DTConfigTraco.h.

References m_ltf, and singleLenab().

Referenced by DTConfigTraco().

220 { m_ltf = singleLenab; }
int singleLenab(int i) const
Single LTRIG accept enabling on first/second tracks LTF.

◆ setSingleLflag()

void DTConfigTraco::setSingleLflag ( int  i,
int  singleLflag 
)
inline

Set Single LTRIG enabling on first/second tracks: F(S)LTMSK.

Definition at line 177 of file DTConfigTraco.h.

References mps_fire::i, m_fltmsk, m_sltmsk, and singleLflag().

Referenced by DTConfigTraco().

177  {
178  if (i == 0)
180  else
182  }
int singleLflag(int i) const
Single LTRIG enabling on first/second tracks: F(S)LTMSK.
Definition: DTConfigTraco.h:90

◆ setSortKascend()

void DTConfigTraco::setSortKascend ( int  i,
int  sortKascend 
)
inline

Set Ascend. order for K sorting first/second tracks: F(S)HISM.

Definition at line 201 of file DTConfigTraco.h.

References mps_fire::i, m_fhism, m_shism, and sortKascend().

Referenced by DTConfigTraco().

201  {
202  if (i == 0)
204  else
206  }
int sortKascend(int i) const
Ascend. order for K sorting first/second tracks: F(S)HISM.

◆ setTcBxLts()

void DTConfigTraco::setTcBxLts ( int  TcBxLts)
inline

Set Suppr. of LTRIG in 4 BX before HTRIG: LTS.

Definition at line 217 of file DTConfigTraco.h.

References m_lts, and TcBxLts().

Referenced by DTConfigTraco().

217 { m_lts = TcBxLts; }
int TcBxLts() const
Suppr. of LTRIG in 4 BX before HTRIG: LTS.

◆ setTcKToll()

void DTConfigTraco::setTcKToll ( int  i,
int  TcKToll 
)
inline

Set K tollerance for correlation in TRACO: F(S)PRGCOMP.

Definition at line 209 of file DTConfigTraco.h.

References mps_fire::i, m_fprgcomp, m_sprgcomp, and TcKToll().

Referenced by DTConfigTraco().

209  {
210  if (i == 0)
212  else
214  }
int TcKToll(int i) const
K tollerance for correlation in TRACO: F(S)PRGCOMP.

◆ setTcReuse()

void DTConfigTraco::setTcReuse ( int  i,
int  TcReuse 
)
inline

Set Recycling of TRACO cand. in inner/outer SL : REUSEI/REUSEO.

Definition at line 161 of file DTConfigTraco.h.

References mps_fire::i, m_reusei, m_reuseo, and TcReuse().

Referenced by DTConfigTraco().

161  {
162  if (i == 0)
163  m_reusei = TcReuse;
164  else
165  m_reuseo = TcReuse;
166  }
int TcReuse(int i) const
Recycling of TRACO cand. in inner/outer SL : REUSEI/REUSEO.
Definition: DTConfigTraco.h:74

◆ setUsedBti()

void DTConfigTraco::setUsedBti ( int  bti,
int  mask 
)
inline

Set Connected bti in traco: bti mask.

Definition at line 223 of file DTConfigTraco.h.

References m_trgenb, gpuClustering::pixelStatus::mask, and BitArray< N >::set().

Referenced by DTConfigTraco().

223 { m_trgenb.set(bti - 1, mask); }
constexpr uint32_t mask
Definition: gpuClustering.h:26
BitArray< 16 > m_trgenb
void set(const int i)
Definition: BitArray.h:224

◆ singleHflag()

int DTConfigTraco::singleHflag ( int  i) const
inline

Single HTRIG enabling on first/second tracks F(S)HTMSK.

Definition at line 82 of file DTConfigTraco.h.

References mps_fire::i, m_fhtmsk, and m_shtmsk.

Referenced by print(), and setSingleHflag().

82  {
83  if (i == 0)
84  return m_fhtmsk;
85  else
86  return m_shtmsk;
87  }

◆ singleLenab()

int DTConfigTraco::singleLenab ( int  i) const
inline

Single LTRIG accept enabling on first/second tracks LTF.

Definition at line 133 of file DTConfigTraco.h.

References m_ltf.

Referenced by print(), setSingleLenab(), and DTTracoChip::storeUncorr().

133 { return m_ltf; }

◆ singleLflag()

int DTConfigTraco::singleLflag ( int  i) const
inline

Single LTRIG enabling on first/second tracks: F(S)LTMSK.

Definition at line 90 of file DTConfigTraco.h.

References mps_fire::i, m_fltmsk, and m_sltmsk.

Referenced by print(), setSingleLflag(), and DTTracoChip::storeUncorr().

90  {
91  if (i == 0)
92  return m_fltmsk;
93  else
94  return m_sltmsk;
95  }

◆ sortKascend()

int DTConfigTraco::sortKascend ( int  i) const
inline

Ascend. order for K sorting first/second tracks: F(S)HISM.

Definition at line 114 of file DTConfigTraco.h.

References mps_fire::i, m_fhism, and m_shism.

Referenced by DTTracoChip::bestCand(), print(), and setSortKascend().

114  {
115  if (i == 0)
116  return m_fhism;
117  else
118  return m_shism;
119  }

◆ TcBxLts()

int DTConfigTraco::TcBxLts ( ) const
inline

Suppr. of LTRIG in 4 BX before HTRIG: LTS.

Definition at line 130 of file DTConfigTraco.h.

References m_lts.

Referenced by print(), setTcBxLts(), and DTTracoChip::storeCorr().

130 { return m_lts; }

◆ TcKToll()

int DTConfigTraco::TcKToll ( int  i) const
inline

K tollerance for correlation in TRACO: F(S)PRGCOMP.

Definition at line 122 of file DTConfigTraco.h.

References mps_fire::i, m_fprgcomp, and m_sprgcomp.

Referenced by print(), setTcKToll(), and DTTracoChip::storeCorr().

122  {
123  if (i == 0)
124  return m_fprgcomp;
125  else
126  return m_sprgcomp;
127  }

◆ TcReuse()

int DTConfigTraco::TcReuse ( int  i) const
inline

Recycling of TRACO cand. in inner/outer SL : REUSEI/REUSEO.

Definition at line 74 of file DTConfigTraco.h.

References mps_fire::i, m_reusei, and m_reuseo.

Referenced by print(), setTcReuse(), and DTTracoChip::storeUncorr().

74  {
75  if (i == 0)
76  return m_reusei;
77  else
78  return m_reuseo;
79  }

◆ usedBti()

int DTConfigTraco::usedBti ( int  bti) const
inline

Connected bti in traco: bti mask.

Definition at line 136 of file DTConfigTraco.h.

References BitArray< N >::element(), and m_trgenb.

Referenced by print().

136 { return m_trgenb.element(bti - 1); }
BitArray< 16 > m_trgenb
int element(const int pos) const
Definition: BitArray.h:206

Member Data Documentation

◆ m_btic

int8_t DTConfigTraco::m_btic
private

Definition at line 240 of file DTConfigTraco.h.

Referenced by BTIC(), setBTIC(), and setDefaults().

◆ m_dd

int8_t DTConfigTraco::m_dd
private

Definition at line 241 of file DTConfigTraco.h.

Referenced by DD(), setDD(), and setDefaults().

◆ m_debug

int8_t DTConfigTraco::m_debug
private

Definition at line 238 of file DTConfigTraco.h.

Referenced by debug(), DTConfigTraco(), setDebug(), and setDefaults().

◆ m_fhism

int8_t DTConfigTraco::m_fhism
private

Definition at line 252 of file DTConfigTraco.h.

Referenced by setDefaults(), setSortKascend(), and sortKascend().

◆ m_fhtmsk

int8_t DTConfigTraco::m_fhtmsk
private

Definition at line 244 of file DTConfigTraco.h.

Referenced by setDefaults(), setSingleHflag(), and singleHflag().

◆ m_fhtprf

int8_t DTConfigTraco::m_fhtprf
private

Definition at line 250 of file DTConfigTraco.h.

Referenced by prefHtrig(), setDefaults(), and setPrefHtrig().

◆ m_fltmsk

int8_t DTConfigTraco::m_fltmsk
private

Definition at line 246 of file DTConfigTraco.h.

Referenced by setDefaults(), setSingleLflag(), and singleLflag().

◆ m_fprgcomp

int8_t DTConfigTraco::m_fprgcomp
private

Definition at line 254 of file DTConfigTraco.h.

Referenced by setDefaults(), setTcKToll(), and TcKToll().

◆ m_fslmsk

int8_t DTConfigTraco::m_fslmsk
private

Definition at line 248 of file DTConfigTraco.h.

Referenced by prefInner(), setDefaults(), and setPrefInner().

◆ m_ibtioff

int8_t DTConfigTraco::m_ibtioff
private

Definition at line 259 of file DTConfigTraco.h.

Referenced by IBTIOFF(), setDefaults(), and setIBTIOFF().

◆ m_kprgcom

int16_t DTConfigTraco::m_kprgcom
private

Definition at line 260 of file DTConfigTraco.h.

Referenced by BendingAngleCut(), setBendingAngleCut(), and setDefaults().

◆ m_krad

int8_t DTConfigTraco::m_krad
private

Definition at line 239 of file DTConfigTraco.h.

Referenced by KRAD(), setDefaults(), and setKRAD().

◆ m_ltf

int8_t DTConfigTraco::m_ltf
private

Definition at line 257 of file DTConfigTraco.h.

Referenced by setDefaults(), setSingleLenab(), and singleLenab().

◆ m_lts

int8_t DTConfigTraco::m_lts
private

Definition at line 256 of file DTConfigTraco.h.

Referenced by setDefaults(), setTcBxLts(), and TcBxLts().

◆ m_lvalidifh

int8_t DTConfigTraco::m_lvalidifh
private

Definition at line 261 of file DTConfigTraco.h.

Referenced by LVALIDIFH(), setDefaults(), and setLVALIDIFH().

◆ m_reusei

int8_t DTConfigTraco::m_reusei
private

Definition at line 242 of file DTConfigTraco.h.

Referenced by setDefaults(), setTcReuse(), and TcReuse().

◆ m_reuseo

int8_t DTConfigTraco::m_reuseo
private

Definition at line 243 of file DTConfigTraco.h.

Referenced by setDefaults(), setTcReuse(), and TcReuse().

◆ m_shism

int8_t DTConfigTraco::m_shism
private

Definition at line 253 of file DTConfigTraco.h.

Referenced by setDefaults(), setSortKascend(), and sortKascend().

◆ m_shtmsk

int8_t DTConfigTraco::m_shtmsk
private

Definition at line 245 of file DTConfigTraco.h.

Referenced by setDefaults(), setSingleHflag(), and singleHflag().

◆ m_shtprf

int8_t DTConfigTraco::m_shtprf
private

Definition at line 251 of file DTConfigTraco.h.

Referenced by prefHtrig(), setDefaults(), and setPrefHtrig().

◆ m_sltmsk

int8_t DTConfigTraco::m_sltmsk
private

Definition at line 247 of file DTConfigTraco.h.

Referenced by setDefaults(), setSingleLflag(), and singleLflag().

◆ m_sprgcomp

int8_t DTConfigTraco::m_sprgcomp
private

Definition at line 255 of file DTConfigTraco.h.

Referenced by setDefaults(), setTcKToll(), and TcKToll().

◆ m_sslmsk

int8_t DTConfigTraco::m_sslmsk
private

Definition at line 249 of file DTConfigTraco.h.

Referenced by prefInner(), setDefaults(), and setPrefInner().

◆ m_trgenb

BitArray<16> DTConfigTraco::m_trgenb
private

Definition at line 258 of file DTConfigTraco.h.

Referenced by setDefaults(), setUsedBti(), and usedBti().

◆ NMAXCAND

const int DTConfigTraco::NMAXCAND
static

Costant: maximum number of TRACO output candidates to TS.

Definition at line 44 of file DTConfigTraco.h.

◆ RESOLPSI

const int DTConfigTraco::RESOLPSI = 512
static

Costants: esolution for psi and DeltaPsiR (phi_B)

Definition at line 40 of file DTConfigTraco.h.

Referenced by DTTracoChip::calculateAngles().

◆ RESOLPSIR

const int DTConfigTraco::RESOLPSIR = 4096
static

Costant: resulution for psiR (phi)

Definition at line 42 of file DTConfigTraco.h.

Referenced by DTTracoChip::calculateAngles().