CMS 3D CMS Logo

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

#include <CorrelationWithOverlapRemovalTemplate.h>

Inheritance diagram for CorrelationWithOverlapRemovalTemplate:
GlobalCondition

Classes

struct  CorrelationWithOverlapRemovalParameter
 typedef for correlation parameters More...
 

Public Member Functions

const l1t::GtConditionCategory cond0Category () const
 get / set the category of the thre sub-conditions More...
 
const int cond0Index () const
 get / set the index of the two sub-conditions in the cor* vector from menu More...
 
const l1t::GtConditionCategory cond1Category () const
 
const int cond1Index () const
 
const l1t::GtConditionCategory cond2Category () const
 
const int cond2Index () const
 
const CorrelationWithOverlapRemovalParametercorrelationParameter () const
 get / set correlation parameters More...
 
 CorrelationWithOverlapRemovalTemplate ()
 
 CorrelationWithOverlapRemovalTemplate (const std::string &)
 from condition name More...
 
 CorrelationWithOverlapRemovalTemplate (const std::string &, const l1t::GtConditionCategory &, const l1t::GtConditionCategory &, const l1t::GtConditionCategory &, const int, const int, const int)
 
 CorrelationWithOverlapRemovalTemplate (const CorrelationWithOverlapRemovalTemplate &)
 copy constructor More...
 
CorrelationWithOverlapRemovalTemplateoperator= (const CorrelationWithOverlapRemovalTemplate &)
 assign operator More...
 
void print (std::ostream &myCout) const override
 print the condition More...
 
void setCond0Category (const l1t::GtConditionCategory &)
 
void setCond0Index (const int &)
 
void setCond1Category (const l1t::GtConditionCategory &)
 
void setCond1Index (const int &)
 
void setCond2Category (const l1t::GtConditionCategory &)
 
void setCond2Index (const int &)
 
void setCorrelationWithOverlapRemovalParameter (const CorrelationWithOverlapRemovalParameter &corrParameter)
 
 ~CorrelationWithOverlapRemovalTemplate () override
 destructor More...
 
- 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
 
const bool corrThree () const
 get logic flag for three-body conditions, trigger objects are muons More...
 
 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 CorrelationWithOverlapRemovalTemplate &cp)
 copy function for copy constructor and operator= More...
 

Private Attributes

l1t::GtConditionCategory m_cond0Category
 
int m_cond0Index
 
l1t::GtConditionCategory m_cond1Category
 
int m_cond1Index
 
l1t::GtConditionCategory m_cond2Category
 
int m_cond2Index
 
CorrelationWithOverlapRemovalParameter m_correlationParameter
 

Friends

std::ostream & operator<< (std::ostream &, const CorrelationWithOverlapRemovalTemplate &)
 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 = false
 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

class CorrealtionTemplate

Description: L1 Global Trigger correlation with overlap removal template. Includes spatial correlation for two objects and removal of overlap with third object

Implementation: <TODO: enter implementation details>

Author
: Vladimir Rekovic

$Date$ $Revision$

Description: L1 Global Trigger correlation template. Includes spatial correlation for two objects of different type.

Implementation: <TODO: enter implementation details>

Author
: Vasile Mihai Ghete - HEPHY Vienna

$Date$ $Revision$

Definition at line 34 of file CorrelationWithOverlapRemovalTemplate.h.

Constructor & Destructor Documentation

◆ CorrelationWithOverlapRemovalTemplate() [1/4]

CorrelationWithOverlapRemovalTemplate::CorrelationWithOverlapRemovalTemplate ( )

constructor(s) default

Definition at line 34 of file CorrelationWithOverlapRemovalTemplate.cc.

References l1t::CondCorrelationWithOverlapRemoval, l1t::CondNull, m_cond0Category, m_cond0Index, m_cond1Category, m_cond1Index, m_cond2Category, m_cond2Index, GlobalCondition::m_condCategory, GlobalCondition::m_condChipNr, GlobalCondition::m_condType, GlobalCondition::m_objectType, GlobalCondition::nrObjects(), and l1t::Type2corWithOverlapRemoval.

34  : GlobalCondition() {
37  m_condChipNr = -1;
38 
39  // there are in fact three objects
40  int nObjects = nrObjects();
41 
42  if (nObjects > 0) {
43  m_objectType.reserve(nObjects);
44  }
45 
49  m_cond0Index = -1;
50  m_cond1Index = -1;
51  m_cond2Index = -1;
52 }
int m_condChipNr
condition is located on condition chip m_condChipNr
l1t::GtConditionCategory m_condCategory
the category of the condition
const int nrObjects() const
get number of trigger objects
std::vector< l1t::GlobalObject > m_objectType
the trigger object type(s)
l1t::GtConditionType m_condType
the type of the condition (1s, etc)

