CMS 3D CMS Logo

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

#include <L1GtMuonTemplate.h>

Inheritance diagram for L1GtMuonTemplate:
L1GtCondition

Classes

struct  CorrelationParameter
 
struct  ObjectParameter
 

Public Member Functions

const CorrelationParametercorrelationParameter () const
 
 L1GtMuonTemplate ()
 
 L1GtMuonTemplate (const std::string &)
 
 L1GtMuonTemplate (const std::string &, const L1GtConditionType &)
 
 L1GtMuonTemplate (const L1GtMuonTemplate &)
 
const std::vector< ObjectParameter > * objectParameter () const
 
L1GtMuonTemplateoperator= (const L1GtMuonTemplate &)
 
void print (std::ostream &myCout) const override
 print the condition More...
 
void setConditionParameter (const std::vector< ObjectParameter > &objParameter, const CorrelationParameter &corrParameter)
 set functions More...
 
 ~L1GtMuonTemplate () override
 
- Public Member Functions inherited from L1GtCondition
const L1GtConditionCategorycondCategory () 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 L1GtConditionTypecondType () const
 get / set the type of the condition (1s, etc) More...
 
const bool corr () const
 
 L1GtCondition ()
 
 L1GtCondition (const std::string &)
 constructor from condition name More...
 
 L1GtCondition (const std::string &, const L1GtConditionCategory &, const L1GtConditionType &)
 constructor from condition name, category and type More...
 
const int nrObjects () const
 get number of trigger objects More...
 
const std::vector< L1GtObject > & objectType () const
 get / set the trigger object type(s) in the condition More...
 
void setCondCategory (const L1GtConditionCategory &cCategory)
 
void setCondChipNr (const int &cChipNr)
 
void setCondGEq (const bool &cGEq)
 
void setCondName (const std::string &cName)
 
void setCondType (const L1GtConditionType &cType)
 
void setObjectType (const std::vector< L1GtObject > &objType)
 
const bool wsc () const
 
virtual ~L1GtCondition ()
 destructor More...
 

Private Member Functions

void copy (const L1GtMuonTemplate &cp)
 copy function for copy constructor and operator= More...
 
template<class Archive >
void serialize (Archive &ar, const unsigned int version)
 

Private Attributes

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

Friends

class boost::serialization::access
 
template<typename CondSerializationT , typename Enabled >
struct cond::serialization::access
 
std::ostream & operator<< (std::ostream &, const L1GtMuonTemplate &)
 output stream operator More...
 

Additional Inherited Members

- Protected Attributes inherited from L1GtCondition
L1GtConditionCategory 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...
 
L1GtConditionType m_condType
 the type of the condition (1s, etc) More...
 
std::vector< L1GtObjectm_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

$Date$ $Revision$

Definition at line 34 of file L1GtMuonTemplate.h.

Constructor & Destructor Documentation

◆ L1GtMuonTemplate() [1/4]

L1GtMuonTemplate::L1GtMuonTemplate ( )

Definition at line 35 of file L1GtMuonTemplate.cc.

References CondMuon, and L1GtCondition::m_condCategory.

L1GtConditionCategory m_condCategory
the category of the condition

◆ L1GtMuonTemplate() [2/4]

L1GtMuonTemplate::L1GtMuonTemplate ( const std::string &  cName)

Definition at line 37 of file L1GtMuonTemplate.cc.

References CondMuon, and L1GtCondition::m_condCategory.

L1GtConditionCategory m_condCategory
the category of the condition

◆ L1GtMuonTemplate() [3/4]

L1GtMuonTemplate::L1GtMuonTemplate ( const std::string &  cName,
const L1GtConditionType cType 
)

Definition at line 39 of file L1GtMuonTemplate.cc.

References m_objectParameter, L1GtCondition::m_objectType, Mu, and L1GtCondition::nrObjects().

40  : L1GtCondition(cName, CondMuon, cType) {
41  int nObjects = nrObjects();
42 
43  if (nObjects > 0) {
44  m_objectParameter.reserve(nObjects);
45 
46  m_objectType.reserve(nObjects);
47  m_objectType.assign(nObjects, Mu);
48  }
49 }
std::vector< ObjectParameter > m_objectParameter
variables containing the parameters
Definition: L1GtObject.h:29
std::vector< L1GtObject > m_objectType
the trigger object type(s)
const int nrObjects() const
get number of trigger objects

