CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions | Private Attributes
L1GtCaloCondition Class Reference

#include <L1GtCaloCondition.h>

Inheritance diagram for L1GtCaloCondition:
L1GtConditionEvaluation

Public Member Functions

const bool evaluateCondition () const override
 the core function to check if the condition matches More...
 
const L1GtCaloTemplategtCaloTemplate () const
 get / set the pointer to a L1GtCondition More...
 
const int gtCorrParDeltaPhiNrBins () const
 get / set maximum number of bins for the delta phi scales More...
 
const int gtIfCaloEtaNumberBits () const
 get / set the number of bits for eta of calorimeter objects More...
 
const L1GlobalTriggerPSBgtPSB () const
 get / set the pointer to PSB More...
 
 L1GtCaloCondition ()
 
 L1GtCaloCondition (const L1GtCondition *, const L1GlobalTriggerPSB *, const int nrL1NoIsoEG, const int nrL1IsoEG, const int nrL1CenJet, const int nrL1ForJet, const int nrL1TauJet, const int ifCaloEtaNumberBits)
 from base template condition (from event setup usually) More...
 
 L1GtCaloCondition (const L1GtCaloCondition &)
 
L1GtCaloConditionoperator= (const L1GtCaloCondition &)
 
void print (std::ostream &myCout) const override
 print condition More...
 
void setGtCaloTemplate (const L1GtCaloTemplate *)
 
void setGtCorrParDeltaPhiNrBins (const int &)
 
void setGtIfCaloEtaNumberBits (const int &)
 
void setGtPSB (const L1GlobalTriggerPSB *)
 set the pointer to PSB More...
 
 ~L1GtCaloCondition () override
 
- Public Member Functions inherited from L1GtConditionEvaluation
bool condLastResult () const
 get the latest result for the condition More...
 
int condMaxNumberObjects () const
 
void evaluateConditionStoreResult ()
 call evaluateCondition and save last result More...
 
CombinationsInCond const & getCombinationsInCond () const
 get all the object combinations evaluated to true in the condition More...
 
virtual std::string getNumericExpression () const
 get numeric expression More...
 
 L1GtConditionEvaluation ()
 constructor More...
 
void setCondMaxNumberObjects (int condMaxNumberObjectsValue)
 
void setVerbosity (const int verbosity)
 
virtual ~L1GtConditionEvaluation ()
 destructor More...
 

Private Member Functions

const bool checkObjectParameter (const int iCondition, const L1GctCand &cand) const
 function to check a single object if it matches a condition More...
 
void copy (const L1GtCaloCondition &cp)
 copy function for copy constructor and operator= More...
 
const L1GctCandgetCandidate (const int indexCand) const
 load calo candidates More...
 

Private Attributes

unsigned int m_corrParDeltaPhiNrBins
 
const L1GtCaloTemplatem_gtCaloTemplate
 pointer to a L1GtCaloTemplate More...
 
const L1GlobalTriggerPSBm_gtPSB
 pointer to PSB, to be able to get the trigger objects More...
 
int m_ifCaloEtaNumberBits
 number of bits for eta of calorimeter objects More...
 

Additional Inherited Members

- Protected Member Functions inherited from L1GtConditionEvaluation
template<class Type1 >
const bool checkBit (const Type1 &mask, const unsigned int bitNumber) const
 check if a bit with a given number is set in a mask More...
 
template<class Type1 , class Type2 >
const bool checkThreshold (const Type1 &threshold, const Type2 &value, const bool condGEqValue) const
 
CombinationsInCondcombinationsInCond () const
 get all the object combinations (to fill it...) More...
 
- Protected Attributes inherited from L1GtConditionEvaluation
CombinationsInCond m_combinationsInCond
 store all the object combinations evaluated to true in the condition More...
 
bool m_condLastResult
 the last result of evaluateCondition() More...
 
int m_condMaxNumberObjects
 
int m_verbosity
 verbosity level More...
 