◆ CorrelationWithOverlapRemovalTemplate() [2/4]

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

from condition name

Definition at line 55 of file CorrelationWithOverlapRemovalTemplate.cc.

References l1t::CondCorrelationWithOverlapRemoval, l1t::CondNull, m_cond0Category, m_cond0Index, m_cond1Category, m_cond1Index, m_cond2Category, m_cond2Index, GlobalCondition::m_condCategory, GlobalCondition::m_condChipNr, GlobalCondition::m_condType, GlobalCondition::m_objectType, GlobalCondition::nrObjects(), and l1t::Type2corWithOverlapRemoval.

56  : GlobalCondition(cName) {
59  m_condChipNr = -1;
60 
61  // there are in fact two objects
62  int nObjects = nrObjects();
63 
64  if (nObjects > 0) {
65  m_objectType.reserve(nObjects);
66  }
67 
71  m_cond0Index = -1;
72  m_cond1Index = -1;
73  m_cond2Index = -1;
74 }
int m_condChipNr
condition is located on condition chip m_condChipNr
l1t::GtConditionCategory m_condCategory
the category of the condition
const int nrObjects() const
get number of trigger objects
std::vector< l1t::GlobalObject > m_objectType
the trigger object type(s)
l1t::GtConditionType m_condType
the type of the condition (1s, etc)

◆ CorrelationWithOverlapRemovalTemplate() [3/4]

CorrelationWithOverlapRemovalTemplate::CorrelationWithOverlapRemovalTemplate ( const std::string &  cName,
const l1t::GtConditionCategory cond0Cat,
const l1t::GtConditionCategory cond1Cat,
const l1t::GtConditionCategory cond2Cat,
const int  cond0Index,
const int  cond1index,
const int  cond2index 
)

from condition name, the category of first sub-condition, the category of the second sub-condition, the category of third sub-condition, the index of first sub-condition in the cor* vector, the index of second sub-condition in the cor* vector, the index of second sub-condition in the cor* vector

Definition at line 79 of file CorrelationWithOverlapRemovalTemplate.cc.

References l1t::CondCorrelationWithOverlapRemoval, GlobalCondition::m_condCategory, GlobalCondition::m_condChipNr, GlobalCondition::m_condType, GlobalCondition::m_objectType, GlobalCondition::nrObjects(), and l1t::Type2corWithOverlapRemoval.

86  : GlobalCondition(cName),
87  m_cond0Category(cond0Cat),
88  m_cond1Category(cond1Cat),
89  m_cond2Category(cond2Cat),
91  m_cond1Index(cond1index),
92  m_cond2Index(cond2index)
93 
94 {
97  m_condChipNr = -1;
98 
99  // there are in fact two objects
100  int nObjects = nrObjects();
101 
102  if (nObjects > 0) {
103  m_objectType.resize(nObjects);
104  }
105 }
const int cond0Index() const
get / set the index of the two sub-conditions in the cor* vector from menu
int m_condChipNr
condition is located on condition chip m_condChipNr
l1t::GtConditionCategory m_condCategory
the category of the condition
const int nrObjects() const
get number of trigger objects
std::vector< l1t::GlobalObject > m_objectType
the trigger object type(s)
l1t::GtConditionType m_condType
the type of the condition (1s, etc)

◆ CorrelationWithOverlapRemovalTemplate() [4/4]

CorrelationWithOverlapRemovalTemplate::CorrelationWithOverlapRemovalTemplate ( const CorrelationWithOverlapRemovalTemplate cp)

copy constructor

Definition at line 108 of file CorrelationWithOverlapRemovalTemplate.cc.

References copy().

110  : GlobalCondition(cp.m_condName) {
111  copy(cp);
112 }
void copy(const CorrelationWithOverlapRemovalTemplate &cp)
copy function for copy constructor and operator=

◆ ~CorrelationWithOverlapRemovalTemplate()

CorrelationWithOverlapRemovalTemplate::~CorrelationWithOverlapRemovalTemplate ( )
override

destructor

Definition at line 115 of file CorrelationWithOverlapRemovalTemplate.cc.

115  {
116  // empty now
117 }

Member Function Documentation

◆ cond0Category()