◆ L1GtMuonTemplate() [4/4]

L1GtMuonTemplate::L1GtMuonTemplate ( const L1GtMuonTemplate cp)

Definition at line 52 of file L1GtMuonTemplate.cc.

References copy().

52 : L1GtCondition(cp.m_condName) { copy(cp); }
void copy(const L1GtMuonTemplate &cp)
copy function for copy constructor and operator=

◆ ~L1GtMuonTemplate()

L1GtMuonTemplate::~L1GtMuonTemplate ( )
override

Definition at line 55 of file L1GtMuonTemplate.cc.

55  {
56  // empty now
57 }

Member Function Documentation

◆ copy()

void L1GtMuonTemplate::copy ( const L1GtMuonTemplate cp)
private

copy function for copy constructor and operator=

Definition at line 123 of file L1GtMuonTemplate.cc.

References L1GtCondition::m_condCategory, L1GtCondition::m_condChipNr, L1GtCondition::m_condGEq, L1GtCondition::m_condName, L1GtCondition::m_condType, m_correlationParameter, m_objectParameter, and L1GtCondition::m_objectType.

Referenced by SequenceTypes._TaskBase::copyAndAdd(), L1GtMuonTemplate(), and operator=().

123  {
124  m_condName = cp.condName();
125  m_condCategory = cp.condCategory();
126  m_condType = cp.condType();
127  m_objectType = cp.objectType();
128  m_condGEq = cp.condGEq();
129  m_condChipNr = cp.condChipNr();
130 
131  m_objectParameter = *(cp.objectParameter());
132  m_correlationParameter = *(cp.correlationParameter());
133 }
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
std::string m_condName
the name of the condition
CorrelationParameter m_correlationParameter
bool m_condGEq
the operator used for the condition (>=, =): true for >=
int m_condChipNr
condition is located on condition chip m_condChipNr

◆ correlationParameter()

const CorrelationParameter* L1GtMuonTemplate::correlationParameter ( ) const
inline

◆ objectParameter()

const std::vector<ObjectParameter>* L1GtMuonTemplate::objectParameter ( ) const
inline

Definition at line 85 of file L1GtMuonTemplate.h.

References m_objectParameter.

Referenced by L1GtMuonCondition::checkObjectParameter(), L1TMenuHelper::getLUSOTrigger(), L1GtVhdlWriterCore::getMuonSetupContentFromTriggerMenu(), and L1GtVmeWriterCore::writeVME().

85 { return &m_objectParameter; }
std::vector< ObjectParameter > m_objectParameter
variables containing the parameters

◆ operator=()

L1GtMuonTemplate & L1GtMuonTemplate::operator= ( const L1GtMuonTemplate cp)

Definition at line 60 of file L1GtMuonTemplate.cc.

References copy().

60  {
61  copy(cp);
62  return *this;
63 }
void copy(const L1GtMuonTemplate &cp)
copy function for copy constructor and operator=

◆ print()

void L1GtMuonTemplate::print ( std::ostream &  myCout) const
overridevirtual

print the condition

Reimplemented from L1GtCondition.

Definition at line 72 of file L1GtMuonTemplate.cc.

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

Referenced by L1GtTriggerMenuXmlParser::parseMuon(), and L1GtMuonCondition::print().

