CMS 3D CMS Logo

List of all members | Public Member Functions | Protected Attributes
AlgoMuonBase Class Referenceabstract

#include <AlgoMuonBase.h>

Inheritance diagram for AlgoMuonBase:
AlgoMuon

Public Member Functions

 AlgoMuonBase ()
 
 AlgoMuonBase (const ProcConfigurationBase *config)
 
virtual int getEtaHw () const =0
 
boost::dynamic_bitset getFiredLayerBits () const
 
virtual unsigned int getFiredLayerCnt () const
 
virtual unsigned int getFiredLayerCnt (int bx) const
 
virtual double getPdfSum () const =0
 
virtual const StubResultgetStubResult (unsigned int iLayer) const =0
 
virtual const StubResultsgetStubResults () const =0
 
virtual bool isLayerFired (unsigned int iLayer, unsigned int bx) const
 
virtual bool isValid () const =0
 
virtual ~AlgoMuonBase ()
 

Protected Attributes

std::vector< boost::dynamic_bitset<> > firedLayerBitsInBx
 bits representing fired logicLayers (including bending layers), More...
 

Detailed Description

Definition at line 16 of file AlgoMuonBase.h.

Constructor & Destructor Documentation

◆ AlgoMuonBase() [1/2]

AlgoMuonBase::AlgoMuonBase ( )
inline

Definition at line 18 of file AlgoMuonBase.h.

18 {};

◆ AlgoMuonBase() [2/2]

AlgoMuonBase::AlgoMuonBase ( const ProcConfigurationBase config)

Definition at line 10 of file AlgoMuonBase.cc.

11  : firedLayerBitsInBx(config->getBxToProcess(), boost::dynamic_bitset<>(config->nLayers())) {}
Definition: config.py:1
std::vector< boost::dynamic_bitset<> > firedLayerBitsInBx
bits representing fired logicLayers (including bending layers),
Definition: AlgoMuonBase.h:56

◆ ~AlgoMuonBase()

AlgoMuonBase::~AlgoMuonBase ( )
virtual

Definition at line 13 of file AlgoMuonBase.cc.

13 {}

Member Function Documentation

◆ getEtaHw()

virtual int AlgoMuonBase::getEtaHw ( ) const
pure virtual

Implemented in AlgoMuon.

◆ getFiredLayerBits()

boost::dynamic_bitset AlgoMuonBase::getFiredLayerBits ( ) const
inline

Definition at line 37 of file AlgoMuonBase.h.

References firedLayerBitsInBx, and findQualityFiles::size.

38  { //TODO make it virtual, and change the return type in in the AlgoMuon to dynamic_bitset<>
39  boost::dynamic_bitset<> firedLayerBitsSum(firedLayerBitsInBx[0].size());
40  for (auto& firedLayerBits : firedLayerBitsInBx) {
41  firedLayerBitsSum |= firedLayerBits;
42  }
43  return firedLayerBitsSum;
44  }
size
Write out results.
std::vector< boost::dynamic_bitset<> > firedLayerBitsInBx
bits representing fired logicLayers (including bending layers),
Definition: AlgoMuonBase.h:56

◆ getFiredLayerCnt() [1/2]

virtual unsigned int AlgoMuonBase::getFiredLayerCnt ( ) const
inlinevirtual

Reimplemented in AlgoMuon.

Definition at line 27 of file AlgoMuonBase.h.

References submitPVResolutionJobs::count, and firedLayerBitsInBx.

27  {
28  unsigned int count = 0;
29  for (auto& firedLayerBits : firedLayerBitsInBx) {
30  count += firedLayerBits.count();
31  }
32  return count;
33  }
std::vector< boost::dynamic_bitset<> > firedLayerBitsInBx
bits representing fired logicLayers (including bending layers),
Definition: AlgoMuonBase.h:56

◆ getFiredLayerCnt() [2/2]

virtual unsigned int AlgoMuonBase::getFiredLayerCnt ( int  bx) const
inlinevirtual

Definition at line 35 of file AlgoMuonBase.h.

References nano_mu_digi_cff::bx, and firedLayerBitsInBx.

35 { return firedLayerBitsInBx.at(bx).count(); }
std::vector< boost::dynamic_bitset<> > firedLayerBitsInBx
bits representing fired logicLayers (including bending layers),
Definition: AlgoMuonBase.h:56

◆ getPdfSum()

virtual double AlgoMuonBase::getPdfSum ( ) const
pure virtual

Implemented in AlgoMuon.

◆ getStubResult()

virtual const StubResult& AlgoMuonBase::getStubResult ( unsigned int  iLayer) const
pure virtual

Implemented in AlgoMuon.

◆ getStubResults()

virtual const StubResults& AlgoMuonBase::getStubResults ( ) const
pure virtual

Implemented in AlgoMuon.

◆ isLayerFired()

virtual bool AlgoMuonBase::isLayerFired ( unsigned int  iLayer,
unsigned int  bx 
) const
inlinevirtual

Definition at line 46 of file AlgoMuonBase.h.

References nano_mu_digi_cff::bx, and firedLayerBitsInBx.

46 { return firedLayerBitsInBx.at(bx)[iLayer]; }
std::vector< boost::dynamic_bitset<> > firedLayerBitsInBx
bits representing fired logicLayers (including bending layers),
Definition: AlgoMuonBase.h:56

◆ isValid()

virtual bool AlgoMuonBase::isValid ( ) const
pure virtual

Member Data Documentation

◆ firedLayerBitsInBx

std::vector<boost::dynamic_bitset<> > AlgoMuonBase::firedLayerBitsInBx
protected

bits representing fired logicLayers (including bending layers),

Definition at line 56 of file AlgoMuonBase.h.

Referenced by getFiredLayerBits(), getFiredLayerCnt(), and isLayerFired().