Detailed Description

Description: evaluation of a CondCalo condition.

Implementation: <TODO: enter implementation details>

Author
: Vasile Mihai Ghete - HEPHY Vienna

Definition at line 35 of file L1GtCaloCondition.h.

Constructor & Destructor Documentation

L1GtCaloCondition::L1GtCaloCondition ( )

constructors default

Definition at line 48 of file L1GtCaloCondition.cc.

References m_corrParDeltaPhiNrBins, and m_ifCaloEtaNumberBits.

48  :
50 
53 
54 }
int m_ifCaloEtaNumberBits
number of bits for eta of calorimeter objects
unsigned int m_corrParDeltaPhiNrBins
L1GtCaloCondition::L1GtCaloCondition ( const L1GtCondition caloTemplate,
const L1GlobalTriggerPSB ptrPSB,
const int  nrL1NoIsoEG,
const int  nrL1IsoEG,
const int  nrL1CenJet,
const int  nrL1ForJet,
const int  nrL1TauJet,
const int  ifCaloEtaNumberBits 
)

from base template condition (from event setup usually)

Definition at line 57 of file L1GtCaloCondition.cc.

References CenJet, ForJet, IsoEG, L1GtConditionEvaluation::m_condMaxNumberObjects, m_corrParDeltaPhiNrBins, m_gtCaloTemplate, NoIsoEG, L1GtCondition::objectType(), and TauJet.

63  :
65  m_gtCaloTemplate(static_cast<const L1GtCaloTemplate*>(caloTemplate)),
66  m_gtPSB(ptrPSB),
67  m_ifCaloEtaNumberBits(ifCaloEtaNumberBits)
68 {
69 
71 
72  // maximum number of objects received for the evaluation of the condition
73  // retrieved before from event setup
74  // for a CondCalo, all objects ar of same type, hence it is enough to get the
75  // type for the first object
76 
77  switch ((m_gtCaloTemplate->objectType())[0]) {
78  case NoIsoEG:
79  m_condMaxNumberObjects = nrL1NoIsoEG;
80  break;
81  case IsoEG:
82  m_condMaxNumberObjects = nrL1IsoEG;
83  break;
84  case CenJet:
85  m_condMaxNumberObjects = nrL1CenJet;
86  break;
87  case ForJet:
88  m_condMaxNumberObjects = nrL1ForJet;
89  break;
90  case TauJet:
91  m_condMaxNumberObjects = nrL1TauJet;
92  break;
93  default:
95  break;
96  }
97 
98 }
int m_ifCaloEtaNumberBits
number of bits for eta of calorimeter objects
const L1GlobalTriggerPSB * m_gtPSB
pointer to PSB, to be able to get the trigger objects
const std::vector< L1GtObject > & objectType() const
get / set the trigger object type(s) in the condition
Definition: L1GtCondition.h:90
const L1GtCaloTemplate * m_gtCaloTemplate
pointer to a L1GtCaloTemplate
unsigned int m_corrParDeltaPhiNrBins
L1GtCaloCondition::L1GtCaloCondition ( const L1GtCaloCondition cp)

Definition at line 117 of file L1GtCaloCondition.cc.

References copy().

117  :
119 
120  copy(cp);
121 
122 }
void copy(const L1GtCaloCondition &cp)
copy function for copy constructor and operator=
L1GtCaloCondition::~L1GtCaloCondition ( )
override

Definition at line 125 of file L1GtCaloCondition.cc.

125  {
126 
127  // empty
128 
129 }

Member Function Documentation

const bool L1GtCaloCondition::checkObjectParameter ( const int  iCondition,
const L1GctCand cand 
) const
private

function to check a single object if it matches a condition

checkObjectParameter - Compare a single particle with a numbered condition.

Parameters
iConditionThe number of the condition.
candThe candidate to compare.
Returns
The result of the comparison (false if a condition does not exist).

Definition at line 423 of file L1GtCaloCondition.cc.

