CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
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 
35 public:
36 
39 
41  //~GlobalObjectMap(){}
42 
43 public:
44 
46  inline const std::string & algoName() const
47  {
48  return m_algoName;
49  }
50 
51  void setAlgoName(const std::string& algoNameValue) {
52  m_algoName = algoNameValue;
53  }
54 
56  inline int algoBitNumber() const
57  {
58  return m_algoBitNumber;
59  }
60 
61  void setAlgoBitNumber(int algoBitNumberValue)
62  {
63  m_algoBitNumber = algoBitNumberValue;
64  }
65 
68  inline bool algoGtlResult() const {
69  return m_algoGtlResult;
70  }
71 
72  void setAlgoGtlResult(bool algoGtlResultValue) {
73  m_algoGtlResult = algoGtlResultValue;
74  }
75 
78  inline const std::vector<CombinationsInCond>& combinationVector() const
79  {
80  return m_combinationVector;
81  }
82 
83  void setCombinationVector(const std::vector<CombinationsInCond>& combinationVectorValue) {
84  m_combinationVector = combinationVectorValue;
85  }
86  void swapCombinationVector(std::vector<CombinationsInCond>& combinationVectorValue) {
87  m_combinationVector.swap(combinationVectorValue);
88  }
89 
92  inline const std::vector<GlobalLogicParser::OperandToken>& operandTokenVector() const {
93  return m_operandTokenVector;
94  }
95 
96  void setOperandTokenVector(const std::vector<GlobalLogicParser::OperandToken>& operandTokenVectorValue) {
97  m_operandTokenVector = operandTokenVectorValue;
98  }
99  void swapOperandTokenVector(std::vector<GlobalLogicParser::OperandToken>& operandTokenVectorValue) {
100  m_operandTokenVector.swap(operandTokenVectorValue);
101  }
102 
103 
106  inline const std::vector<ObjectTypeInCond>& objectTypeVector() const {
107  return m_objectTypeVector;
108  }
109  void setObjectTypeVector(const std::vector<ObjectTypeInCond>& objectTypeVectorValue) {
110  m_objectTypeVector = objectTypeVectorValue;
111  }
112  void swapObjectTypeVector(std::vector<ObjectTypeInCond>& objectTypeVectorValue) {
113  m_objectTypeVector.swap(objectTypeVectorValue);
114  }
115 
116 public:
117 
119  const CombinationsInCond* getCombinationsInCond(const std::string& condNameVal) const;
120 
122  const CombinationsInCond* getCombinationsInCond(const int condNumberVal) const;
123 
125  const bool getConditionResult(const std::string& condNameVal) const;
126 
127 public:
128 
130  void reset();
131 
133  void print(std::ostream& myCout) const;
134 
135 private:
136 
137  // name of the algorithm
139 
140  // bit number for algorithm
142 
143  // GTL result of the algorithm
145 
148  std::vector<GlobalLogicParser::OperandToken> m_operandTokenVector;
149 
150  // vector of combinations for all conditions in an algorithm
151  std::vector<CombinationsInCond> m_combinationVector;
152 
153  // vector of object type vectors for all conditions in an algorithm
154  std::vector<ObjectTypeInCond> m_objectTypeVector;
155 
156 };
157 
158 #endif /* L1GlobalTrigger_L1TGtObjectMap_h */
void setAlgoBitNumber(int algoBitNumberValue)
void swapOperandTokenVector(std::vector< GlobalLogicParser::OperandToken > &operandTokenVectorValue)
GlobalObjectMap()
constructor(s)
bool algoGtlResult() const
void swapCombinationVector(std::vector< CombinationsInCond > &combinationVectorValue)
const std::vector< ObjectTypeInCond > & objectTypeVector() const
void print(std::ostream &myCout) const
print the full object map
std::vector< ObjectTypeInCond > m_objectTypeVector
void setOperandTokenVector(const std::vector< GlobalLogicParser::OperandToken > &operandTokenVectorValue)
void reset()
reset the object map
void setObjectTypeVector(const std::vector< ObjectTypeInCond > &objectTypeVectorValue)
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
const std::vector< GlobalLogicParser::OperandToken > & operandTokenVector() const
const std::string & algoName() const
destructor
void swapObjectTypeVector(std::vector< ObjectTypeInCond > &objectTypeVectorValue)
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)