const l1t::GtConditionCategory CorrelationWithOverlapRemovalTemplate::cond0Category ( ) const
inline

get / set the category of the thre sub-conditions

Definition at line 108 of file CorrelationWithOverlapRemovalTemplate.h.

References m_cond0Category.

Referenced by l1t::GlobalBoard::runGTL().

◆ cond0Index()

const int CorrelationWithOverlapRemovalTemplate::cond0Index ( ) const
inline

get / set the index of the two sub-conditions in the cor* vector from menu

Definition at line 119 of file CorrelationWithOverlapRemovalTemplate.h.

References m_cond0Index.

Referenced by l1t::GlobalBoard::runGTL().

◆ cond1Category()

const l1t::GtConditionCategory CorrelationWithOverlapRemovalTemplate::cond1Category ( ) const
inline

Definition at line 110 of file CorrelationWithOverlapRemovalTemplate.h.

References m_cond1Category.

Referenced by l1t::GlobalBoard::runGTL().

◆ cond1Index()

const int CorrelationWithOverlapRemovalTemplate::cond1Index ( ) const
inline

◆ cond2Category()

const l1t::GtConditionCategory CorrelationWithOverlapRemovalTemplate::cond2Category ( ) const
inline

Definition at line 112 of file CorrelationWithOverlapRemovalTemplate.h.

References m_cond2Category.

Referenced by l1t::GlobalBoard::runGTL().

◆ cond2Index()

const int CorrelationWithOverlapRemovalTemplate::cond2Index ( ) const
inline

◆ copy()

void CorrelationWithOverlapRemovalTemplate::copy ( const CorrelationWithOverlapRemovalTemplate cp)
private

copy function for copy constructor and operator=

Definition at line 206 of file CorrelationWithOverlapRemovalTemplate.cc.

References m_cond0Category, m_cond0Index, m_cond1Category, m_cond1Index, m_cond2Category, m_cond2Index, GlobalCondition::m_condCategory, GlobalCondition::m_condChipNr, GlobalCondition::m_condGEq, GlobalCondition::m_condName, GlobalCondition::m_condType, m_correlationParameter, and GlobalCondition::m_objectType.

Referenced by CorrelationWithOverlapRemovalTemplate(), and operator=().

206  {
207  m_condName = cp.condName();
208  m_condCategory = cp.condCategory();
209  m_condType = cp.condType();
210  m_objectType = cp.objectType();
211  m_condGEq = cp.condGEq();
212  m_condChipNr = cp.condChipNr();
213 
214  m_cond0Category = cp.cond0Category();
215  m_cond1Category = cp.cond1Category();
216  m_cond2Category = cp.cond2Category();
217  m_cond0Index = cp.cond0Index();
218  m_cond1Index = cp.cond1Index();
219  m_cond2Index = cp.cond2Index();
220 
221  m_correlationParameter = *(cp.correlationParameter());
222 }
bool m_condGEq
the operator used for the condition (>=, =): true for >=
CorrelationWithOverlapRemovalParameter m_correlationParameter
std::string m_condName
the name of the condition
int m_condChipNr
condition is located on condition chip m_condChipNr
l1t::GtConditionCategory m_condCategory
the category of the condition
std::vector< l1t::GlobalObject > m_objectType
the trigger object type(s)
l1t::GtConditionType m_condType
the type of the condition (1s, etc)

◆ correlationParameter()

const CorrelationWithOverlapRemovalParameter* CorrelationWithOverlapRemovalTemplate::correlationParameter ( ) const
inline

get / set correlation parameters

Definition at line 131 of file CorrelationWithOverlapRemovalTemplate.h.

References m_correlationParameter.

131 { return &m_correlationParameter; }
CorrelationWithOverlapRemovalParameter m_correlationParameter

◆ operator=()

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

assign operator

Definition at line 120 of file CorrelationWithOverlapRemovalTemplate.cc.

References copy().

121  {
122  copy(cp);
123  return *this;
124 }
void copy(const CorrelationWithOverlapRemovalTemplate &cp)
copy function for copy constructor and operator=

◆ print()

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

print the condition

Reimplemented from GlobalCondition.

Definition at line 152 of file CorrelationWithOverlapRemovalTemplate.cc.

