CMS 3D CMS Logo

L1TTwinMuxParams.h
Go to the documentation of this file.
1 
10 #ifndef L1TTwinMuxParams_h
11 #define L1TTwinMuxParams_h
12 
13 #include <memory>
14 #include <iostream>
15 #include <vector>
16 
18 
20 public:
22  enum { Version = 1 };
23 
24  class Node {
25  public:
27  unsigned version_;
28  std::vector<double> dparams_;
29  std::vector<unsigned> uparams_;
30  std::vector<int> iparams_;
31  std::vector<std::string> sparams_;
32  Node() {
33  type_ = "unspecified";
34  version_ = 0;
35  }
37  };
38  enum { CONFIG = 0, NUM_TM_PARAM_NODES = 7 };
39  enum {
48  };
49 
51 
52  // FW version
53  unsigned fwVersion() const { return fwVersion_; }
55 
58 
59  void set_UseOnlyRPC(int par1) { pnodes_[CONFIG].iparams_[UseOnlyRPC] = par1; }
60  int get_UseOnlyRPC() const { return pnodes_[CONFIG].iparams_[UseOnlyRPC]; }
61 
62  void set_UseOnlyDT(int par1) { pnodes_[CONFIG].iparams_[UseOnlyDT] = par1; }
63  int get_UseOnlyDT() const { return pnodes_[CONFIG].iparams_[UseOnlyDT]; }
64 
65  void set_UseLowQDT(int par1) { pnodes_[CONFIG].iparams_[UseLowQDT] = par1; }
66  int get_UseLowQDT() const { return pnodes_[CONFIG].iparams_[UseLowQDT]; }
67 
69  int get_CorrectDTBxwRPC() const { return pnodes_[CONFIG].iparams_[CorrectDTBxwRPC]; }
70 
71  void set_Verbose(int par1) { pnodes_[CONFIG].iparams_[Verbose] = par1; }
72  int get_Verbose() const { return pnodes_[CONFIG].iparams_[Verbose]; }
73 
75  int get_DphiWindowBxShift() const { return pnodes_[CONFIG].iparams_[DphiWindow]; }
76 
77  // print parameters to stream:
78  void print(std::ostream&) const;
79  friend std::ostream& operator<<(std::ostream& o, const L1TTwinMuxParams& p) {
80  p.print(o);
81  return o;
82  }
83 
84 private:
85  unsigned version_;
86  unsigned fwVersion_;
87 
88  std::vector<Node> pnodes_;
89  // std::vector here is just so we can use "blob" in DB and evade max size limitations...
90 
92 };
93 #endif
int get_Verbose() const
std::vector< double > dparams_
void set_Verbose(int par1)
friend std::ostream & operator<<(std::ostream &o, const L1TTwinMuxParams &p)
int get_UseOnlyRPC() const
std::vector< std::string > sparams_
int get_DphiWindowBxShift() const
int get_USERPCBXFORDTBELOWQUALITY() const
void set_UseOnlyRPC(int par1)
std::vector< Node > pnodes_
std::vector< int > iparams_
void set_UseOnlyDT(int par1)
void set_UseLowQDT(int par1)
void set_DphiWindowBxShift(int par1)
void set_CorrectDTBxwRPC(int par1)
void setFwVersion(unsigned fwVersion)
void print(std::ostream &) const
#define COND_SERIALIZABLE
Definition: Serializable.h:39
int get_UseLowQDT() const
int get_CorrectDTBxwRPC() const
unsigned fwVersion() const
int get_UseOnlyDT() const
void set_USERPCBXFORDTBELOWQUALITY(int par1)
std::vector< unsigned > uparams_