CMS 3D CMS Logo

EnergySumTemplate.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 
29 
30 // forward declarations
31 
32 // constructors
34  : GlobalCondition()
35 {
36 
38 
39 }
40 
42  : GlobalCondition(cName)
43 {
44 
46 
47 }
48 
50  : GlobalCondition(cName, l1t::CondEnergySum, cType)
51 {
52 
54 
55  // should be always 1 - they are global quantities...
56  int nObjects = nrObjects();
57 
58  if (nObjects > 0) {
59  m_objectParameter.reserve(nObjects);
60  m_objectType.reserve(nObjects);
61  }
62 
63 }
64 
65 // copy constructor
68 {
69  copy(cp);
70 }
71 
72 // destructor
74 {
75  // empty now
76 }
77 
78 // assign operator
80 {
81 
82  copy(cp);
83  return *this;
84 }
85 
86 
87 // setConditionParameter - set the parameters of the condition
89  const std::vector<ObjectParameter>& objParameter)
90 {
91 
92  m_objectParameter = objParameter;
93 
94 }
95 
96 void EnergySumTemplate::print(std::ostream& myCout) const
97 {
98 
99  myCout << "\n EnergySumTemplate print..." << std::endl;
100 
101  GlobalCondition::print(myCout);
102 
103  int nObjects = nrObjects();
104 
105  for (int i = 0; i < nObjects; i++) {
106  myCout << std::endl;
107  myCout << " Template for object " << i << " [ hex ]" << std::endl;
108  myCout << " etThreshold = "
109  << std::hex << m_objectParameter[i].etLowThreshold << " - " << m_objectParameter[i].etHighThreshold << std::endl;
110  myCout << " energyOverflow = "
111  << std::hex << m_objectParameter[0].energyOverflow << std::endl;
112 
113  if (m_condType == l1t::TypeETM) {
114  myCout << " phi = "
115  << std::hex << m_objectParameter[i].phiRange1Word
116  << std::hex << m_objectParameter[i].phiRange0Word
117  << std::endl;
118  } else if (m_condType == l1t::TypeHTM) {
119  myCout << " phi = "
120  << std::hex << m_objectParameter[i].phiRange0Word
121  << std::endl;
122  } else if (m_condType == l1t::TypeETMHF) {
123  myCout << " phi = "
124  << std::hex << m_objectParameter[i].phiRange0Word
125  << std::endl;
126  }
127 
128  }
129 
130  // reset to decimal output
131  myCout << std::dec << std::endl;
132 }
133 
135 {
136 
137  m_condName = cp.condName();
139  m_condType = cp.condType();
140  m_objectType = cp.objectType();
141  m_condGEq = cp.condGEq();
142  m_condChipNr = cp.condChipNr();
144 
146 
147 }
148 
149 // output stream operator
150 std::ostream& operator<<(std::ostream& os, const EnergySumTemplate& result)
151 {
152  result.print(os);
153  return os;
154 
155 }
156 
157 
const int nrObjects() const
get number of trigger objects
EnergySumTemplate & operator=(const EnergySumTemplate &)
void copy(const EnergySumTemplate &cp)
copy function for copy constructor and operator=
bool m_condGEq
the operator used for the condition (>=, =): true for >=
const bool condGEq() const
get / set condition GEq flag
delete x;
Definition: CaloConfig.h:22
const l1t::GtConditionCategory & condCategory() const
get / set the category of the condition
virtual void print(std::ostream &myCout) const
print the condition
friend std::ostream & operator<<(std::ostream &, const EnergySumTemplate &)
output stream operator
const l1t::GtConditionType & condType() const
get / set the type of the condition (1s, etc)
const std::vector< ObjectParameter > * objectParameter() const
const int & condRelativeBx() const
get / set the condition relative bx
const std::vector< l1t::GlobalObject > & objectType() const
get / set the trigger object type(s) in the condition
std::string m_condName
the name of the condition
const int & condChipNr() const
get / set the condition-chip number the condition is located on
int m_condChipNr
condition is located on condition chip m_condChipNr
l1t::GtConditionCategory m_condCategory
the category of the condition
std::vector< ObjectParameter > m_objectParameter
variables containing the parameters
const std::string & condName() const
get / set condition name
virtual void print(std::ostream &myCout) const
print condition
std::vector< l1t::GlobalObject > m_objectType
the trigger object type(s)
void setConditionParameter(const std::vector< ObjectParameter > &)
set functions
virtual ~EnergySumTemplate()
l1t::GtConditionType m_condType
the type of the condition (1s, etc)