CMS 3D CMS Logo

GlobalObjectMap.h
Go to the documentation of this file.
1 #ifndef L1GlobalTrigger_L1TGtObjectMap_h
2 #define L1GlobalTrigger_L1TGtObjectMap_h
3 
18 // system include files
19 #include <string>
20 #include <vector>
21 
22 #include <iosfwd>
23 
24 // user include files
26 
28 
29 // forward declarations
30 
31 // class declaration
33 {
34 public:
35 
38 
40  //~GlobalObjectMap(){}
41 
42 public:
43 
45  inline const std::string & algoName() const
46  {
47  return m_algoName;
48  }
49 
50  void setAlgoName(const std::string& algoNameValue) {
51  m_algoName = algoNameValue;
52  }
53 
55  inline int algoBitNumber() const
56  {
57  return m_algoBitNumber;
58  }
59 
60  void setAlgoBitNumber(int algoBitNumberValue)
61  {
62  m_algoBitNumber = algoBitNumberValue;
63  }
64 
67  inline bool algoGtlResult() const {
68  return m_algoGtlResult;
69  }
70 
71  void setAlgoGtlResult(bool algoGtlResultValue) {
72  m_algoGtlResult = algoGtlResultValue;
73  }
74 
77  inline const std::vector<CombinationsInCond>& combinationVector() const
78  {
79  return m_combinationVector;
80  }
81 
82  void setCombinationVector(const std::vector<CombinationsInCond>& combinationVectorValue) {
83  m_combinationVector = combinationVectorValue;
84  }
85  void swapCombinationVector(std::vector<CombinationsInCond>& combinationVectorValue) {
86  m_combinationVector.swap(combinationVectorValue);
87  }
88 
91  inline const std::vector<GlobalLogicParser::OperandToken>& operandTokenVector() const {
92  return m_operandTokenVector;
93  }
94 
95  void setOperandTokenVector(const std::vector<GlobalLogicParser::OperandToken>& operandTokenVectorValue) {
96  m_operandTokenVector = operandTokenVectorValue;
97  }
98  void swapOperandTokenVector(std::vector<GlobalLogicParser::OperandToken>& operandTokenVectorValue) {
99  m_operandTokenVector.swap(operandTokenVectorValue);
100  }
101 
102 
105  inline const std::vector<L1TObjectTypeInCond>& objectTypeVector() const {
106  return m_objectTypeVector;
107  }
108  void setObjectTypeVector(const std::vector<L1TObjectTypeInCond>& objectTypeVectorValue) {
109  m_objectTypeVector = objectTypeVectorValue;
110  }
111  void swapObjectTypeVector(std::vector<L1TObjectTypeInCond>& objectTypeVectorValue) {
112  m_objectTypeVector.swap(objectTypeVectorValue);
113  }
114 
115 public:
116 
118  const CombinationsInCond* getCombinationsInCond(const std::string& condNameVal) const;
119 
121  const CombinationsInCond* getCombinationsInCond(const int condNumberVal) const;
122 
124  const bool getConditionResult(const std::string& condNameVal) const;
125 
126 public:
127 
129  void reset();
130 
132  void print(std::ostream& myCout) const;
133 
134 private:
135 
136  // name of the algorithm
138 
139  // bit number for algorithm
141 
142  // GTL result of the algorithm
144 
147  std::vector<GlobalLogicParser::OperandToken> m_operandTokenVector;
148 
149  // vector of combinations for all conditions in an algorithm
150  std::vector<CombinationsInCond> m_combinationVector;
151 
152  // vector of object type vectors for all conditions in an algorithm
153  std::vector<L1TObjectTypeInCond> m_objectTypeVector;
154 
155 };
156 
157 #endif /* L1GlobalTrigger_L1TGtObjectMap_h */
void setAlgoBitNumber(int algoBitNumberValue)
void swapOperandTokenVector(std::vector< GlobalLogicParser::OperandToken > &operandTokenVectorValue)
const std::vector< L1TObjectTypeInCond > & objectTypeVector() const
GlobalObjectMap()
constructor(s)
bool algoGtlResult() const
void swapObjectTypeVector(std::vector< L1TObjectTypeInCond > &objectTypeVectorValue)
void swapCombinationVector(std::vector< CombinationsInCond > &combinationVectorValue)
void setObjectTypeVector(const std::vector< L1TObjectTypeInCond > &objectTypeVectorValue)
void print(std::ostream &myCout) const
print the full object map
void setOperandTokenVector(const std::vector< GlobalLogicParser::OperandToken > &operandTokenVectorValue)
void reset()
reset the object map
int algoBitNumber() const
get / set bit number for algorithm in the object map
void setAlgoGtlResult(bool algoGtlResultValue)
const std::vector< CombinationsInCond > & combinationVector() const
std::vector< GlobalLogicParser::OperandToken > m_operandTokenVector
std::vector< L1TObjectTypeInCond > m_objectTypeVector
const std::vector< GlobalLogicParser::OperandToken > & operandTokenVector() const
const std::string & algoName() const
destructor
const bool getConditionResult(const std::string &condNameVal) const
return the result for the condition condNameVal
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 ...
std::vector< CombinationsInCond > m_combinationVector
std::vector< SingleCombInCond > CombinationsInCond
all the object combinations evaluated to true in the condition
std::string m_algoName
void setCombinationVector(const std::vector< CombinationsInCond > &combinationVectorValue)