CMS 3D CMS Logo

GlobalAlgBlk.h
Go to the documentation of this file.
1 #ifndef DataFormats_L1TGlobal_GlobalAlgBlk_h
2 #define DataFormats_L1TGlobal_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"
28 
29 // forward declarations
30 
33 
38 
39 // class interface
40 
41 class GlobalAlgBlk {
42 public:
44  GlobalAlgBlk(); // empty constructor, all members set to zero;
45 
46  GlobalAlgBlk(int orbitNr, int bxNr, int bxInEvent);
47 
49  virtual ~GlobalAlgBlk();
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 { return m_algoDecisionInitial; }
83  std::vector<bool> const& getAlgoDecisionInterm() const { return m_algoDecisionPreScaled; }
84  std::vector<bool> const& getAlgoDecisionFinal() const { return m_algoDecisionFinal; }
85  bool getAlgoDecisionInitial(unsigned int bit) const;
86  bool getAlgoDecisionInterm(unsigned int bit) const;
87  bool getAlgoDecisionFinal(unsigned int bit) const;
88 
90  void reset();
91 
92  // compare the content of this GlobalAlgBlk with another one
93  virtual bool operator==(const GlobalAlgBlk& rhs) const;
94  virtual inline bool operator!=(const GlobalAlgBlk& rhs) const { return !(operator==(rhs)); };
95 
97  void print(std::ostream& myCout) const;
98 
99 private:
100  // where noted member data has been re-interpreted, to keep persistant data the same, as these features were added late in release cycle.
101 
104 
106  int m_bxNr;
107 
110 
111  // finalOR
112  bool m_finalOR;
115 
116  //Prescale Column
118 
119  std::vector<bool> m_algoDecisionInitial;
120  std::vector<bool> m_algoDecisionPreScaled; // -> Interm
121  std::vector<bool> m_algoDecisionFinal;
122 };
123 
124 #endif /*DataFormats_L1TGlobal_GlobalAlgBlk_h*/
GlobalAlgBlkRef
l1t::ObjectRef< GlobalAlgBlk > GlobalAlgBlkRef
Definition: GlobalAlgBlk.h:34
GlobalAlgBlk::getL1FirmwareUUID
const int getL1FirmwareUUID() const
Definition: GlobalAlgBlk.h:65
GlobalAlgBlk::getFinalORVeto
const bool getFinalORVeto() const
Definition: GlobalAlgBlk.h:69
GlobalAlgBlk::operator!=
virtual bool operator!=(const GlobalAlgBlk &rhs) const
Definition: GlobalAlgBlk.h:94
BXVector.h
GlobalAlgBlk::setbxInEventNr
void setbxInEventNr(int bxNr)
Definition: GlobalAlgBlk.h:57
GlobalAlgBlk::getFinalORPreVeto
const bool getFinalORPreVeto() const
Definition: GlobalAlgBlk.h:68
GlobalAlgBlkRefBxCollection
l1t::ObjectRefBxCollection< GlobalAlgBlk > GlobalAlgBlkRefBxCollection
Definition: GlobalAlgBlk.h:35
GlobalAlgBlk::setL1MenuUUID
void setL1MenuUUID(int uuid)
set simple members
Definition: GlobalAlgBlk.h:55
GlobalAlgBlk::m_preScColumn
int m_preScColumn
Definition: GlobalAlgBlk.h:117
GlobalAlgBlk::copyInitialToInterm
void copyInitialToInterm()
Copy vectors words.
Definition: GlobalAlgBlk.h:73
GlobalAlgBlk::operator==
virtual bool operator==(const GlobalAlgBlk &rhs) const
Definition: GlobalAlgBlk.cc:142
GlobalAlgBlk::getAlgoDecisionInterm
std::vector< bool > const & getAlgoDecisionInterm() const
Definition: GlobalAlgBlk.h:83
GlobalAlgBlk::m_algoDecisionFinal
std::vector< bool > m_algoDecisionFinal
Definition: GlobalAlgBlk.h:121
GlobalAlgBlkBxCollection
BXVector< GlobalAlgBlk > GlobalAlgBlkBxCollection
Definition: GlobalAlgBlk.h:31
GlobalAlgBlk::setFinalORVeto
void setFinalORVeto(bool fOR)
Definition: GlobalAlgBlk.h:58
edm::Ref
Definition: AssociativeIterator.h:58
GlobalAlgBlk::getbxInEventNr
const int getbxInEventNr() const
Definition: GlobalAlgBlk.h:66
BXVector
Definition: BXVector.h:15
GlobalAlgBlk::m_bxNr
int m_bxNr
bunch cross number of the actual bx -> L1FirmwareUUID
Definition: GlobalAlgBlk.h:106
GlobalAlgBlk::setPreScColumn
void setPreScColumn(int psC)
Definition: GlobalAlgBlk.h:61
GlobalAlgBlk::getL1MenuUUID
const int getL1MenuUUID() const
get simple members
Definition: GlobalAlgBlk.h:64
GlobalAlgBlk::m_algoDecisionPreScaled
std::vector< bool > m_algoDecisionPreScaled
Definition: GlobalAlgBlk.h:120
createPayload.uuid
uuid
Definition: createPayload.py:391
GlobalAlgBlk::setAlgoDecisionInterm
void setAlgoDecisionInterm(unsigned int bit, bool val)
Definition: GlobalAlgBlk.cc:84
GlobalAlgBlk::getFinalOR
const bool getFinalOR() const
Definition: GlobalAlgBlk.h:67
GlobalAlgBlk::getPreScColumn
const int getPreScColumn() const
Definition: GlobalAlgBlk.h:70
typedefs.h
GlobalAlgBlk::setFinalOR
void setFinalOR(bool fOR)
Definition: GlobalAlgBlk.h:60
GlobalAlgBlk::setAlgoDecisionFinal
void setAlgoDecisionFinal(unsigned int bit, bool val)
Definition: GlobalAlgBlk.cc:94
GlobalAlgBlk::m_finalORVeto
bool m_finalORVeto
Definition: GlobalAlgBlk.h:114
GlobalAlgBlk::setAlgoDecisionInitial
void setAlgoDecisionInitial(unsigned int bit, bool val)
Set decision bits.
Definition: GlobalAlgBlk.cc:73
GlobalAlgBlk::m_algoDecisionInitial
std::vector< bool > m_algoDecisionInitial
Definition: GlobalAlgBlk.h:119
GlobalAlgBlk::m_orbitNr
int m_orbitNr
orbit number -> L1MenuUUID
Definition: GlobalAlgBlk.h:103
GlobalAlgBlk::setL1FirmwareUUID
void setL1FirmwareUUID(int fuuid)
Definition: GlobalAlgBlk.h:56
l1t::ObjectRefPair
std::pair< edm::Ref< BXVector< T > >, edm::Ref< BXVector< T > >> ObjectRefPair
Definition: L1TObjComparison.h:14
GlobalAlgBlk::getAlgoDecisionInitial
std::vector< bool > const & getAlgoDecisionInitial() const
Get decision bits.
Definition: GlobalAlgBlk.h:82
GlobalAlgBlk::GlobalAlgBlk
GlobalAlgBlk()
constructors
Definition: GlobalAlgBlk.cc:46
GlobalAlgBlk::setFinalORPreVeto
void setFinalORPreVeto(bool fOR)
Definition: GlobalAlgBlk.h:59
GlobalAlgBlk::print
void print(std::ostream &myCout) const
pretty print the content of a GlobalAlgBlk
Definition: GlobalAlgBlk.cc:178
GlobalAlgBlk::m_bxInEvent
int m_bxInEvent
bunch cross in the GT event record (E,F,0,1,2)
Definition: GlobalAlgBlk.h:109
GlobalAlgBlk::m_finalORPreVeto
bool m_finalORPreVeto
Definition: GlobalAlgBlk.h:113
heppy_batch.val
val
Definition: heppy_batch.py:351
GlobalAlgBlkRefPairBxCollection
l1t::ObjectRefPairBxCollection< GlobalAlgBlk > GlobalAlgBlkRefPairBxCollection
Definition: GlobalAlgBlk.h:37
GlobalAlgBlk::m_finalOR
bool m_finalOR
Definition: GlobalAlgBlk.h:112
GlobalAlgBlk::getAlgoDecisionFinal
std::vector< bool > const & getAlgoDecisionFinal() const
Definition: GlobalAlgBlk.h:84
GlobalAlgBlkRefPair
l1t::ObjectRefPair< GlobalAlgBlk > GlobalAlgBlkRefPair
Definition: GlobalAlgBlk.h:36
GlobalAlgBlk::maxPhysicsTriggers
static constexpr unsigned int maxPhysicsTriggers
Definition: GlobalAlgBlk.h:52
GlobalAlgBlk
Definition: GlobalAlgBlk.h:41
L1TObjComparison.h
GlobalAlgBlk::reset
void reset()
reset the content of a GlobalAlgBlk
Definition: GlobalAlgBlk.cc:124
GlobalAlgBlk::copyIntermToFinal
void copyIntermToFinal()
Definition: GlobalAlgBlk.h:74
GlobalAlgBlk::~GlobalAlgBlk
virtual ~GlobalAlgBlk()
destructor
Definition: GlobalAlgBlk.cc:68