![]() |
The Gaudi Framework
master (1304469f)
|
Array of Handles to be used in lieu of vector of naked pointers to tools. More...
#include <GaudiKernel/ToolHandle.h>


Public Member Functions | |
| ToolHandleArray (const std::vector< std::string > &myTypesAndNames, const IInterface *parent=nullptr, bool createIf=true) | |
| Generic constructor. | |
| ToolHandleArray (const IInterface *parent=nullptr, bool createIf=true) | |
| Constructor which creates and empty list. | |
| bool | push_back (const std::string &toolTypeAndName) override |
| Add a handle to the array with given tool type and name. | |
| bool | push_back (const ToolHandle< T > &myHandle) override |
| Ensure that for added handles the parent and creatIf are taken from this array. | |
| template<std::derived_from< IProperty > OWNER> | |
| ToolHandleArray (OWNER *owner, std::string name, const std::vector< std::string > &typesAndNames={}, std::string doc="") | |
| Autodeclaring constructor with property name, tool type/name and documentation. | |
Public Member Functions inherited from ToolHandleInfo | |
| virtual | ~ToolHandleInfo ()=default |
| bool | isPublic () const noexcept |
| bool | createIf () const noexcept |
| const IInterface * | parent () const noexcept |
Public Member Functions inherited from GaudiHandleArray< ToolHandle< T > > | |
| GaudiHandleArray & | operator= (const std::vector< std::string > &myTypesAndNamesList) |
| Set the array of GaudiHandles from typeAndNames given in vector of strings. | |
| GaudiHandleArrayBase::BaseHandleArray | getBaseArray () override |
| Get a read-write vector of GaudiHandleBase* pointing to the real handles. | |
| GaudiHandleArrayBase::ConstBaseHandleArray | getBaseArray () const override |
| Get a read-only vector of const GaudiHandleBase* pointing to the real handles. | |
| iterator | begin () |
| const_iterator | begin () const |
| iterator | end () |
| const_iterator | end () const |
| const_iterator | rbegin () const |
| const_iterator | rend () const |
| size_type | size () const |
| void | clear () override |
| Clear the list of handles. | |
| bool | empty () const override |
| Return whether the list of tools is empty. | |
| T & | operator[] (int index) |
| const T & | operator[] (int index) const |
| T * | operator[] (std::string_view name) |
| Get pointer (!) to ToolHandle by instance name. | |
| const T * | operator[] (std::string_view name) const |
| Get const pointer (!) to ToolHandle by instance name. | |
| virtual bool | push_back (const T &myHandle) |
| StatusCode | retrieve () override |
| Retrieve all tools. | |
| StatusCode | release () override |
| Release all tools. | |
| virtual bool | retrieved () const override |
| has Array been retreived? | |
Public Member Functions inherited from GaudiHandleArrayBase | |
| bool | setTypesAndNames (const std::vector< std::string > &myTypesAndNamesList) |
| Set the array of handles from list of "type/name" strings in <myTypesAndNamesList>. | |
| const std::vector< std::string > | typesAndNames () const |
| Return a vector with "type/name" strings of all handles in the array. | |
| const std::vector< std::string > | types () const |
| Return a vector with "type" strings of all handles in the array. | |
| const std::vector< std::string > | names () const |
| Return a vector with "type/name" strings of all handles in the array. | |
| const std::vector< std::string > | getBaseInfos (auto(GaudiHandleBase::*pMemFunc)() const) const |
| Helper function to get a vector of strings filled with the return value of each tool of a member function if GaudiHandleBase. | |
| std::string | pythonPropertyClassName () const override |
| Name of the componentType with "HandleArray" appended. | |
| std::string | pythonRepr () const override |
| Python representation of array of handles, i.e. | |
Public Member Functions inherited from GaudiHandleInfo | |
| virtual | ~GaudiHandleInfo () |
| virtual destructor so that derived class destructor is called. | |
| const std::string & | componentType () const |
| const std::string & | propertyName () const |
| name as used in declareProperty(name,gaudiHandle) | |
| void | setPropertyName (std::string propName) |
| set name as used in declareProperty(name,gaudiHandle). | |
| const std::string & | parentName () const |
| The name of the parent. | |
Friends | |
| std::ostream & | operator<< (std::ostream &os, const ToolHandleArray< T > &handle) |
Additional Inherited Members | |
Public Types inherited from GaudiHandleArray< ToolHandle< T > > | |
| typedef std::vector< T > | HandleVector |
| typedef HandleVector::value_type | value_type |
| typedef HandleVector::size_type | size_type |
| typedef HandleVector::reference | reference |
| typedef HandleVector::const_reference | const_reference |
| typedef HandleVector::iterator | iterator |
| typedef HandleVector::const_iterator | const_iterator |
| typedef HandleVector::reverse_iterator | reverse_iterator |
| typedef HandleVector::const_reverse_iterator | const_reverse_iterator |
Public Types inherited from GaudiHandleArrayBase | |
| using | PropertyType = GaudiHandleArrayProperty |
| typedef std::vector< GaudiHandleBase * > | BaseHandleArray |
| typedef std::vector< const GaudiHandleBase * > | ConstBaseHandleArray |
Static Public Member Functions inherited from ToolHandleInfo | |
| static std::string | toolComponentType (const IInterface *parent) |
| static std::string | toolParentName (const IInterface *parent) |
Protected Member Functions inherited from ToolHandleInfo | |
| ToolHandleInfo (const IInterface *parent=nullptr, bool createIf=true) | |
Protected Member Functions inherited from GaudiHandleArray< ToolHandle< T > > | |
| GaudiHandleArray (const std::vector< std::string > &myTypesAndNamesList, std::string myComponentType, std::string myParentName) | |
| Generic constructor. | |
| GaudiHandleArray (const std::string &myComponentType, const std::string &myParentName) | |
| Constructor creating an empty array. | |
Protected Member Functions inherited from GaudiHandleArrayBase | |
| GaudiHandleArrayBase (std::string myComponentType, std::string myParentName) | |
Protected Member Functions inherited from GaudiHandleInfo | |
| GaudiHandleInfo (std::string myComponentType, std::string myParentName) | |
| Some basic information and helper functions shared between various handles/arrays. | |
| void | setComponentType (std::string componentType) |
| The component type. | |
| void | setParentName (std::string parent) |
| The name of the parent. | |
Protected Attributes inherited from ToolHandleInfo | |
| const IInterface * | m_parent = nullptr |
| bool | m_createIf { true } |
Array of Handles to be used in lieu of vector of naked pointers to tools.
This allows better control through the framework of tool loading and usage. @parameter T is the AlgTool interface class (or concrete class) of the tool to use, and must derive from IAlgTool.
Definition at line 393 of file ToolHandle.h.
|
inline |
Generic constructor.
Probably not very useful...
| typesAndNamesList | : a vector of strings with the concrete "type/name" strings for the list of tools |
| parent | : passed on to ToolHandle, so has the same meaning as for ToolHandle |
| createIf | : passed on to ToolHandle, so has the same meaning as for ToolHandle |
Definition at line 404 of file ToolHandle.h.
|
inline |
Constructor which creates and empty list.
| parent | : passed on to ToolHandle, so has the same meaning as for ToolHandle |
| createIf | : passed on to ToolHandle, so has the same meaning as for ToolHandle |
Definition at line 414 of file ToolHandle.h.
|
inline |
Autodeclaring constructor with property name, tool type/name and documentation.
Definition at line 435 of file ToolHandle.h.
|
inlineoverridevirtual |
Add a handle to the array with given tool type and name.
This function overrides the one in GaudiHandleArray<T>, as this is a special case. The private/public choice and createIf is determined by what was given in the constructor of the ToolHandleArray.
Reimplemented from GaudiHandleArray< ToolHandle< T > >.
Definition at line 423 of file ToolHandle.h.
|
inlineoverride |
Ensure that for added handles the parent and creatIf are taken from this array.
Definition at line 430 of file ToolHandle.h.
|
friend |
Definition at line 444 of file ToolHandle.h.