72  {
73  myCout << "\n L1GtMuonTemplate print..." << std::endl;
74 
75  L1GtCondition::print(myCout);
76 
77  int nObjects = nrObjects();
78 
79  for (int i = 0; i < nObjects; i++) {
80  myCout << std::endl;
81  myCout << " Template for object " << i << " [ hex ]" << std::endl;
82  myCout << " ptHighThreshold = " << std::hex << m_objectParameter[i].ptHighThreshold << std::endl;
83  myCout << " ptLowThreshold = " << std::hex << m_objectParameter[i].ptLowThreshold << std::endl;
84  myCout << " enableMip = " << std::hex << m_objectParameter[i].enableMip << std::endl;
85  myCout << " enableIso = " << std::hex << m_objectParameter[i].enableIso << std::endl;
86  myCout << " requestIso = " << std::hex << m_objectParameter[i].requestIso << std::endl;
87  myCout << " qualityRange = " << std::hex << m_objectParameter[i].qualityRange << std::endl;
88  myCout << " etaRange = " << std::hex << m_objectParameter[i].etaRange << std::endl;
89  myCout << " phiHigh = " << std::hex << m_objectParameter[i].phiHigh << std::endl;
90  myCout << " phiLow = " << std::hex << m_objectParameter[i].phiLow << std::endl;
91  }
92 
93  if (wsc()) {
94  myCout << " Correlation parameters "
95  << "[ hex ]" << std::endl;
96 
97  myCout << " chargeCorrelation = " << std::hex << m_correlationParameter.chargeCorrelation << std::endl;
98 
99  myCout << " deltaEtaRange = " << std::hex << m_correlationParameter.deltaEtaRange << std::endl;
100  myCout << " deltaPhiRange1Word = " << std::hex << m_correlationParameter.deltaPhiRange1Word << std::endl;
101  myCout << " deltaPhiRange0Word = " << std::hex << m_correlationParameter.deltaPhiRange0Word << std::endl;
102  myCout << " deltaPhiMaxbits = " << std::hex << m_correlationParameter.deltaPhiMaxbits << std::endl;
103  } else {
104  if (m_condType == Type1s) {
105  myCout << " Correlation parameters "
106  << "[ hex ]" << std::endl;
107 
108  myCout << " chargeCorrelation = " << std::hex << m_correlationParameter.chargeCorrelation << " (charge sign) "
109  << std::endl;
110 
111  } else {
112  myCout << "\n Correlation parameters "
113  << "[ hex ]" << std::endl;
114 
115  myCout << " chargeCorrelation = " << std::hex << m_correlationParameter.chargeCorrelation << std::endl;
116  }
117  }
118 
119  // reset to decimal output
120  myCout << std::dec << std::endl;
121 }
std::vector< ObjectParameter > m_objectParameter
variables containing the parameters
L1GtConditionType m_condType
the type of the condition (1s, etc)
CorrelationParameter m_correlationParameter
const bool wsc() const
const int nrObjects() const
get number of trigger objects
virtual void print(std::ostream &myCout) const
print condition

◆ serialize()

template<class Archive >
void L1GtMuonTemplate::serialize ( Archive &  ar,
const unsigned int  version 
)
private

◆ setConditionParameter()

void L1GtMuonTemplate::setConditionParameter ( const std::vector< ObjectParameter > &  objParameter,
const CorrelationParameter corrParameter 
)

set functions

Definition at line 66 of file L1GtMuonTemplate.cc.

References m_correlationParameter, and m_objectParameter.

Referenced by L1GtTriggerMenuConfigOnlineProd::addCorrelationCondition(), L1GtTriggerMenuConfigOnlineProd::addMuonCondition(), and L1GtTriggerMenuXmlParser::parseMuon().

67  {
68  m_objectParameter = objParameter;
69  m_correlationParameter = corrParameter;
70 }
std::vector< ObjectParameter > m_objectParameter
variables containing the parameters
CorrelationParameter m_correlationParameter

Friends And Related Function Documentation

◆ boost::serialization::access

friend class boost::serialization::access
friend

Definition at line 108 of file L1GtMuonTemplate.h.

◆ cond::serialization::access

template<typename CondSerializationT , typename Enabled >
friend struct cond::serialization::access
friend

Definition at line 108 of file L1GtMuonTemplate.h.

◆ operator<<

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

output stream operator

Definition at line 136 of file L1GtMuonTemplate.cc.

136  {
137  result.print(os);
138  return os;
139 }

Member Data Documentation

◆ m_correlationParameter

CorrelationParameter L1GtMuonTemplate::m_correlationParameter
private

Definition at line 106 of file L1GtMuonTemplate.h.

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

◆ m_objectParameter

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

variables containing the parameters

Definition at line 105 of file L1GtMuonTemplate.h.

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