The Gaudi Framework  v36r1 (3e2fb5a8)
ToolHandleInfo Class Reference

General info and helper functions for toolhandles and arrays. More...

#include </builds/gaudi/Gaudi/GaudiKernel/include/GaudiKernel/ToolHandle.h>

Inheritance diagram for ToolHandleInfo:
Collaboration diagram for ToolHandleInfo:

Public Member Functions

virtual ~ToolHandleInfo ()=default
 
bool isPublic () const noexcept
 
bool createIf () const noexcept
 
const IInterfaceparent () const noexcept
 

Static Public Member Functions

static std::string toolComponentType (const IInterface *parent)
 
static std::string toolParentName (const IInterface *parent)
 

Protected Member Functions

 ToolHandleInfo (const IInterface *parent=nullptr, bool createIf=true)
 

Protected Attributes

const IInterfacem_parent = nullptr
 
bool m_createIf {true}
 

Detailed Description

General info and helper functions for toolhandles and arrays.

Definition at line 41 of file ToolHandle.h.

Constructor & Destructor Documentation

◆ ToolHandleInfo()

ToolHandleInfo::ToolHandleInfo ( const IInterface parent = nullptr,
bool  createIf = true 
)
inlineprotected

Definition at line 44 of file ToolHandle.h.

◆ ~ToolHandleInfo()

virtual ToolHandleInfo::~ToolHandleInfo ( )
virtualdefault

Member Function Documentation

◆ createIf()

bool ToolHandleInfo::createIf ( ) const
inlinenoexcept

Definition at line 52 of file ToolHandle.h.

52 { return m_createIf; }

◆ isPublic()

bool ToolHandleInfo::isPublic ( ) const
inlinenoexcept

Definition at line 50 of file ToolHandle.h.

50 { return !m_parent; }

◆ parent()

const IInterface* ToolHandleInfo::parent ( ) const
inlinenoexcept

Definition at line 54 of file ToolHandle.h.

54 { return m_parent; }

◆ toolComponentType()

static std::string ToolHandleInfo::toolComponentType ( const IInterface parent)
inlinestatic

Definition at line 60 of file ToolHandle.h.

60 { return parent ? "PrivateTool" : "PublicTool"; }

◆ toolParentName()

static std::string ToolHandleInfo::toolParentName ( const IInterface parent)
inlinestatic

Definition at line 62 of file ToolHandle.h.

62  {
63  auto* pNamed = ( parent ? dynamic_cast<const INamedInterface*>( parent ) : nullptr );
64  return ( !parent ? "ToolSvc" : ( pNamed ? pNamed->name() : "" ) );
65  }

Member Data Documentation

◆ m_createIf

bool ToolHandleInfo::m_createIf {true}
protected

Definition at line 69 of file ToolHandle.h.

◆ m_parent

const IInterface* ToolHandleInfo::m_parent = nullptr
protected

Definition at line 68 of file ToolHandle.h.


The documentation for this class was generated from the following file:
INamedInterface
Definition: INamedInterface.h:25
ToolHandleInfo::m_parent
const IInterface * m_parent
Definition: ToolHandle.h:68
ToolHandleInfo::m_createIf
bool m_createIf
Definition: ToolHandle.h:69
ToolHandleInfo::parent
const IInterface * parent() const noexcept
Definition: ToolHandle.h:54
ToolHandleInfo::createIf
bool createIf() const noexcept
Definition: ToolHandle.h:52