ATLAS Offline Software
Loading...
Searching...
No Matches
OverlapRemovalGenUseAlg::DataKeyHandler< ContainerType > Class Template Reference
Collaboration diagram for OverlapRemovalGenUseAlg::DataKeyHandler< ContainerType >:

Public Member Functions

 DataKeyHandler (EL::AnaAlgorithm *owner, const std::string &propName, const std::string &defaultValue, const std::string &descrip)
StatusCode initialize (bool allow_empty=false)
 operator const SG::ReadHandleKey< ContainerType > & () const
std::string key () const
bool empty () const
void declareDependency (const std::string &variable)
void declareOutput (const std::string &variable)

Private Attributes

SG::ReadHandleKey< ContainerType > m_readKey {}
SG::ReadDecorHandleKeyArray< ContainerType > m_readDecorKeys {}
SG::WriteDecorHandleKeyArray< ContainerType > m_writeDecorKeys {}

Detailed Description

template<class ContainerType>
class OverlapRemovalGenUseAlg::DataKeyHandler< ContainerType >

Definition at line 62 of file OverlapRemovalGenUseAlg.h.

Constructor & Destructor Documentation

◆ DataKeyHandler()

template<class ContainerType>
OverlapRemovalGenUseAlg::DataKeyHandler< ContainerType >::DataKeyHandler ( EL::AnaAlgorithm * owner,
const std::string & propName,
const std::string & defaultValue,
const std::string & descrip )
inline

Definition at line 64 of file OverlapRemovalGenUseAlg.h.

67 :
69 m_readDecorKeys{owner, propName + "ReadDecors", {}, "External input data dependencies for "+propName},
70 m_writeDecorKeys{owner,propName + "WriteDecors", {}, "Dependencies written for "+propName}{}
SG::ReadDecorHandleKeyArray< ContainerType > m_readDecorKeys
SG::ReadHandleKey< ContainerType > m_readKey
SG::WriteDecorHandleKeyArray< ContainerType > m_writeDecorKeys

Member Function Documentation

◆ declareDependency()

template<class ContainerType>
void OverlapRemovalGenUseAlg::DataKeyHandler< ContainerType >::declareDependency ( const std::string & variable)
inline

Definition at line 80 of file OverlapRemovalGenUseAlg.h.

80{ if (!empty() && !variable.empty()) m_readDecorKeys.emplace_back(m_readKey.key() + "." + variable );}

◆ declareOutput()

template<class ContainerType>
void OverlapRemovalGenUseAlg::DataKeyHandler< ContainerType >::declareOutput ( const std::string & variable)
inline

Definition at line 81 of file OverlapRemovalGenUseAlg.h.

81{ if (!empty() && !variable.empty()) m_writeDecorKeys.emplace_back(m_readKey.key() + "." + variable); }

◆ empty()

template<class ContainerType>
bool OverlapRemovalGenUseAlg::DataKeyHandler< ContainerType >::empty ( ) const
inline

Definition at line 79 of file OverlapRemovalGenUseAlg.h.

79{ return m_readKey.empty(); }

◆ initialize()

template<class ContainerType>
StatusCode OverlapRemovalGenUseAlg::DataKeyHandler< ContainerType >::initialize ( bool allow_empty = false)
inline

Definition at line 71 of file OverlapRemovalGenUseAlg.h.

71 {
72 if (!m_readKey.initialize(!allow_empty).isSuccess()) return StatusCode::FAILURE;
73 if (!m_readDecorKeys.initialize().isSuccess()) return StatusCode::FAILURE;
74 if (!m_writeDecorKeys.initialize().isSuccess()) return StatusCode::FAILURE;
76 }

◆ key()

template<class ContainerType>
std::string OverlapRemovalGenUseAlg::DataKeyHandler< ContainerType >::key ( ) const
inline

Definition at line 78 of file OverlapRemovalGenUseAlg.h.

78{ return m_readKey.key();}

◆ operator const SG::ReadHandleKey< ContainerType > &()

template<class ContainerType>
OverlapRemovalGenUseAlg::DataKeyHandler< ContainerType >::operator const SG::ReadHandleKey< ContainerType > & ( ) const
inline

Definition at line 77 of file OverlapRemovalGenUseAlg.h.

77{return m_readKey;}

Member Data Documentation

◆ m_readDecorKeys

template<class ContainerType>
SG::ReadDecorHandleKeyArray<ContainerType> OverlapRemovalGenUseAlg::DataKeyHandler< ContainerType >::m_readDecorKeys {}
private

Definition at line 84 of file OverlapRemovalGenUseAlg.h.

84{};

◆ m_readKey

template<class ContainerType>
SG::ReadHandleKey<ContainerType> OverlapRemovalGenUseAlg::DataKeyHandler< ContainerType >::m_readKey {}
private

Definition at line 83 of file OverlapRemovalGenUseAlg.h.

83{};

◆ m_writeDecorKeys

template<class ContainerType>
SG::WriteDecorHandleKeyArray<ContainerType> OverlapRemovalGenUseAlg::DataKeyHandler< ContainerType >::m_writeDecorKeys {}
private

Definition at line 85 of file OverlapRemovalGenUseAlg.h.

85{};

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