CMS 3D CMS Logo

GlobalAlgBlk.h
Go to the documentation of this file.
1 #ifndef L1Trigger_GlobalAlgBlk_h
2 #define L1Trigger_GlobalAlgBlk_h
3 
18 // system include files
19 #include <vector>
20 #include <iostream>
21 #include <iomanip>
22 
23 // user include files
26 //#include "DataFormats/L1GlobalTrigger/interface/L1GlobalTriggerReadoutSetup.h"
27 
28 // forward declarations
29 
30 
33 
34 // class interface
35 
37 {
38 
39 
40 
41 public:
43  GlobalAlgBlk(); // empty constructor, all members set to zero;
44 
45  GlobalAlgBlk(int orbitNr, int bxNr, int bxInEvent);
46 
48  virtual ~GlobalAlgBlk();
49 
50 
51 public:
52  static constexpr unsigned int maxPhysicsTriggers = 512;
53 
55  void setL1MenuUUID(int uuid) { m_orbitNr = uuid; }
56  void setL1FirmwareUUID(int fuuid) { m_bxNr = fuuid; }
57  void setbxInEventNr(int bxNr) { m_bxInEvent = bxNr; }
58  void setFinalORVeto(bool fOR) { m_finalORVeto = fOR; }
59  void setFinalORPreVeto(bool fOR){ m_finalORPreVeto = fOR; }
60  void setFinalOR(bool fOR) { m_finalOR = fOR; }
61  void setPreScColumn(int psC) { m_preScColumn = psC; }
62 
64  inline const int getL1MenuUUID() const { return m_orbitNr; }
65  inline const int getL1FirmwareUUID() const { return m_bxNr; }
66  inline const int getbxInEventNr() const { return m_bxInEvent; }
67  inline const bool getFinalOR() const { return m_finalOR; }
68  inline const bool getFinalORPreVeto() const { return m_finalORPreVeto; };
69  inline const bool getFinalORVeto() const { return m_finalORVeto; }
70  inline const int getPreScColumn() const { return m_preScColumn; }
71 
75 
77  void setAlgoDecisionInitial(unsigned int bit, bool val);
78  void setAlgoDecisionInterm(unsigned int bit, bool val);
79  void setAlgoDecisionFinal(unsigned int bit, bool val);
80 
82  std::vector<bool> const & getAlgoDecisionInitial() const {
83  return m_algoDecisionInitial;
84  }
85  std::vector<bool> const & getAlgoDecisionInterm() const {
87  }
88  std::vector<bool> const & getAlgoDecisionFinal() const {
89  return m_algoDecisionFinal;
90  }
91  bool getAlgoDecisionInitial(unsigned int bit) const;
92  bool getAlgoDecisionInterm(unsigned int bit) const;
93  bool getAlgoDecisionFinal(unsigned int bit) const;
94 
96  void reset();
97 
99  void print(std::ostream& myCout) const;
100 
101 
102 private:
103 
104  // where noted member data has been re-interpreted, to keep persistant data the same, as these features were added late in release cycle.
105 
108 
110  int m_bxNr;
111 
114 
115  // finalOR
116  bool m_finalOR;
119 
120  //Prescale Column
122 
123 
124  std::vector<bool> m_algoDecisionInitial;
125  std::vector<bool> m_algoDecisionPreScaled; // -> Interm
126  std::vector<bool> m_algoDecisionFinal;
127 
128 
129 
130 };
131 
132 #endif /*L1Trigger_GlobalAlgBlk_h*/
const int getL1MenuUUID() const
get simple members
Definition: GlobalAlgBlk.h:64
void setL1MenuUUID(int uuid)
set simple members
Definition: GlobalAlgBlk.h:55
const int getbxInEventNr() const
Definition: GlobalAlgBlk.h:66
std::vector< bool > const & getAlgoDecisionInitial() const
Get decision bits.
Definition: GlobalAlgBlk.h:82
std::vector< bool > m_algoDecisionInitial
Definition: GlobalAlgBlk.h:124
void copyIntermToFinal()
Definition: GlobalAlgBlk.h:74
void setFinalORPreVeto(bool fOR)
Definition: GlobalAlgBlk.h:59
std::vector< bool > const & getAlgoDecisionFinal() const
Definition: GlobalAlgBlk.h:88
void setAlgoDecisionInitial(unsigned int bit, bool val)
Set decision bits.
Definition: GlobalAlgBlk.cc:88
void setbxInEventNr(int bxNr)
Definition: GlobalAlgBlk.h:57
GlobalAlgBlk()
constructors
Definition: GlobalAlgBlk.cc:53
bool m_finalORPreVeto
Definition: GlobalAlgBlk.h:117
BXVector< GlobalAlgBlk > GlobalAlgBlkBxCollection
Definition: GlobalAlgBlk.h:31
void copyInitialToInterm()
Copy vectors words.
Definition: GlobalAlgBlk.h:73
int m_bxNr
bunch cross number of the actual bx -> L1FirmwareUUID
Definition: GlobalAlgBlk.h:110
const bool getFinalORVeto() const
Definition: GlobalAlgBlk.h:69
const bool getFinalORPreVeto() const
Definition: GlobalAlgBlk.h:68
const int getL1FirmwareUUID() const
Definition: GlobalAlgBlk.h:65
#define constexpr
const bool getFinalOR() const
Definition: GlobalAlgBlk.h:67
void print(std::ostream &myCout) const
pretty print the content of a GlobalAlgBlk
void reset()
reset the content of a GlobalAlgBlk
const int getPreScColumn() const
Definition: GlobalAlgBlk.h:70
virtual ~GlobalAlgBlk()
destructor
Definition: GlobalAlgBlk.cc:80
void setAlgoDecisionInterm(unsigned int bit, bool val)
void setFinalOR(bool fOR)
Definition: GlobalAlgBlk.h:60
void setFinalORVeto(bool fOR)
Definition: GlobalAlgBlk.h:58
static unsigned int maxPhysicsTriggers
Definition: GlobalAlgBlk.h:52
int m_orbitNr
orbit number -> L1MenuUUID
Definition: GlobalAlgBlk.h:107
void setL1FirmwareUUID(int fuuid)
Definition: GlobalAlgBlk.h:56
std::vector< bool > m_algoDecisionFinal
Definition: GlobalAlgBlk.h:126
int m_bxInEvent
bunch cross in the GT event record (E,F,0,1,2)
Definition: GlobalAlgBlk.h:113
std::vector< bool > const & getAlgoDecisionInterm() const
Definition: GlobalAlgBlk.h:85
std::vector< bool > m_algoDecisionPreScaled
Definition: GlobalAlgBlk.h:125
void setPreScColumn(int psC)
Definition: GlobalAlgBlk.h:61
bool m_finalORVeto
Definition: GlobalAlgBlk.h:118
void setAlgoDecisionFinal(unsigned int bit, bool val)