ATLAS Offline Software
Loading...
Searching...
No Matches
xAOD::MissingETAssociationHelper Class Reference

#include <MissingETAssociationHelper.h>

Collaboration diagram for xAOD::MissingETAssociationHelper:

Public Member Functions

 MissingETAssociationHelper ()
 Default constructor.
 MissingETAssociationHelper (const MissingETAssociationHelper &h)=default
 Copy constructor.
 MissingETAssociationHelper (const MissingETAssociationMap_v1 *map)
 Construct with a map.
virtual ~MissingETAssociationHelper ()
 Base class destructor.
bool objSelected (const MissingETAssociation_v1 *assoc, size_t objIdx) const
 Test if object is selected for MET calculation.
bool objSelected (const MissingETAssociation_v1 *assoc, const IParticle *pPart) const
 Test if object is selected for MET calculation.
MissingETBase::Types::bitmask_t getObjSelectionFlags (const MissingETAssociation_v1 *assoc) const
 Return object selection bitmask for the given association.
void setObjSelectionFlag (const MissingETAssociation_v1 *assoc, size_t objIdx, bool status)
 Flag object as selected for MET calculation.
void setObjSelectionFlag (const MissingETAssociation_v1 *assoc, const IParticle *pPart, bool status)
 Flag object as selected for MET calculation.
void resetObjSelectionFlags ()
const MissingETAssociationMap_v1map () const

Private Attributes

const MissingETAssociationMap_v1m_map
std::vector< MissingETBase::Types::bitmask_tm_useObjectFlags

Detailed Description

Definition at line 21 of file MissingETAssociationHelper.h.

Constructor & Destructor Documentation

◆ MissingETAssociationHelper() [1/3]

MissingETAssociationHelper::MissingETAssociationHelper ( )

Default constructor.

Definition at line 17 of file MissingETAssociationHelper.cxx.

18 : m_map(nullptr)
19{ }
const MissingETAssociationMap_v1 * m_map

◆ MissingETAssociationHelper() [2/3]

xAOD::MissingETAssociationHelper::MissingETAssociationHelper ( const MissingETAssociationHelper & h)
default

Copy constructor.

◆ MissingETAssociationHelper() [3/3]

MissingETAssociationHelper::MissingETAssociationHelper ( const MissingETAssociationMap_v1 * map)

Construct with a map.

Definition at line 21 of file MissingETAssociationHelper.cxx.

22 : m_map(map)
23{ }
const MissingETAssociationMap_v1 * map() const

◆ ~MissingETAssociationHelper()

MissingETAssociationHelper::~MissingETAssociationHelper ( )
virtual

Base class destructor.

Definition at line 25 of file MissingETAssociationHelper.cxx.

26{ }

Member Function Documentation

◆ getObjSelectionFlags()

MissingETBase::Types::bitmask_t MissingETAssociationHelper::getObjSelectionFlags ( const MissingETAssociation_v1 * assoc) const

Return object selection bitmask for the given association.

Definition at line 58 of file MissingETAssociationHelper.cxx.

59{
60 if(!assoc) throw std::runtime_error("MissingETAssociationHelper::getObjSelectionFlags received a null pointer");
61 if(assoc->index() >= m_useObjectFlags.size()) return 0; // No flag for this association has been set to 1 yet
62 return m_useObjectFlags.at(assoc->index());
63}
size_t index() const
Return the index of this element within its container.
std::vector< MissingETBase::Types::bitmask_t > m_useObjectFlags

◆ map()

const MissingETAssociationMap_v1 * xAOD::MissingETAssociationHelper::map ( ) const
inline

Definition at line 43 of file MissingETAssociationHelper.h.

43{ return m_map; }

◆ objSelected() [1/2]

bool MissingETAssociationHelper::objSelected ( const MissingETAssociation_v1 * assoc,
const IParticle * pPart ) const

Test if object is selected for MET calculation.

Definition at line 52 of file MissingETAssociationHelper.cxx.

53{
54 if(!assoc) throw std::runtime_error("MissingETAssociationHelper::objSelected received a null pointer");
55 return this->objSelected(assoc, assoc->findIndex(pPart));
56}
bool objSelected(const MissingETAssociation_v1 *assoc, size_t objIdx) const
Test if object is selected for MET calculation.
size_t findIndex(const IParticle *pPart) const
Find index of given object in contributing object store.

◆ objSelected() [2/2]

bool MissingETAssociationHelper::objSelected ( const MissingETAssociation_v1 * assoc,
size_t objIdx ) const

Test if object is selected for MET calculation.

Definition at line 43 of file MissingETAssociationHelper.cxx.

44{
45 if(!assoc) throw std::runtime_error("MissingETAssociationHelper::objSelected received a null pointer");
46 size_t index = assoc->index();
47 if(index >= m_useObjectFlags.size()) return false; // No flag for this association has been set to 1 yet
48 if (objIdx >= sizeof(MissingETBase::Types::bitmask_t)*CHAR_BIT) return false;
49 return bool(m_useObjectFlags.at(index) & (static_cast<MissingETBase::Types::bitmask_t>(1)<<objIdx));
50}
str index
Definition DeMoScan.py:362
uint64_t bitmask_t
Type for status word bit mask.
setBGCode setTAP setLVL2ErrorBits bool

◆ resetObjSelectionFlags()

void xAOD::MissingETAssociationHelper::resetObjSelectionFlags ( )
inline

Definition at line 42 of file MissingETAssociationHelper.h.

42{ m_useObjectFlags.clear(); }

◆ setObjSelectionFlag() [1/2]

void MissingETAssociationHelper::setObjSelectionFlag ( const MissingETAssociation_v1 * assoc,
const IParticle * pPart,
bool status )

Flag object as selected for MET calculation.

Definition at line 37 of file MissingETAssociationHelper.cxx.

38{
39 if(!assoc) throw std::runtime_error("MissingETAssociationHelper::setObjSelectionFlag received a null pointer");
40 this->setObjSelectionFlag(assoc,assoc->findIndex(pPart),status);
41}
void setObjSelectionFlag(const MissingETAssociation_v1 *assoc, size_t objIdx, bool status)
Flag object as selected for MET calculation.

◆ setObjSelectionFlag() [2/2]

void MissingETAssociationHelper::setObjSelectionFlag ( const MissingETAssociation_v1 * assoc,
size_t objIdx,
bool status )

Flag object as selected for MET calculation.

Definition at line 28 of file MissingETAssociationHelper.cxx.

29{
30 if(!assoc) throw std::runtime_error("MissingETAssociationHelper::setObjSelectionFlag received a null pointer");
31 size_t index = assoc->index();
32 if(index >= m_useObjectFlags.size()) m_useObjectFlags.resize(index+1, 0);
33 if(status) m_useObjectFlags.at(index) |= (1<<objIdx);
34 else m_useObjectFlags.at(index) &= ~(1<<objIdx);
35}

Member Data Documentation

◆ m_map

const MissingETAssociationMap_v1* xAOD::MissingETAssociationHelper::m_map
private

Definition at line 47 of file MissingETAssociationHelper.h.

◆ m_useObjectFlags

std::vector<MissingETBase::Types::bitmask_t> xAOD::MissingETAssociationHelper::m_useObjectFlags
private

Definition at line 49 of file MissingETAssociationHelper.h.


The documentation for this class was generated from the following files: