CMS 3D CMS Logo

L1GtHfRingEtSumsTemplate.cc
Go to the documentation of this file.
1 
17 // this class header
19 
20 // system include files
21 
22 #include <iostream>
23 #include <iomanip>
24 
25 // user include files
26 
27 // base class
28 
31 
32 // forward declarations
33 
34 // constructors
36 
39 }
40 
42  : L1GtCondition(cName, CondHfRingEtSums, cType) {
44 
45  // should be always 1 - they are global quantities...
46  int nObjects = nrObjects();
47 
48  if (nObjects > 0) {
49  m_objectParameter.reserve(nObjects);
50 
51  m_objectType.reserve(nObjects);
52  m_objectType.assign(nObjects, HfRingEtSums);
53  }
54 }
55 
56 // copy constructor
58  copy(cp);
59 }
60 
61 // destructor
63  // empty now
64 }
65 
66 // assign operator
68  copy(cp);
69  return *this;
70 }
71 
72 // setConditionParameter - set the parameters of the condition
73 void L1GtHfRingEtSumsTemplate::setConditionParameter(const std::vector<ObjectParameter>& objParameter) {
74  m_objectParameter = objParameter;
75 }
76 
77 void L1GtHfRingEtSumsTemplate::print(std::ostream& myCout) const {
78  myCout << "\n L1GtHfRingEtSumsTemplate print..." << std::endl;
79 
80  L1GtCondition::print(myCout);
81 
82  int nObjects = nrObjects();
83 
84  for (int i = 0; i < nObjects; i++) {
85  myCout << std::endl;
86  myCout << " Template for object " << i << std::endl;
87  myCout << " etSumIndex = " << std::hex << m_objectParameter[i].etSumIndex << " [ dec ]" << std::endl;
88  myCout << " etSumThreshold = " << std::hex << m_objectParameter[i].etSumThreshold << " [ hex ]" << std::endl;
89  }
90 
91  // reset to decimal output
92  myCout << std::dec << std::endl;
93 }
94 
95 // output stream operator
96 std::ostream& operator<<(std::ostream& os, const L1GtHfRingEtSumsTemplate& result) {
97  result.print(os);
98  return os;
99 }
100 
102  m_condName = cp.condName();
103  m_condCategory = cp.condCategory();
104  m_condType = cp.condType();
105  m_objectType = cp.objectType();
106  m_condGEq = cp.condGEq();
107  m_condChipNr = cp.condChipNr();
108 
109  m_objectParameter = *(cp.objectParameter());
110 }
void print(std::ostream &myCout) const override
print the condition
L1GtConditionType
std::vector< ObjectParameter > m_objectParameter
variables containing the parameters
std::vector< L1GtObject > m_objectType
the trigger object type(s)
L1GtConditionType m_condType
the type of the condition (1s, etc)
L1GtConditionCategory m_condCategory
the category of the condition
void copy(const L1GtHfRingEtSumsTemplate &cp)
copy function for copy constructor and operator=
std::string m_condName
the name of the condition
std::ostream & operator<<(std::ostream &os, const L1GtHfRingEtSumsTemplate &result)
void setConditionParameter(const std::vector< ObjectParameter > &)
set functions
L1GtHfRingEtSumsTemplate & operator=(const L1GtHfRingEtSumsTemplate &)
bool m_condGEq
the operator used for the condition (>=, =): true for >=
const int nrObjects() const
get number of trigger objects
int m_condChipNr
condition is located on condition chip m_condChipNr
virtual void print(std::ostream &myCout) const
print condition