CMS 3D CMS Logo

List of all members | Classes | Public Member Functions | Private Member Functions | Private Attributes | Friends
MuonTemplate Class Reference

#include <MuonTemplate.h>

Inheritance diagram for MuonTemplate:
GlobalCondition

Classes

struct  CorrelationParameter
 
struct  ObjectParameter
 

Public Member Functions

const CorrelationParametercorrelationParameter () const
 
 MuonTemplate ()
 
 MuonTemplate (const std::string &)
 
 MuonTemplate (const std::string &, const l1t::GtConditionType &)
 
 MuonTemplate (const MuonTemplate &)
 
const std::vector< ObjectParameter > * objectParameter () const
 
MuonTemplateoperator= (const MuonTemplate &)
 
void print (std::ostream &myCout) const override
 print the condition More...
 
void setConditionParameter (const std::vector< ObjectParameter > &objParameter, const CorrelationParameter &corrParameter)
 set functions More...
 
 ~MuonTemplate () override
 
- Public Member Functions inherited from GlobalCondition
const l1t::GtConditionCategorycondCategory () const
 get / set the category of the condition More...
 
const int & condChipNr () const
 get / set the condition-chip number the condition is located on More...
 
const bool condGEq () const
 get / set condition GEq flag More...
 
const std::string & condName () const
 get / set condition name More...
 
const int & condRelativeBx () const
 get / set the condition relative bx More...
 
const l1t::GtConditionTypecondType () const
 get / set the type of the condition (1s, etc) More...
 
const bool corr () const
 
 GlobalCondition ()
 
 GlobalCondition (const std::string &)
 constructor from condition name More...
 
 GlobalCondition (const std::string &, const l1t::GtConditionCategory &, const l1t::GtConditionType &)
 constructor from condition name, category and type More...
 
const int nrObjects () const
 get number of trigger objects More...
 
const std::vector< l1t::GlobalObject > & objectType () const
 get / set the trigger object type(s) in the condition More...
 
void setCondCategory (const l1t::GtConditionCategory &cCategory)
 
void setCondChipNr (const int &cChipNr)
 
void setCondGEq (const bool &cGEq)
 
void setCondName (const std::string &cName)
 
void setCondRelativeBx (const int &cRelativeBx)
 
void setCondType (const l1t::GtConditionType &cType)
 
void setObjectType (const std::vector< l1t::GlobalObject > &objType)
 
const bool wsc () const
 
virtual ~GlobalCondition ()
 destructor More...
 

Private Member Functions

void copy (const MuonTemplate &cp)
 copy function for copy constructor and operator= More...
 

Private Attributes

CorrelationParameter m_correlationParameter
 
std::vector< ObjectParameterm_objectParameter
 variables containing the parameters More...
 

Friends

std::ostream & operator<< (std::ostream &, const MuonTemplate &)
 output stream operator More...
 

Additional Inherited Members

- Protected Attributes inherited from GlobalCondition
l1t::GtConditionCategory m_condCategory
 the category of the condition More...
 
int m_condChipNr
 condition is located on condition chip m_condChipNr More...
 
bool m_condGEq
 the operator used for the condition (>=, =): true for >= More...
 
std::string m_condName
 the name of the condition More...
 
int m_condRelativeBx
 
l1t::GtConditionType m_condType
 the type of the condition (1s, etc) More...
 
std::vector< l1t::GlobalObjectm_objectType
 the trigger object type(s) More...
 

Detailed Description

Description: L1 Global Trigger muon template.

Implementation: <TODO: enter implementation details>

Author
: Vasile Mihai Ghete - HEPHY Vienna Vladimir Rekovic - extend for indexing

$Date$ $Revision$

Definition at line 33 of file MuonTemplate.h.

Constructor & Destructor Documentation

MuonTemplate::MuonTemplate ( )

Definition at line 34 of file MuonTemplate.cc.

References l1t::CondMuon, and GlobalCondition::m_condCategory.

35  : GlobalCondition()
36 {
37 
39 
40 }
l1t::GtConditionCategory m_condCategory
the category of the condition
MuonTemplate::MuonTemplate ( const std::string &  cName)