References L1GtConditionEvaluation::checkBit(), L1GtConditionEvaluation::checkThreshold(), L1GtCondition::condGEq(), L1GctCand::empty(), L1GctCand::etaIndex(), L1GtCaloTemplate::ObjectParameter::etaRange, L1GtCaloTemplate::ObjectParameter::etThreshold, m_gtCaloTemplate, L1GtCondition::nrObjects(), L1GtCaloTemplate::objectParameter(), L1GctCand::phiIndex(), L1GtCaloTemplate::ObjectParameter::phiRange, and L1GctCand::rank().

Referenced by evaluateCondition(), and gtCorrParDeltaPhiNrBins().

423  {
424 
425  // number of objects in condition
426  int nObjInCond = m_gtCaloTemplate->nrObjects();
427 
428  if (iCondition >= nObjInCond || iCondition < 0) {
429  return false;
430  }
431 
432  // empty candidates can not be compared
433  if (cand.empty()) {
434  return false;
435  }
436 
437  const L1GtCaloTemplate::ObjectParameter objPar = ( *(m_gtCaloTemplate->objectParameter()) )[iCondition];
438 
439  // check energy threshold
440  if ( !checkThreshold(objPar.etThreshold, cand.rank(), m_gtCaloTemplate->condGEq()) ) {
441  return false;
442  }
443 
444  // check eta
445  if (!checkBit(objPar.etaRange, cand.etaIndex())) {
446  return false;
447  }
448 
449  // check phi
450 
451  if (!checkBit(objPar.phiRange, cand.phiIndex())) {
452  return false;
453  }
454 
455  // particle matches if we get here
456  //LogTrace("L1GlobalTrigger")
457  // << " checkObjectParameter: calorimeter object OK, passes all requirements\n"
458  // << std::endl;
459 
460  return true;
461 }
const int nrObjects() const
get number of trigger objects
const bool checkBit(const Type1 &mask, const unsigned int bitNumber) const
check if a bit with a given number is set in a mask
virtual bool empty() const =0
empty candidate - true if object not initialized
virtual unsigned phiIndex() const =0
get phi index (0-17)
const L1GtCaloTemplate * m_gtCaloTemplate
pointer to a L1GtCaloTemplate
const bool checkThreshold(const Type1 &threshold, const Type2 &value, const bool condGEqValue) const
virtual unsigned etaIndex() const =0
get eta index (bit 3 is sign, 1 for -ve Z, 0 for +ve Z)
typedef for a single object template
virtual unsigned rank() const =0
get the rank code (6 bits)
const bool condGEq() const
get / set condition GEq flag
const std::vector< ObjectParameter > * objectParameter() const
void L1GtCaloCondition::copy ( const L1GtCaloCondition cp)
private

copy function for copy constructor and operator=

Definition at line 101 of file L1GtCaloCondition.cc.

References L1GtConditionEvaluation::condLastResult(), L1GtConditionEvaluation::condMaxNumberObjects(), L1GtConditionEvaluation::getCombinationsInCond(), gtCaloTemplate(), gtIfCaloEtaNumberBits(), gtPSB(), L1GtConditionEvaluation::m_combinationsInCond, L1GtConditionEvaluation::m_condLastResult, L1GtConditionEvaluation::m_condMaxNumberObjects, m_corrParDeltaPhiNrBins, m_gtCaloTemplate, m_gtPSB, m_ifCaloEtaNumberBits, and L1GtConditionEvaluation::m_verbosity.

Referenced by gtCorrParDeltaPhiNrBins(), L1GtCaloCondition(), and operator=().