References CorrelationWithOverlapRemovalTemplate::CorrelationWithOverlapRemovalParameter::chargeCorrelation, CorrelationWithOverlapRemovalTemplate::CorrelationWithOverlapRemovalParameter::corrCutType, TauDecayModes::dec, m_cond0Category, m_cond0Index, m_cond1Category, m_cond1Index, m_cond2Category, m_cond2Index, m_correlationParameter, CorrelationWithOverlapRemovalTemplate::CorrelationWithOverlapRemovalParameter::maxDRCutValue, CorrelationWithOverlapRemovalTemplate::CorrelationWithOverlapRemovalParameter::maxEtaCutValue, CorrelationWithOverlapRemovalTemplate::CorrelationWithOverlapRemovalParameter::maxMassCutValue, CorrelationWithOverlapRemovalTemplate::CorrelationWithOverlapRemovalParameter::maxOverlapRemovalDRCutValue, CorrelationWithOverlapRemovalTemplate::CorrelationWithOverlapRemovalParameter::maxOverlapRemovalEtaCutValue, CorrelationWithOverlapRemovalTemplate::CorrelationWithOverlapRemovalParameter::maxOverlapRemovalPhiCutValue, CorrelationWithOverlapRemovalTemplate::CorrelationWithOverlapRemovalParameter::maxPhiCutValue, CorrelationWithOverlapRemovalTemplate::CorrelationWithOverlapRemovalParameter::minDRCutValue, CorrelationWithOverlapRemovalTemplate::CorrelationWithOverlapRemovalParameter::minEtaCutValue, CorrelationWithOverlapRemovalTemplate::CorrelationWithOverlapRemovalParameter::minMassCutValue, CorrelationWithOverlapRemovalTemplate::CorrelationWithOverlapRemovalParameter::minOverlapRemovalDRCutValue, CorrelationWithOverlapRemovalTemplate::CorrelationWithOverlapRemovalParameter::minOverlapRemovalEtaCutValue, CorrelationWithOverlapRemovalTemplate::CorrelationWithOverlapRemovalParameter::minOverlapRemovalPhiCutValue, CorrelationWithOverlapRemovalTemplate::CorrelationWithOverlapRemovalParameter::minPhiCutValue, CorrelationWithOverlapRemovalTemplate::CorrelationWithOverlapRemovalParameter::precDRCut, CorrelationWithOverlapRemovalTemplate::CorrelationWithOverlapRemovalParameter::precEtaCut, CorrelationWithOverlapRemovalTemplate::CorrelationWithOverlapRemovalParameter::precMassCut, CorrelationWithOverlapRemovalTemplate::CorrelationWithOverlapRemovalParameter::precOverlapRemovalDRCut, CorrelationWithOverlapRemovalTemplate::CorrelationWithOverlapRemovalParameter::precOverlapRemovalEtaCut, CorrelationWithOverlapRemovalTemplate::CorrelationWithOverlapRemovalParameter::precOverlapRemovalPhiCut, CorrelationWithOverlapRemovalTemplate::CorrelationWithOverlapRemovalParameter::precPhiCut, and GlobalCondition::print().

Referenced by l1t::TriggerMenuParser::parseCorrelationWithOverlapRemoval().

