CMS 3D CMS Logo

L1TMuonBarrelParams.h
Go to the documentation of this file.
1 
10 #ifndef L1TBMTFParams_h
11 #define L1TBMTFParams_h
12 
13 #include <memory>
14 #include <iostream>
15 #include <vector>
16 
22 
24 public:
26  enum { Version = 1 };
27 
28  class Node {
29  public:
31  unsigned version_;
33  std::vector<double> dparams_;
34  std::vector<unsigned> uparams_;
35  std::vector<int> iparams_;
36  std::vector<std::string> sparams_;
37  Node(){ type_="unspecified"; version_=0; }
39  };
40  enum {
41  CONFIG = 0,
43  };
44 
61 
62  // after initial integration with downstream code, a small update will change:
65  // to this:
66  //L1MuDTTFParameters & l1mudttfparams(){return l1mudttfparams_[0]; }
67  //L1MuDTTFMasks & l1mudttfmasks(){return l1mudttfmasks_[0]; }
68 
70  typedef std::map<short, short, std::less<short> > LUT;
72  typedef std::pair< short, short > LUTID;
73  typedef std::pair< short, std::vector<short> > LUTCONT;
74  typedef std::map< LUTID, LUTCONT > qpLUT;
76  typedef std::map<short, L1MuDTEtaPattern, std::less<short> > etaLUT;
77 
78  class LUTParams{
79  public:
80  std::vector<LUT> pta_lut_;
81  std::vector<LUT> phi_lut_;
82  std::vector<int> pta_threshold_;
83  qpLUT qp_lut_;
84  etaLUT eta_lut_;
85 
86  // helper class for extrapolation look-up tables
87  class extLUT {
88  public:
89  LUT low;
90  LUT high;
92  };
93  std::vector<extLUT> ext_lut_;
94  LUTParams() : pta_lut_(0), phi_lut_(0), pta_threshold_(6), ext_lut_(0){ }
96  };
97 
98 
100 
101  public:
102  unsigned version_;
103  unsigned fwVersion_;
104 
105  std::vector<Node> pnodes_;
106  // std::vector here is just so we can use "blob" in DB and evade max size limitations...
107  std::vector<L1MuDTTFParameters> l1mudttfparams_;
108  std::vector<L1MuDTTFMasks> l1mudttfmasks_;
110 
112 };
113 #endif
L1MuDTTFParameters l1mudttfparams
std::vector< double > dparams_
std::pair< short, short > LUTID
Qual Pattern LUT.
std::pair< short, std::vector< short > > LUTCONT
L1MuDTTFMasks l1mudttfmasks
std::vector< unsigned > uparams_
std::map< LUTID, LUTCONT > qpLUT
Definition: LUT.h:29
std::map< short, short, std::less< short > > LUT
L1MuBMPtaLut.
#define COND_SERIALIZABLE
Definition: Serializable.h:38
std::vector< std::string > sparams_
std::vector< Node > pnodes_
std::vector< L1MuDTTFParameters > l1mudttfparams_
std::vector< L1MuDTTFMasks > l1mudttfmasks_
std::map< short, L1MuDTEtaPattern, std::less< short > > etaLUT
Eta Pattern LUT.