101  {
102 
104  m_gtPSB = cp.gtPSB();
105 
108 
112 
114 
115 }
int m_ifCaloEtaNumberBits
number of bits for eta of calorimeter objects
bool m_condLastResult
the last result of evaluateCondition()
const int gtIfCaloEtaNumberBits() const
get / set the number of bits for eta of calorimeter objects
CombinationsInCond m_combinationsInCond
store all the object combinations evaluated to true in the condition
const L1GlobalTriggerPSB * m_gtPSB
pointer to PSB, to be able to get the trigger objects
const L1GlobalTriggerPSB * gtPSB() const
get / set the pointer to PSB
const L1GtCaloTemplate * m_gtCaloTemplate
pointer to a L1GtCaloTemplate
const L1GtCaloTemplate * gtCaloTemplate() const
get / set the pointer to a L1GtCondition
unsigned int m_corrParDeltaPhiNrBins
CombinationsInCond const & getCombinationsInCond() const
get all the object combinations evaluated to true in the condition
bool condLastResult() const
get the latest result for the condition
const bool L1GtCaloCondition::evaluateCondition ( ) const
overridevirtual

the core function to check if the condition matches

Implements L1GtConditionEvaluation.

Definition at line 167 of file L1GtCaloCondition.cc.

References funct::abs(), CenJet, L1GtConditionEvaluation::checkBit(), checkObjectParameter(), L1GtConditionEvaluation::combinationsInCond(), L1GtCaloTemplate::correlationParameter(), L1GtCaloTemplate::CorrelationParameter::deltaEtaRange, L1GtCaloTemplate::CorrelationParameter::deltaPhiRange, factorial(), ForJet, L1GlobalTriggerPSB::getCandL1CenJet(), L1GlobalTriggerPSB::getCandL1ForJet(), L1GlobalTriggerPSB::getCandL1IsoEG(), L1GlobalTriggerPSB::getCandL1NoIsoEG(), L1GlobalTriggerPSB::getCandL1TauJet(), mps_fire::i, diffTreeTool::index, IsoEG, LogTrace, m_corrParDeltaPhiNrBins, m_gtCaloTemplate, m_gtPSB, m_ifCaloEtaNumberBits, L1GtConditionEvaluation::m_verbosity, NoIsoEG, L1GtCondition::nrObjects(), L1GtCondition::objectType(), TauJet, and L1GtCondition::wsc().

167  {
168 
169  // number of trigger objects in the condition
170  int nObjInCond = m_gtCaloTemplate->nrObjects();
171  //LogTrace("L1GlobalTrigger") << " nObjInCond: " << nObjInCond
172  // << std::endl;
173 
174  // the candidates
175 
176  // objectType() gives the type for nrObjects() only,
177  // but in a CondCalo all objects have the same type
178  // take type from the type of the first object
179 
180  const std::vector<const L1GctCand*>* candVec;
181 
182  switch ((m_gtCaloTemplate->objectType())[0]) {
183  case NoIsoEG:
184  candVec = m_gtPSB->getCandL1NoIsoEG();
185  break;
186  case IsoEG:
187  candVec = m_gtPSB->getCandL1IsoEG();
188  break;
189  case CenJet:
190  candVec = m_gtPSB->getCandL1CenJet();
191  break;
192  case ForJet:
193  candVec = m_gtPSB->getCandL1ForJet();
194  break;
195  case TauJet:
196  candVec = m_gtPSB->getCandL1TauJet();
197  break;
198  default:
199  return false;
200  break;
201  }
202 
203  int numberObjects = candVec->size();
204  //LogTrace("L1GlobalTrigger") << " numberObjects: " << numberObjects
205  // << std::endl;
206  if (numberObjects < nObjInCond) {
207  return false;
208  }
209 
210  std::vector<int> index(numberObjects);
211 
212  for (int i = 0; i < numberObjects; ++i) {
213  index[i] = i;
214  }
215 
216  int jumpIndex = 1;
217  int jump = factorial(numberObjects - nObjInCond);
218 
219  int totalLoops = 0;
220  int passLoops = 0;
221 
222  // condition result condResult set to true if at least one permutation
223  // passes all requirements
224  // all possible permutations are checked
225  bool condResult = false;
226 
227  // store the indices of the calorimeter objects
228  // from the combination evaluated in the condition
229  SingleCombInCond objectsInComb;
230  objectsInComb.reserve(nObjInCond);
231 
232  // clear the m_combinationsInCond vector
233  combinationsInCond().clear();
234 
235  do {
236 
237  if (--jumpIndex)
238  continue;
239 
240  jumpIndex = jump;
241  totalLoops++;
242 
243  // clear the indices in the combination
244  objectsInComb.clear();
245 
246  bool tmpResult = true;
247 
248  // check if there is a permutation that matches object-parameter requirements
249  for (int i = 0; i < nObjInCond; i++) {
250 
251  tmpResult &= checkObjectParameter(i, *(*candVec)[index[i]]);
252  objectsInComb.push_back(index[i]);
253 
254  }
255 
256  // if permutation does not match particle conditions
257  // skip spatial correlations
258  if (!tmpResult) {
259 
260  continue;
261 
262  }
263 
264  if (m_gtCaloTemplate->wsc()) {
265 
266  // wsc requirements have always nObjInCond = 2
267  // one can use directly index[0] and index[1] to compute
268  // eta and phi differences
269  const int ObjInWscComb = 2;
270  if (nObjInCond != ObjInWscComb) {
271 
272  if (m_verbosity) {
273  edm::LogError("L1GlobalTrigger")
274  << "\n Error: "
275  << "number of particles in condition with spatial correlation = "
276  << nObjInCond << "\n it must be = " << ObjInWscComb
277  << std::endl;
278  }
279 
280  continue;
281  }
282 
285 
286  unsigned int candDeltaEta;
287  unsigned int candDeltaPhi;
288 
289  // check candDeltaEta
290 
291  // get eta index and the sign bit of the eta index (MSB is the sign)
292  // signedEta[i] is the signed eta index of candVec[index[i]]
293  int signedEta[ObjInWscComb];
294  int signBit[ObjInWscComb] = { 0, 0 };
295 
296  int scaleEta = 1 << (m_ifCaloEtaNumberBits - 1);
297 
298  for (int i = 0; i < ObjInWscComb; ++i) {
299  signBit[i] = ((*candVec)[index[i]]->etaIndex() & scaleEta)
300  >>(m_ifCaloEtaNumberBits - 1);
301  signedEta[i] = ((*candVec)[index[i]]->etaIndex() )%scaleEta;
302 
303  if (signBit[i] == 1) {
304  signedEta[i] = (-1)*signedEta[i];
305  }
306 
307  }
308 
309  // compute candDeltaEta - add 1 if signs are different (due to +0/-0 indices)
310  candDeltaEta = static_cast<int> (std::abs(signedEta[1] - signedEta[0]))
311  + static_cast<int> (signBit[1]^signBit[0]);
312 
313  if ( !checkBit(corrPar.deltaEtaRange, candDeltaEta) ) {
314  continue;
315  }
316 
317  // check candDeltaPhi
318 
319  // calculate absolute value of candDeltaPhi
320  if ((*candVec)[index[0]]->phiIndex()> (*candVec)[index[1]]->phiIndex()) {
321  candDeltaPhi = (*candVec)[index[0]]->phiIndex() - (*candVec)[index[1]]->phiIndex();
322  }
323  else {
324  candDeltaPhi = (*candVec)[index[1]]->phiIndex() - (*candVec)[index[0]]->phiIndex();
325  }
326 
327  // check if candDeltaPhi > 180 (via delta_phi_maxbits)
328  // delta_phi contains bits for 0..180 (0 and 180 included)
329  // protect also against infinite loop...
330 
331  int nMaxLoop = 10;
332  int iLoop = 0;
333 
334  while (candDeltaPhi >= m_corrParDeltaPhiNrBins) {
335 
336  unsigned int candDeltaPhiInitial = candDeltaPhi;
337 
338  // candDeltaPhi > 180 ==> take 360 - candDeltaPhi
339  candDeltaPhi = (m_corrParDeltaPhiNrBins - 1) * 2 - candDeltaPhi;
340  if (m_verbosity) {
341  LogTrace("L1GlobalTrigger")
342  << " Initial candDeltaPhi = "
343  << candDeltaPhiInitial
344  << " > m_corrParDeltaPhiNrBins = "
346  << " ==> candDeltaPhi rescaled to: "
347  << candDeltaPhi << " [ loop index " << iLoop
348  << "; breaks after " << nMaxLoop << " loops ]\n"
349  << std::endl;
350  }
351 
352  iLoop++;
353  if (iLoop > nMaxLoop) {
354  return false;
355  }
356  }
357 
358 
359  if (!checkBit(corrPar.deltaPhiRange, candDeltaPhi)) {
360  continue;
361  }
362 
363  } // end wsc check
364 
365  // if we get here all checks were successful for this combination
366  // set the general result for evaluateCondition to "true"
367 
368  condResult = true;
369  passLoops++;
370  combinationsInCond().push_back(objectsInComb);
371 
372  // } while ( std::next_permutation(index, index + nObj) );
373  } while (std::next_permutation(index.begin(), index.end()) );
374 
375  //LogTrace("L1GlobalTrigger")
376  // << "\n L1GtCaloCondition: total number of permutations found: " << totalLoops
377  // << "\n L1GtCaloCondition: number of permutations passing requirements: " << passLoops
378  // << "\n" << std::endl;
379 
380  return condResult;
381 
382 }
int m_ifCaloEtaNumberBits
number of bits for eta of calorimeter objects
const std::vector< const L1GctCand * > * getCandL1TauJet() const
pointer to TauJet data list
const int nrObjects() const
get number of trigger objects
const bool checkBit(const Type1 &mask, const unsigned int bitNumber) const
check if a bit with a given number is set in a mask
const std::vector< const L1GctCand * > * getCandL1CenJet() const
pointer to CenJet data list
CombinationsInCond & combinationsInCond() const
get all the object combinations (to fill it...)
const std::vector< const L1GctCand * > * getCandL1NoIsoEG() const
pointer to NoIsoEG data list
const std::vector< const L1GctCand * > * getCandL1ForJet() const
pointer to ForJet data list
std::vector< int > SingleCombInCond
typedefs
const L1GlobalTriggerPSB * m_gtPSB
pointer to PSB, to be able to get the trigger objects
const std::vector< L1GtObject > & objectType() const
get / set the trigger object type(s) in the condition
Definition: L1GtCondition.h:90
const bool checkObjectParameter(const int iCondition, const L1GctCand &cand) const
function to check a single object if it matches a condition
const std::vector< const L1GctCand * > * getCandL1IsoEG() const
pointer to IsoEG data list
const L1GtCaloTemplate * m_gtCaloTemplate
pointer to a L1GtCaloTemplate
const bool wsc() const
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
unsigned int m_corrParDeltaPhiNrBins
typedef for correlation parameters
#define LogTrace(id)
const CorrelationParameter * correlationParameter() const
int factorial(int n)
factorial function
const L1GctCand * L1GtCaloCondition::getCandidate ( const int  indexCand) const
private