Definition at line 42 of file MuonTemplate.cc.

References l1t::CondMuon, and GlobalCondition::m_condCategory.

43  : GlobalCondition(cName)
44 {
45 
47 
48 }
l1t::GtConditionCategory m_condCategory
the category of the condition
MuonTemplate::MuonTemplate ( const std::string &  cName,
const l1t::GtConditionType cType 
)

Definition at line 50 of file MuonTemplate.cc.

References l1t::gtMu, m_objectParameter, GlobalCondition::m_objectType, and GlobalCondition::nrObjects().

51  : GlobalCondition(cName, l1t::CondMuon, cType)
52 {
53 
54  int nObjects = nrObjects();
55 
56  if (nObjects > 0) {
57  m_objectParameter.reserve(nObjects);
58 
59  m_objectType.reserve(nObjects);
60  m_objectType.assign(nObjects, l1t::gtMu);
61  }
62 
63 }
const int nrObjects() const
get number of trigger objects
std::vector< ObjectParameter > m_objectParameter
variables containing the parameters
Definition: MuonTemplate.h:146
std::vector< l1t::GlobalObject > m_objectType
the trigger object type(s)
MuonTemplate::MuonTemplate ( const MuonTemplate cp)

Definition at line 66 of file MuonTemplate.cc.

References copy().

68 {
69  copy(cp);
70 }
void copy(const MuonTemplate &cp)
copy function for copy constructor and operator=
std::string m_condName
the name of the condition
MuonTemplate::~MuonTemplate ( )
override

Definition at line 73 of file MuonTemplate.cc.

74 {
75  // empty now
76 }

Member Function Documentation

void MuonTemplate::copy ( const MuonTemplate cp)
private

copy function for copy constructor and operator=

Definition at line 195 of file MuonTemplate.cc.

References GlobalCondition::condCategory(), GlobalCondition::condChipNr(), GlobalCondition::condGEq(), GlobalCondition::condName(), GlobalCondition::condRelativeBx(), GlobalCondition::condType(), correlationParameter(), GlobalCondition::m_condCategory, GlobalCondition::m_condChipNr, GlobalCondition::m_condGEq, GlobalCondition::m_condName, GlobalCondition::m_condRelativeBx, GlobalCondition::m_condType, m_correlationParameter, m_objectParameter, GlobalCondition::m_objectType, objectParameter(), and GlobalCondition::objectType().

Referenced by correlationParameter(), MuonTemplate(), and operator=().

196 {
197 
198  m_condName = cp.condName();
200  m_condType = cp.condType();
201  m_objectType = cp.objectType();
202  m_condGEq = cp.condGEq();
203  m_condChipNr = cp.condChipNr();
205 
208 
209 }
bool m_condGEq
the operator used for the condition (>=, =): true for >=
const bool condGEq() const
get / set condition GEq flag
const l1t::GtConditionCategory & condCategory() const
get / set the category of the condition
const l1t::GtConditionType & condType() const
get / set the type of the condition (1s, etc)
const int & condRelativeBx() const
get / set the condition relative bx
const std::vector< ObjectParameter > * objectParameter() const
Definition: MuonTemplate.h:114
const std::vector< l1t::GlobalObject > & objectType() const
get / set the trigger object type(s) in the condition
std::vector< ObjectParameter > m_objectParameter
variables containing the parameters
Definition: MuonTemplate.h:146
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
const std::string & condName() const
get / set condition name
const CorrelationParameter * correlationParameter() const
Definition: MuonTemplate.h:119
std::vector< l1t::GlobalObject > m_objectType
the trigger object type(s)
CorrelationParameter m_correlationParameter
Definition: MuonTemplate.h:147
l1t::GtConditionType m_condType
the type of the condition (1s, etc)
const CorrelationParameter* MuonTemplate::correlationParameter ( ) const
inline

Definition at line 119 of file MuonTemplate.h.

References copy(), SimDataFormats::CaloAnalysis::cp, m_correlationParameter, operator<<, print(), and setConditionParameter().

Referenced by copy(), and l1t::MuCondition::evaluateCondition().

120  {
121  return &m_correlationParameter;
122  }
CorrelationParameter m_correlationParameter
Definition: MuonTemplate.h:147
const std::vector<ObjectParameter>* MuonTemplate::objectParameter ( ) const
inline

Definition at line 114 of file MuonTemplate.h.

References m_objectParameter.

Referenced by l1t::MuCondition::checkObjectParameter(), and copy().

115  {
116  return &m_objectParameter;
117  }
std::vector< ObjectParameter > m_objectParameter
variables containing the parameters
Definition: MuonTemplate.h:146
MuonTemplate & MuonTemplate::operator= ( const MuonTemplate cp)

Definition at line 79 of file MuonTemplate.cc.

References copy().

80 {
81 
82  copy(cp);
83  return *this;
84 }
void copy(const MuonTemplate &cp)
copy function for copy constructor and operator=
void MuonTemplate::print ( std::ostream &  myCout) const
overridevirtual

print the condition

Reimplemented from GlobalCondition.

Definition at line 98 of file MuonTemplate.cc.

References MuonTemplate::CorrelationParameter::chargeCorrelation, TauDecayModes::dec, MuonTemplate::CorrelationParameter::deltaEtaRange, MuonTemplate::CorrelationParameter::deltaPhiMaxbits, MuonTemplate::CorrelationParameter::deltaPhiRange0Word, MuonTemplate::CorrelationParameter::deltaPhiRange1Word, mps_fire::i, GlobalCondition::m_condType, m_correlationParameter, m_objectParameter, GlobalCondition::nrObjects(), GlobalCondition::print(), l1t::Type1s, and GlobalCondition::wsc().

Referenced by correlationParameter(), operator<<(), l1t::TriggerMenuParser::parseMuon(), l1t::TriggerMenuParser::parseMuonCorr(), and l1t::MuCondition::print().

