|  | The Gaudi Framework
    v27r0
    | 
Handle to be used in lieu of naked pointers to tools. More...
#include <GaudiKernel/ToolHandle.h>


| Public Member Functions | |
| ToolHandle (const IInterface *parent=nullptr, bool createIf=true) | |
| Constructor for a tool with default tool type and name.  More... | |
| ToolHandle (const std::string &toolTypeAndName, const IInterface *parent=nullptr, bool createIf=true) | |
| Create a handle ('smart pointer') to a tool.  More... | |
| StatusCode | initialize (const std::string &toolTypeAndName, const IInterface *parent=nullptr, bool createIf=true) | 
| StatusCode | retrieve () const | 
| Retrieve the AlgTool.  More... | |
| StatusCode | release () const | 
| Release the AlgTool.  More... | |
| StatusCode | retrieve (T *&algTool) const override | 
| Do the real retrieval of the AlgTool.  More... | |
| StatusCode | release (T *algTool) const override | 
| Do the real release of the AlgTool.  More... | |
| ToolHandle (const IInterface *parent=nullptr, bool createIf=true) | |
| Constructor for a tool with default tool type and name.  More... | |
| ToolHandle (const std::string &toolTypeAndName, const IInterface *parent=nullptr, bool createIf=true) | |
| Create a handle ('smart pointer') to a tool.  More... | |
| StatusCode | initialize (const std::string &toolTypeAndName, const IInterface *parent=nullptr, bool createIf=true) | 
| StatusCode | retrieve () const | 
| Retrieve the AlgTool.  More... | |
| StatusCode | release () const | 
| Release the AlgTool.  More... | |
| StatusCode | retrieve (T *&algTool) const override | 
| Do the real retrieval of the AlgTool.  More... | |
| StatusCode | release (T *algTool) const override | 
| Do the real release of the AlgTool.  More... | |
|  Public Member Functions inherited from BaseToolHandle | |
| virtual | ~BaseToolHandle () | 
| StatusCode | retrieve (IAlgTool *&tool) const | 
| virtual | ~BaseToolHandle () | 
| StatusCode | retrieve (IAlgTool *&tool) const | 
|  Public Member Functions inherited from ToolHandleInfo | |
| virtual | ~ToolHandleInfo ()=default | 
| bool | isPublic () const | 
| bool | createIf () const | 
| const IInterface * | parent () const | 
| virtual | ~ToolHandleInfo ()=default | 
| bool | isPublic () const | 
| bool | createIf () const | 
| const IInterface * | parent () const | 
|  Public Member Functions inherited from GaudiHandle< T > | |
| GaudiHandle (const GaudiHandle &other) | |
| Copy constructor needed for correct ref-counting.  More... | |
| GaudiHandle & | operator= (const GaudiHandle &other) | 
| Assignment operator for correct ref-counting.  More... | |
| ~GaudiHandle () | |
| StatusCode | retrieve () const | 
| Retrieve the component.  More... | |
| StatusCode | release () const | 
| Release the component.  More... | |
| bool | isValid () const | 
| Check if the handle is valid (try to retrive the object is not done yet).  More... | |
| operator bool () const | |
| For testing if handle has component.  More... | |
| T * | get () const | 
| Return the wrapped pointer, not calling retrieve() if null.  More... | |
| bool | isSet () const | 
| True if the wrapped pointer is not null.  More... | |
| T & | operator* () | 
| T * | operator-> () | 
| T & | operator* () const | 
| T * | operator-> () const | 
| std::string | getDefaultType () | 
| Helper function to get default type string from the class type.  More... | |
| std::string | getDefaultName () | 
| GaudiHandle (const GaudiHandle &other) | |
| Copy constructor needed for correct ref-counting.  More... | |
| GaudiHandle & | operator= (const GaudiHandle &other) | 
| Assignment operator for correct ref-counting.  More... | |
| ~GaudiHandle () | |
| StatusCode | retrieve () const | 
| Retrieve the component.  More... | |
| StatusCode | release () const | 
| Release the component.  More... | |
| bool | isValid () const | 
| Check if the handle is valid (try to retrive the object is not done yet).  More... | |
| operator bool () const | |
| For testing if handle has component.  More... | |
| T * | get () const | 
| Return the wrapped pointer, not calling retrieve() if null.  More... | |
| bool | isSet () const | 
| True if the wrapped pointer is not null.  More... | |
| T & | operator* () | 
| T * | operator-> () | 
| T & | operator* () const | 
| T * | operator-> () const | 
| std::string | getDefaultType () | 
| Helper function to get default type string from the class type.  More... | |
| std::string | getDefaultName () | 
|  Public Member Functions inherited from GaudiHandleBase | |
| std::string | typeAndName () const | 
| The full type and name: "type/name".  More... | |
| std::string | type () const | 
| The concrete component class name: the part before the '/'.  More... | |
| std::string | name () const | 
| The instance name: the part after the '/'.  More... | |
| bool | empty () const | 
| Check if the handle has been set to empty string (i.e.  More... | |
| void | setTypeAndName (std::string myTypeAndName) | 
| The component "type/name" string.  More... | |
| void | setName (const std::string &myName) | 
| Set the instance name (part after the '/') without changing the class type.  More... | |
| std::string | pythonPropertyClassName () const | 
| Name of the componentType with "Handle" appended.  More... | |
| std::string | messageName () const | 
| name used for printing messages  More... | |
| virtual std::string | pythonRepr () const | 
| Python representation of handle, i.e.  More... | |
| std::string | typeAndName () const | 
| The full type and name: "type/name".  More... | |
| std::string | type () const | 
| The concrete component class name: the part before the '/'.  More... | |
| std::string | name () const | 
| The instance name: the part after the '/'.  More... | |
| bool | empty () const | 
| Check if the handle has been set to empty string (i.e.  More... | |
| void | setTypeAndName (std::string myTypeAndName) | 
| The component "type/name" string.  More... | |
| void | setName (const std::string &myName) | 
| Set the instance name (part after the '/') without changing the class type.  More... | |
| std::string | pythonPropertyClassName () const | 
| Name of the componentType with "Handle" appended.  More... | |
| std::string | messageName () const | 
| name used for printing messages  More... | |
| virtual std::string | pythonRepr () const | 
| Python representation of handle, i.e.  More... | |
|  Public Member Functions inherited from GaudiHandleInfo | |
| virtual | ~GaudiHandleInfo ()=default | 
| virtual destructor so that derived class destructor is called.  More... | |
| const std::string & | componentType () const | 
| const std::string & | propertyName () const | 
| name as used in declareProperty(name,gaudiHandle)  More... | |
| void | setPropertyName (std::string propName) | 
| set name as used in declareProperty(name,gaudiHandle).  More... | |
| const std::string & | parentName () const | 
| The name of the parent.  More... | |
| virtual | ~GaudiHandleInfo ()=default | 
| virtual destructor so that derived class destructor is called.  More... | |
| const std::string & | componentType () const | 
| const std::string & | propertyName () const | 
| name as used in declareProperty(name,gaudiHandle)  More... | |
| void | setPropertyName (std::string propName) | 
| set name as used in declareProperty(name,gaudiHandle).  More... | |
| const std::string & | parentName () const | 
| The name of the parent.  More... | |
| Protected Member Functions | |
| StatusCode | i_retrieve (IAlgTool *&algTool) const override | 
| StatusCode | i_retrieve (IAlgTool *&algTool) const override | 
|  Protected Member Functions inherited from BaseToolHandle | |
| BaseToolHandle (const IInterface *parent=nullptr, bool createIf=true) | |
| BaseToolHandle (const IInterface *parent=nullptr, bool createIf=true) | |
|  Protected Member Functions inherited from ToolHandleInfo | |
| ToolHandleInfo (const IInterface *parent=nullptr, bool createIf=true) | |
| ToolHandleInfo (const IInterface *parent=nullptr, bool createIf=true) | |
|  Protected Member Functions inherited from GaudiHandle< T > | |
| GaudiHandle (std::string myTypeAndName, std::string myComponentType, std::string myParentName) | |
| GaudiHandle (std::string myTypeAndName, std::string myComponentType, std::string myParentName) | |
|  Protected Member Functions inherited from GaudiHandleBase | |
| GaudiHandleBase (std::string myTypeAndName, std::string myComponentType, std::string myParentName) | |
| Create a handle ('smart pointer') to a gaudi component.  More... | |
| GaudiHandleBase (std::string myTypeAndName, std::string myComponentType, std::string myParentName) | |
| Create a handle ('smart pointer') to a gaudi component.  More... | |
|  Protected Member Functions inherited from GaudiHandleInfo | |
| GaudiHandleInfo (std::string myComponentType, std::string myParentName) | |
| Some basic information and helper functions shared between various handles/arrays.  More... | |
| void | setComponentType (const std::string &componentType) | 
| The component type.  More... | |
| void | setParentName (const std::string &parent) | 
| The name of the parent.  More... | |
| GaudiHandleInfo (std::string myComponentType, std::string myParentName) | |
| Some basic information and helper functions shared between various handles/arrays.  More... | |
| void | setComponentType (const std::string &componentType) | 
| The component type.  More... | |
| void | setParentName (const std::string &parent) | 
| The name of the parent.  More... | |
| Private Attributes | |
| ServiceHandle< IToolSvc > | m_pToolSvc | 
| Friends | |
| class | Algorithm | 
| class | AlgTool | 
| class | Service | 
| Additional Inherited Members | |
|  Static Public Member Functions inherited from ToolHandleInfo | |
| static std::string | toolComponentType (const IInterface *parent) | 
| static std::string | toolParentName (const IInterface *parent) | 
| static std::string | toolComponentType (const IInterface *parent) | 
| static std::string | toolParentName (const IInterface *parent) | 
|  Protected Attributes inherited from ToolHandleInfo | |
| const IInterface * | m_parent | 
| bool | m_createIf | 
Handle to be used in lieu of naked pointers to tools.
This allows better control through the framework of tool loading and usage. T is the AlgTool interface class (or concrete class) of the tool to use, and must derive from IAlgTool.
Definition at line 21 of file PropertyMgr.h.
| 
 | inline | 
Constructor for a tool with default tool type and name.
Can be called only if the type T is a concrete tool type (not an interface), and you want to use the default name.
Definition at line 106 of file ToolHandle.h.
| 
 | inline | 
Create a handle ('smart pointer') to a tool.
The arguments are passed on to ToolSvc, and have the same meaning:
| owner | class owning the ToolHandle | 
| toolType | "MyToolType/MyToolName" "MyToolType" is short for "MyToolType/MyToolType" 'MyToolType' is the name of the class of the concrete tool 'MyToolName' is to distinguish several tool instances of the same class | 
| parent | the parent Algorithm,Tool or Service of which this tool is a member. If non-zero, the the tool is a private tool of the parent, otherwise it is a public (shared) tool. | 
| createIf | if true, create tool if not yet existing. | 
Definition at line 145 of file ToolHandle.h.
| 
 | inline | 
Constructor for a tool with default tool type and name.
Can be called only if the type T is a concrete tool type (not an interface), and you want to use the default name.
Definition at line 106 of file ToolHandle.h.
| 
 | inline | 
Create a handle ('smart pointer') to a tool.
The arguments are passed on to ToolSvc, and have the same meaning:
| owner | class owning the ToolHandle | 
| toolType | "MyToolType/MyToolName" "MyToolType" is short for "MyToolType/MyToolType" 'MyToolType' is the name of the class of the concrete tool 'MyToolName' is to distinguish several tool instances of the same class | 
| parent | the parent Algorithm,Tool or Service of which this tool is a member. If non-zero, the the tool is a private tool of the parent, otherwise it is a public (shared) tool. | 
| createIf | if true, create tool if not yet existing. | 
Definition at line 145 of file ToolHandle.h.
| 
 | inlineoverrideprotectedvirtual | 
Implements BaseToolHandle.
Definition at line 196 of file ToolHandle.h.
| 
 | inlineoverrideprotectedvirtual | 
Implements BaseToolHandle.
Definition at line 196 of file ToolHandle.h.
| 
 | inline | 
Definition at line 156 of file ToolHandle.h.
| 
 | inline | 
Definition at line 156 of file ToolHandle.h.
| 
 | inline | 
Release the AlgTool.
Function must be repeated here to avoid hiding the function release( T*& )
Definition at line 179 of file ToolHandle.h.
| 
 | inline | 
Release the AlgTool.
Function must be repeated here to avoid hiding the function release( T*& )
Definition at line 179 of file ToolHandle.h.
| 
 | inlineoverridevirtual | 
Do the real release of the AlgTool.
Reimplemented from GaudiHandle< T >.
Definition at line 191 of file ToolHandle.h.
| 
 | inlineoverridevirtual | 
Do the real release of the AlgTool.
Reimplemented from GaudiHandle< T >.
Definition at line 191 of file ToolHandle.h.
| 
 | inline | 
Retrieve the AlgTool.
Release existing tool if needed. Function must be repeated here to avoid hiding the function retrieve( T*& )
Definition at line 173 of file ToolHandle.h.
| 
 | inline | 
Retrieve the AlgTool.
Release existing tool if needed. Function must be repeated here to avoid hiding the function retrieve( T*& )
Definition at line 173 of file ToolHandle.h.
| 
 | inlineoverridevirtual | 
Do the real retrieval of the AlgTool.
Implements GaudiHandle< T >.
Definition at line 184 of file ToolHandle.h.
| 
 | inlineoverridevirtual | 
Do the real retrieval of the AlgTool.
Implements GaudiHandle< T >.
Definition at line 184 of file ToolHandle.h.
| 
 | friend | 
Definition at line 96 of file ToolHandle.h.
| 
 | friend | 
Definition at line 99 of file ToolHandle.h.
| 
 | friend | 
Definition at line 100 of file ToolHandle.h.
| 
 | mutableprivate | 
Definition at line 206 of file ToolHandle.h.