load calo candidates

Definition at line 385 of file L1GtCaloCondition.cc.

References CenJet, ForJet, L1GlobalTriggerPSB::getCandL1CenJet(), L1GlobalTriggerPSB::getCandL1ForJet(), L1GlobalTriggerPSB::getCandL1IsoEG(), L1GlobalTriggerPSB::getCandL1NoIsoEG(), L1GlobalTriggerPSB::getCandL1TauJet(), IsoEG, m_gtCaloTemplate, m_gtPSB, NoIsoEG, L1GtCondition::objectType(), and TauJet.

Referenced by gtCorrParDeltaPhiNrBins().

385  {
386 
387  // objectType() gives the type for nrObjects() only,
388  // but in a CondCalo all objects have the same type
389  // take type from the type of the first object
390  switch ((m_gtCaloTemplate->objectType())[0]) {
391  case NoIsoEG:
392  return (*(m_gtPSB->getCandL1NoIsoEG()))[indexCand];
393  break;
394  case IsoEG:
395  return (*(m_gtPSB->getCandL1IsoEG()))[indexCand];
396  break;
397  case CenJet:
398  return (*(m_gtPSB->getCandL1CenJet()))[indexCand];
399  break;
400  case ForJet:
401  return (*(m_gtPSB->getCandL1ForJet()))[indexCand];
402  break;
403  case TauJet:
404  return (*(m_gtPSB->getCandL1TauJet()))[indexCand];
405  break;
406  default:
407  return nullptr;
408  break;
409  }
410 
411  return nullptr;
412 }
const std::vector< const L1GctCand * > * getCandL1TauJet() const
pointer to TauJet data list
const std::vector< const L1GctCand * > * getCandL1CenJet() const
pointer to CenJet data list
const std::vector< const L1GctCand * > * getCandL1NoIsoEG() const
pointer to NoIsoEG data list
const std::vector< const L1GctCand * > * getCandL1ForJet() const
pointer to ForJet data list
const L1GlobalTriggerPSB * m_gtPSB
pointer to PSB, to be able to get the trigger objects
const std::vector< L1GtObject > & objectType() const
get / set the trigger object type(s) in the condition
Definition: L1GtCondition.h:90
const std::vector< const L1GctCand * > * getCandL1IsoEG() const
pointer to IsoEG data list
const L1GtCaloTemplate * m_gtCaloTemplate
pointer to a L1GtCaloTemplate
const L1GtCaloTemplate* L1GtCaloCondition::gtCaloTemplate ( ) const
inline