152  {
153  myCout << "\n CorrelationWithOverlapRemovalTemplate print..." << std::endl;
154 
155  GlobalCondition::print(myCout);
156 
157  myCout << "\n First sub-condition category: " << m_cond0Category << std::endl;
158  myCout << " Second sub-condition category: " << m_cond1Category << std::endl;
159  myCout << " Third sub-condition category: " << m_cond2Category << std::endl;
160 
161  myCout << "\n First sub-condition index: " << m_cond0Index << std::endl;
162  myCout << " Second sub-condition index: " << m_cond1Index << std::endl;
163  myCout << " Third sub-condition index: " << m_cond2Index << std::endl;
164 
165  myCout << "\n CorrelationWithOverlapRemoval parameters "
166  << "[ hex ]" << std::endl;
167 
168  myCout << " Cut Type: " << m_correlationParameter.corrCutType << std::endl;
169  myCout << " minEtaCutValue = " << std::dec << m_correlationParameter.minEtaCutValue << std::endl;
170  myCout << " maxEtaCutValue = " << std::dec << m_correlationParameter.maxEtaCutValue << std::endl;
171  myCout << " precEtaCut = " << std::dec << m_correlationParameter.precEtaCut << std::endl;
172  myCout << " minPhiCutValue = " << std::dec << m_correlationParameter.minPhiCutValue << std::endl;
173  myCout << " maxPhiCutValue = " << std::dec << m_correlationParameter.maxPhiCutValue << std::endl;
174  myCout << " precPhiCut = " << std::dec << m_correlationParameter.precPhiCut << std::endl;
175  myCout << " minDRCutValue = " << std::dec << m_correlationParameter.minDRCutValue << std::endl;
176  myCout << " maxDRCutValue = " << std::dec << m_correlationParameter.maxDRCutValue << std::endl;
177  myCout << " precDRCut = " << std::dec << m_correlationParameter.precDRCut << std::endl;
178  myCout << " minMassCutValue = " << std::dec << m_correlationParameter.minMassCutValue << std::endl;
179  myCout << " maxMassCutValue = " << std::dec << m_correlationParameter.maxMassCutValue << std::endl;
180  myCout << " precMassCut = " << std::dec << m_correlationParameter.precMassCut << std::endl;
181  myCout << " minOverlapRemovalEtaCutValue = " << std::dec
183  myCout << " maxOverlapRemovalEtaCutValue = " << std::dec
185  myCout << " precOverlapRemovalEtaCut = " << std::dec << m_correlationParameter.precOverlapRemovalEtaCut
186  << std::endl;
187  myCout << " minOverlapRemovalPhiCutValue = " << std::dec
189  myCout << " maxOverlapRemovalPhiCutValue = " << std::dec
191  myCout << " precOverlapRemovalPhiCut = " << std::dec << m_correlationParameter.precOverlapRemovalPhiCut
192  << std::endl;
193  myCout << " minOverlapRemovalDRCutValue = " << std::dec
195  myCout << " maxOverlapRemovalDRCutValue = " << std::dec
197  myCout << " precOverlapRemovalDRCut = " << std::dec << m_correlationParameter.precOverlapRemovalDRCut
198  << std::endl;
199 
200  myCout << " chargeCorrelation = " << std::dec << m_correlationParameter.chargeCorrelation << std::endl;
201 
202  // reset to decimal output
203  myCout << std::dec << std::endl;
204 }
CorrelationWithOverlapRemovalParameter m_correlationParameter
virtual void print(std::ostream &myCout) const
print condition

◆ setCond0Category()

void CorrelationWithOverlapRemovalTemplate::setCond0Category ( const l1t::GtConditionCategory condCateg)

◆ setCond0Index()

void CorrelationWithOverlapRemovalTemplate::setCond0Index ( const int &  condIndex)

◆ setCond1Category()

void CorrelationWithOverlapRemovalTemplate::setCond1Category ( const l1t::GtConditionCategory condCateg)

◆ setCond1Index()

void CorrelationWithOverlapRemovalTemplate::setCond1Index ( const int &  condIndex)

◆ setCond2Category()

void CorrelationWithOverlapRemovalTemplate::setCond2Category ( const l1t::GtConditionCategory condCateg)

◆ setCond2Index()

void CorrelationWithOverlapRemovalTemplate::setCond2Index ( const int &  condIndex)

◆ setCorrelationWithOverlapRemovalParameter()

void CorrelationWithOverlapRemovalTemplate::setCorrelationWithOverlapRemovalParameter ( const CorrelationWithOverlapRemovalParameter corrParameter)

Definition at line 147 of file CorrelationWithOverlapRemovalTemplate.cc.

References m_correlationParameter.

Referenced by l1t::TriggerMenuParser::parseCorrelationWithOverlapRemoval().

148  {
149  m_correlationParameter = corrParameter;
150 }
CorrelationWithOverlapRemovalParameter m_correlationParameter

Friends And Related Function Documentation

◆ operator<<

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

output stream operator

Definition at line 225 of file CorrelationWithOverlapRemovalTemplate.cc.

225  {
226  result.print(os);
227  return os;
228 }

Member Data Documentation

◆ m_cond0Category

l1t::GtConditionCategory CorrelationWithOverlapRemovalTemplate::m_cond0Category
private

◆ m_cond0Index

int CorrelationWithOverlapRemovalTemplate::m_cond0Index
private

◆ m_cond1Category

l1t::GtConditionCategory CorrelationWithOverlapRemovalTemplate::m_cond1Category
private

◆ m_cond1Index

int CorrelationWithOverlapRemovalTemplate::m_cond1Index
private

◆ m_cond2Category

l1t::GtConditionCategory CorrelationWithOverlapRemovalTemplate::m_cond2Category
private

◆ m_cond2Index

int CorrelationWithOverlapRemovalTemplate::m_cond2Index
private

◆ m_correlationParameter

CorrelationWithOverlapRemovalParameter CorrelationWithOverlapRemovalTemplate::m_correlationParameter
private