99 {
100 
101  myCout << "\n MuonTemplate print..." << std::endl;
102 
103  GlobalCondition::print(myCout);
104 
105  int nObjects = nrObjects();
106 
107  for (int i = 0; i < nObjects; i++) {
108  myCout << std::endl;
109  myCout << " Template for object " << i << " [ hex ]" << std::endl;
110  myCout << " ptHighThreshold = "
111  << std::hex << m_objectParameter[i].ptHighThreshold << std::endl;
112  myCout << " ptLowThreshold = "
113  << std::hex << m_objectParameter[i].ptLowThreshold << std::endl;
114  myCout << " indexHigh = "
115  << std::hex << m_objectParameter[i].indexHigh << std::endl;
116  myCout << " indexLow = "
117  << std::hex << m_objectParameter[i].indexLow << std::endl;
118  myCout << " enableMip = "
119  << std::hex << m_objectParameter[i].enableMip << std::endl;
120  myCout << " enableIso = "
121  << std::hex << m_objectParameter[i].enableIso << std::endl;
122  myCout << " requestIso = "
123  << std::hex << m_objectParameter[i].requestIso << std::endl;
124  myCout << " charge ="
125  << std::dec << m_objectParameter[i].charge << std::endl;
126  myCout << " qualityLUT = "
127  << std::hex << m_objectParameter[i].qualityLUT << std::endl;
128  myCout << " isolationLUT = "
129  << std::hex << m_objectParameter[i].isolationLUT << std::endl;
130  // myCout << " etaRange = "
131  // << std::hex << m_objectParameter[i].etaRange << std::endl;
132  // myCout << " phiHigh = "
133  // << std::hex << m_objectParameter[i].phiHigh << std::endl;
134  // myCout << " phiLow = "
135 // << std::hex << m_objectParameter[i].phiLow << std::endl;
136  myCout << " phiWindow1Lower ="
137  << std::hex << m_objectParameter[i].phiWindow1Lower << std::endl;
138  myCout << " phiWindow1Upper ="
139  << std::hex << m_objectParameter[i].phiWindow1Upper << std::endl;
140  myCout << " phiWindow2Lower ="
141  << std::hex << m_objectParameter[i].phiWindow2Lower << std::endl;
142  myCout << " phiWindow2Upper ="
143  << std::hex << m_objectParameter[i].phiWindow2Upper << std::endl;
144  myCout << " etaWindow1Lower ="
145  << std::hex << m_objectParameter[i].etaWindow1Lower << std::endl;
146  myCout << " etaWindow1Upper ="
147  << std::hex << m_objectParameter[i].etaWindow1Upper << std::endl;
148  myCout << " etaWindow2Lower ="
149  << std::hex << m_objectParameter[i].etaWindow2Lower << std::endl;
150  myCout << " etaWindow2Upper ="
151  << std::hex << m_objectParameter[i].etaWindow2Upper << std::endl;
152 
153 
154  }
155 
156 
157  if ( wsc() ) {
158  myCout << " Correlation parameters " << "[ hex ]" << std::endl;
159 
160  myCout << " chargeCorrelation = "
162  << std::endl;
163 
164  myCout << " deltaEtaRange = "
165  << std::hex << m_correlationParameter.deltaEtaRange << std::endl;
166  myCout << " deltaPhiRange1Word = "
167  << std::hex << m_correlationParameter.deltaPhiRange1Word << std::endl;
168  myCout << " deltaPhiRange0Word = "
169  << std::hex << m_correlationParameter.deltaPhiRange0Word << std::endl;
170  myCout << " deltaPhiMaxbits = "
171  << std::hex << m_correlationParameter.deltaPhiMaxbits << std::endl;
172  } else {
173 
174  if (m_condType == l1t::Type1s) {
175  myCout << " Correlation parameters " << "[ hex ]" << std::endl;
176 
177  myCout << " chargeCorrelation = "
179  << " (charge sign) " << std::endl;
180 
181  } else {
182 
183  myCout << "\n Correlation parameters " << "[ hex ]" << std::endl;
184 
185  myCout << " chargeCorrelation = "
187  << std::endl;
188  }
189  }
190 
191  // reset to decimal output
192  myCout << std::dec << std::endl;
193 }
const int nrObjects() const
get number of trigger objects
const bool wsc() const
std::vector< ObjectParameter > m_objectParameter
variables containing the parameters
Definition: MuonTemplate.h:146
unsigned long long deltaPhiRange0Word
Definition: MuonTemplate.h:95
virtual void print(std::ostream &myCout) const
print condition
unsigned long long deltaPhiRange1Word
Definition: MuonTemplate.h:96
unsigned long long deltaEtaRange
Definition: MuonTemplate.h:99
CorrelationParameter m_correlationParameter
Definition: MuonTemplate.h:147
l1t::GtConditionType m_condType
the type of the condition (1s, etc)
void MuonTemplate::setConditionParameter ( const std::vector< ObjectParameter > &  objParameter,
const CorrelationParameter corrParameter 
)

set functions

Definition at line 88 of file MuonTemplate.cc.

References m_correlationParameter, and m_objectParameter.

Referenced by correlationParameter(), l1t::TriggerMenuParser::parseMuon(), and l1t::TriggerMenuParser::parseMuonCorr().

91 {
92 
93  m_objectParameter = objParameter;
94  m_correlationParameter = corrParameter;
95 
96 }
std::vector< ObjectParameter > m_objectParameter
variables containing the parameters
Definition: MuonTemplate.h:146
CorrelationParameter m_correlationParameter
Definition: MuonTemplate.h:147

Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  os,
const MuonTemplate result 
)
friend

output stream operator

Definition at line 212 of file MuonTemplate.cc.

Referenced by correlationParameter().

213 {
214  result.print(os);
215  return os;
216 
217 }
void print(std::ostream &myCout) const override
print the condition
Definition: MuonTemplate.cc:98

Member Data Documentation

CorrelationParameter MuonTemplate::m_correlationParameter
private

Definition at line 147 of file MuonTemplate.h.

Referenced by copy(), correlationParameter(), print(), and setConditionParameter().

std::vector<ObjectParameter> MuonTemplate::m_objectParameter
private

variables containing the parameters

Definition at line 146 of file MuonTemplate.h.

Referenced by copy(), MuonTemplate(), objectParameter(), print(), and setConditionParameter().