get / set the pointer to a L1GtCondition

Definition at line 73 of file L1GtCaloCondition.h.

References m_gtCaloTemplate, and setGtCaloTemplate().

Referenced by copy().

73  {
74  return m_gtCaloTemplate;
75  }
const L1GtCaloTemplate * m_gtCaloTemplate
pointer to a L1GtCaloTemplate
const int L1GtCaloCondition::gtCorrParDeltaPhiNrBins ( ) const
inline

get / set maximum number of bins for the delta phi scales

Definition at line 95 of file L1GtCaloCondition.h.

References checkObjectParameter(), copy(), SimDataFormats::CaloAnalysis::cp, getCandidate(), m_corrParDeltaPhiNrBins, and setGtCorrParDeltaPhiNrBins().

95  {
97  }
unsigned int m_corrParDeltaPhiNrBins
const int L1GtCaloCondition::gtIfCaloEtaNumberBits ( ) const
inline

get / set the number of bits for eta of calorimeter objects

Definition at line 88 of file L1GtCaloCondition.h.

References m_ifCaloEtaNumberBits, and setGtIfCaloEtaNumberBits().

Referenced by copy().

88  {
89  return m_ifCaloEtaNumberBits;
90  }
int m_ifCaloEtaNumberBits
number of bits for eta of calorimeter objects
const L1GlobalTriggerPSB* L1GtCaloCondition::gtPSB ( ) const
inline

get / set the pointer to PSB

Definition at line 80 of file L1GtCaloCondition.h.

References m_gtPSB, and setGtPSB().

Referenced by copy().

80  {
81  return m_gtPSB;
82  }
const L1GlobalTriggerPSB * m_gtPSB
pointer to PSB, to be able to get the trigger objects
L1GtCaloCondition & L1GtCaloCondition::operator= ( const L1GtCaloCondition cp)

Definition at line 132 of file L1GtCaloCondition.cc.

References copy().

132  {
133  copy(cp);
134  return *this;
135 }
void copy(const L1GtCaloCondition &cp)
copy function for copy constructor and operator=
void L1GtCaloCondition::print ( std::ostream &  myCout) const
overridevirtual

print condition

