Loading [MathJax]/extensions/tex2jax.js
The Gaudi Framework  v30r3 (a5ef0a68)
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
ToolHandleInfo Class Reference

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

#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 29 of file ToolHandle.h.

Constructor & Destructor Documentation

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

Definition at line 33 of file ToolHandle.h.

34  : m_parent( parent ), m_createIf( createIf )
35  {
36  }
const IInterface * m_parent
Definition: ToolHandle.h:60
bool createIf() const noexcept
Definition: ToolHandle.h:43
virtual ToolHandleInfo::~ToolHandleInfo ( )
virtualdefault

Member Function Documentation

bool ToolHandleInfo::createIf ( ) const
inlinenoexcept

Definition at line 43 of file ToolHandle.h.

43 { return m_createIf; }
bool ToolHandleInfo::isPublic ( ) const
inlinenoexcept

Definition at line 41 of file ToolHandle.h.

41 { return !m_parent; }
const IInterface * m_parent
Definition: ToolHandle.h:60
const IInterface* ToolHandleInfo::parent ( ) const
inlinenoexcept

Definition at line 45 of file ToolHandle.h.

45 { return m_parent; }
const IInterface * m_parent
Definition: ToolHandle.h:60
static std::string ToolHandleInfo::toolComponentType ( const IInterface parent)
inlinestatic

Definition at line 51 of file ToolHandle.h.

51 { return parent ? "PrivateTool" : "PublicTool"; }
static std::string ToolHandleInfo::toolParentName ( const IInterface parent)
inlinestatic

Definition at line 53 of file ToolHandle.h.

54  {
55  auto* pNamed = ( parent ? dynamic_cast<const INamedInterface*>( parent ) : nullptr );
56  return ( !parent ? "ToolSvc" : ( pNamed ? pNamed->name() : "" ) );
57  }
const IInterface * parent() const noexcept
Definition: ToolHandle.h:45
IInterface compliant class extending IInterface with the name() method.

Member Data Documentation

bool ToolHandleInfo::m_createIf {true}
protected

Definition at line 61 of file ToolHandle.h.

const IInterface* ToolHandleInfo::m_parent = nullptr
protected

Definition at line 60 of file ToolHandle.h.


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