CMS 3D CMS Logo

L1GlobalTriggerObjectMap.h
Go to the documentation of this file.
1 #ifndef L1GlobalTrigger_L1GlobalTriggerObjectMap_h
2 #define L1GlobalTrigger_L1GlobalTriggerObjectMap_h
3 
18 // system include files
19 #include <string>
20 #include <vector>
21 
22 #include <iosfwd>
23 
24 // user include files
27 
29 
30 // forward declarations
31 
32 // class declaration
34 public:
37 
40 
41 public:
43  inline const std::string& algoName() const { return m_algoName; }
44 
45  void setAlgoName(const std::string& algoNameValue) { m_algoName = algoNameValue; }
46 
48  inline int algoBitNumber() const { return m_algoBitNumber; }
49 
50  void setAlgoBitNumber(int algoBitNumberValue) { m_algoBitNumber = algoBitNumberValue; }
51 
54  inline bool algoGtlResult() const { return m_algoGtlResult; }
55 
56  void setAlgoGtlResult(bool algoGtlResultValue) { m_algoGtlResult = algoGtlResultValue; }
57 
60  inline const std::vector<CombinationsInCond>& combinationVector() const { return m_combinationVector; }
61 
62  void setCombinationVector(const std::vector<CombinationsInCond>& combinationVectorValue) {
63  m_combinationVector = combinationVectorValue;
64  }
65  void swapCombinationVector(std::vector<CombinationsInCond>& combinationVectorValue) {
66  m_combinationVector.swap(combinationVectorValue);
67  }
68 
71  inline const std::vector<L1GtLogicParser::OperandToken>& operandTokenVector() const { return m_operandTokenVector; }
72 
73  void setOperandTokenVector(const std::vector<L1GtLogicParser::OperandToken>& operandTokenVectorValue) {
74  m_operandTokenVector = operandTokenVectorValue;
75  }
76  void swapOperandTokenVector(std::vector<L1GtLogicParser::OperandToken>& operandTokenVectorValue) {
77  m_operandTokenVector.swap(operandTokenVectorValue);
78  }
79 
82  inline const std::vector<ObjectTypeInCond>& objectTypeVector() const { return m_objectTypeVector; }
83  void setObjectTypeVector(const std::vector<ObjectTypeInCond>& objectTypeVectorValue) {
84  m_objectTypeVector = objectTypeVectorValue;
85  }
86  void swapObjectTypeVector(std::vector<ObjectTypeInCond>& objectTypeVectorValue) {
87  m_objectTypeVector.swap(objectTypeVectorValue);
88  }
89 
90 public:
92  const CombinationsInCond* getCombinationsInCond(const std::string& condNameVal) const;
93 
95  const CombinationsInCond* getCombinationsInCond(const int condNumberVal) const;
96 
98  const bool getConditionResult(const std::string& condNameVal) const;
99 
100 public:
102  void reset();
103 
105  void print(std::ostream& myCout) const;
106 
107 private:
108  // name of the algorithm
110 
111  // bit number for algorithm
113 
114  // GTL result of the algorithm
116 
119  std::vector<L1GtLogicParser::OperandToken> m_operandTokenVector;
120 
121  // vector of combinations for all conditions in an algorithm
122  std::vector<CombinationsInCond> m_combinationVector;
123 
124  // vector of object type vectors for all conditions in an algorithm
125  std::vector<ObjectTypeInCond> m_objectTypeVector;
126 };
127 
128 #endif /* L1GlobalTrigger_L1GlobalTriggerObjectMap_h */
const std::vector< CombinationsInCond > & combinationVector() const
void print(std::ostream &myCout) const
print the full object map
const std::vector< L1GtLogicParser::OperandToken > & operandTokenVector() const
void swapCombinationVector(std::vector< CombinationsInCond > &combinationVectorValue)
void setAlgoName(const std::string &algoNameValue)
const CombinationsInCond * getCombinationsInCond(const std::string &condNameVal) const
return all the combinations passing the requirements imposed in condition condNameVal ...
void swapOperandTokenVector(std::vector< L1GtLogicParser::OperandToken > &operandTokenVectorValue)
const std::string & algoName() const
get / set name for algorithm in the object map
std::vector< L1GtLogicParser::OperandToken > m_operandTokenVector
const bool getConditionResult(const std::string &condNameVal) const
return the result for the condition condNameVal
const std::vector< ObjectTypeInCond > & objectTypeVector() const
void setAlgoGtlResult(bool algoGtlResultValue)
void setObjectTypeVector(const std::vector< ObjectTypeInCond > &objectTypeVectorValue)
std::vector< CombinationsInCond > m_combinationVector
std::vector< ObjectTypeInCond > m_objectTypeVector
void setAlgoBitNumber(int algoBitNumberValue)
void setCombinationVector(const std::vector< CombinationsInCond > &combinationVectorValue)
void swapObjectTypeVector(std::vector< ObjectTypeInCond > &objectTypeVectorValue)
int algoBitNumber() const
get / set bit number for algorithm in the object map
L1GlobalTriggerObjectMap()
constructor(s)
void setOperandTokenVector(const std::vector< L1GtLogicParser::OperandToken > &operandTokenVectorValue)
std::vector< SingleCombInCond > CombinationsInCond
all the object combinations evaluated to true in the condition
void reset()
reset the object map