Reimplemented from L1GtConditionEvaluation.

Definition at line 463 of file L1GtCaloCondition.cc.

References m_corrParDeltaPhiNrBins, m_gtCaloTemplate, m_ifCaloEtaNumberBits, L1GtConditionEvaluation::print(), and L1GtCaloTemplate::print().

Referenced by L1GtCorrelationCondition::evaluateCondition(), and L1GlobalTriggerGTL::run().

463  {
464 
465  m_gtCaloTemplate->print(myCout);
466 
467  myCout << " Number of bits for eta of calorimeter objects = "
468  << m_ifCaloEtaNumberBits << std::endl;
469  myCout << " Maximum number of bins for the delta phi scales = "
470  << m_corrParDeltaPhiNrBins << "\n " << std::endl;
471 
473 
474 }
int m_ifCaloEtaNumberBits
number of bits for eta of calorimeter objects
void print(std::ostream &myCout) const override
print the condition
const L1GtCaloTemplate * m_gtCaloTemplate
pointer to a L1GtCaloTemplate
unsigned int m_corrParDeltaPhiNrBins
virtual void print(std::ostream &myCout) const
print condition
void L1GtCaloCondition::setGtCaloTemplate ( const L1GtCaloTemplate caloTempl)

Definition at line 138 of file L1GtCaloCondition.cc.

References m_gtCaloTemplate.

Referenced by gtCaloTemplate().

138  {
139 
140  m_gtCaloTemplate = caloTempl;
141 
142 }
const L1GtCaloTemplate * m_gtCaloTemplate
pointer to a L1GtCaloTemplate
void L1GtCaloCondition::setGtCorrParDeltaPhiNrBins ( const int &  corrParDeltaPhiNrBins)

Definition at line 159 of file L1GtCaloCondition.cc.

References m_corrParDeltaPhiNrBins.

Referenced by gtCorrParDeltaPhiNrBins(), and L1GlobalTriggerGTL::run().

160  {
161 
162  m_corrParDeltaPhiNrBins = corrParDeltaPhiNrBins;
163 
164 }
unsigned int m_corrParDeltaPhiNrBins
void L1GtCaloCondition::setGtIfCaloEtaNumberBits ( const int &  ifCaloEtaNumberBitsValue)

Definition at line 152 of file L1GtCaloCondition.cc.

References m_ifCaloEtaNumberBits.

Referenced by gtIfCaloEtaNumberBits().

152  {
153 
154  m_ifCaloEtaNumberBits = ifCaloEtaNumberBitsValue;
155 
156 }
int m_ifCaloEtaNumberBits
number of bits for eta of calorimeter objects
void L1GtCaloCondition::setGtPSB ( const L1GlobalTriggerPSB ptrPSB)

set the pointer to PSB

Definition at line 145 of file L1GtCaloCondition.cc.

References m_gtPSB.

Referenced by gtPSB().

145  {
146 
147  m_gtPSB = ptrPSB;
148 
149 }
const L1GlobalTriggerPSB * m_gtPSB
pointer to PSB, to be able to get the trigger objects

Member Data Documentation

unsigned int L1GtCaloCondition::m_corrParDeltaPhiNrBins
private
const L1GtCaloTemplate* L1GtCaloCondition::m_gtCaloTemplate
private
const L1GlobalTriggerPSB* L1GtCaloCondition::m_gtPSB
private

pointer to PSB, to be able to get the trigger objects

Definition at line 119 of file L1GtCaloCondition.h.

Referenced by copy(), evaluateCondition(), getCandidate(), gtPSB(), and setGtPSB().

int L1GtCaloCondition::m_ifCaloEtaNumberBits
private

number of bits for eta of calorimeter objects

Definition at line 122 of file L1GtCaloCondition.h.

Referenced by copy(), evaluateCondition(), gtIfCaloEtaNumberBits(), L1GtCaloCondition(), print(), and setGtIfCaloEtaNumberBits().