File indexing completed on 2023-10-25 09:39:17
0001 #ifndef L1GlobalTrigger_L1GlobalTriggerEvmReadoutRecord_h
0002 #define L1GlobalTrigger_L1GlobalTriggerEvmReadoutRecord_h
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019 #include <string>
0020 #include <vector>
0021 #include <iosfwd>
0022
0023
0024 #include "DataFormats/L1GlobalTrigger/interface/L1GlobalTriggerReadoutSetupFwd.h"
0025 #include "DataFormats/L1GlobalTrigger/interface/L1GlobalTriggerReadoutSetup.h"
0026
0027 #include "DataFormats/L1GlobalTrigger/interface/L1GtfeWord.h"
0028 #include "DataFormats/L1GlobalTrigger/interface/L1GtfeExtWord.h"
0029 #include "DataFormats/L1GlobalTrigger/interface/L1TcsWord.h"
0030 #include "DataFormats/L1GlobalTrigger/interface/L1GtFdlWord.h"
0031
0032
0033
0034
0035
0036 class L1GlobalTriggerEvmReadoutRecord {
0037 public:
0038
0039 L1GlobalTriggerEvmReadoutRecord();
0040
0041 L1GlobalTriggerEvmReadoutRecord(int NumberBxInEvent);
0042
0043 L1GlobalTriggerEvmReadoutRecord(const int numberBxInEvent, const int numberFdlBoards);
0044
0045
0046 L1GlobalTriggerEvmReadoutRecord(const L1GlobalTriggerEvmReadoutRecord&);
0047
0048
0049 virtual ~L1GlobalTriggerEvmReadoutRecord();
0050
0051
0052 L1GlobalTriggerEvmReadoutRecord& operator=(const L1GlobalTriggerEvmReadoutRecord&);
0053
0054
0055 bool operator==(const L1GlobalTriggerEvmReadoutRecord&) const;
0056
0057
0058 bool operator!=(const L1GlobalTriggerEvmReadoutRecord&) const;
0059
0060 public:
0061
0062
0063
0064 const bool decision(int bxInEvent) const;
0065 const DecisionWord decisionWord(int bxInEvent) const;
0066
0067 const bool decision() const;
0068 const DecisionWord decisionWord() const;
0069
0070
0071 void setDecision(bool t, int bxInEvent);
0072 void setDecisionWord(const DecisionWord& decisionWordValue, int bxInEvent);
0073
0074 void setDecision(bool t);
0075 void setDecisionWord(const DecisionWord& decisionWordValue);
0076
0077
0078 void printGtDecision(std::ostream& myCout, int bxInEventValue) const;
0079 void printGtDecision(std::ostream& myCout) const;
0080
0081
0082 void printTechnicalTrigger(std::ostream& myCout, int bxInEventValue) const;
0083 void printTechnicalTrigger(std::ostream& myCout) const;
0084
0085
0086
0087
0088
0089
0090
0091
0092 const L1GtfeExtWord gtfeWord() const;
0093 void setGtfeWord(const L1GtfeExtWord&);
0094
0095
0096 const L1TcsWord tcsWord() const;
0097 void setTcsWord(const L1TcsWord&);
0098
0099
0100 const std::vector<L1GtFdlWord> gtFdlVector() const { return m_gtFdlWord; }
0101
0102 std::vector<L1GtFdlWord>& gtFdlVector() { return m_gtFdlWord; }
0103
0104
0105 const L1GtFdlWord gtFdlWord(int bxInEvent) const;
0106 const L1GtFdlWord gtFdlWord() const;
0107
0108 void setGtFdlWord(const L1GtFdlWord&, int bxInEvent);
0109 void setGtFdlWord(const L1GtFdlWord&);
0110
0111
0112
0113
0114 void reset();
0115
0116
0117 void print(std::ostream& myCout) const;
0118
0119
0120 friend std::ostream& operator<<(std::ostream&, const L1GlobalTriggerEvmReadoutRecord&);
0121
0122 private:
0123 L1GtfeExtWord m_gtfeWord;
0124 L1TcsWord m_tcsWord;
0125
0126 std::vector<L1GtFdlWord> m_gtFdlWord;
0127 };
0128
0129 #endif