All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
ToolHandleArray< T > Class Template Reference

Array of Handles to be used in lieu of vector of naked pointers to tools. More...

#include <GaudiKernel/ToolHandle.h>

Inheritance diagram for ToolHandleArray< T >:
Collaboration diagram for ToolHandleArray< T >:

Public Member Functions

 ToolHandleArray (const std::vector< std::string > &myTypesAndNames, const IInterface *parent=0, bool createIf=true)
 Generic constructor.
 
 ToolHandleArray (const IInterface *parent=0, bool createIf=true)
 Constructor which creates and empty list.
 
virtual bool push_back (const std::string &toolTypeAndName)
 Add a handle to the array with given tool type and name.
 
virtual bool push_back (const ToolHandle< T > &myHandle)
 Ensure that for added handles the parent and creatIf are taken from this array.
 
 ToolHandleArray (const std::vector< std::string > &myTypesAndNames, const IInterface *parent=0, bool createIf=true)
 Generic constructor.
 
 ToolHandleArray (const IInterface *parent=0, bool createIf=true)
 Constructor which creates and empty list.
 
virtual bool push_back (const std::string &toolTypeAndName)
 Add a handle to the array with given tool type and name.
 
virtual bool push_back (const ToolHandle< T > &myHandle)
 Ensure that for added handles the parent and creatIf are taken from this array.
 
- Public Member Functions inherited from ToolHandleInfo
virtual ~ToolHandleInfo ()
 
bool isPublic () const
 
bool createIf () const
 
const IInterfaceparent () const
 
const std::string toolComponentType (const IInterface *parent) const
 
const std::string toolParentName (const IInterface *parent) const
 
virtual ~ToolHandleInfo ()
 
bool isPublic () const
 
bool createIf () const
 
const IInterfaceparent () const
 
const std::string toolComponentType (const IInterface *parent) const
 
const std::string toolParentName (const IInterface *parent) const
 
- Public Member Functions inherited from GaudiHandleArray< ToolHandle< T > >
virtual ~GaudiHandleArray ()
 
virtual ~GaudiHandleArray ()
 
GaudiHandleArrayoperator= (const std::vector< std::string > &myTypesAndNamesList)
 Set the array of GaudiHandles from typeAndNames given in vector of strings.
 
GaudiHandleArrayoperator= (const std::vector< std::string > &myTypesAndNamesList)
 Set the array of GaudiHandles from typeAndNames given in vector of strings.
 
virtual
GaudiHandleArrayBase::BaseHandleArray 
getBaseArray ()
 Get a read-write vector of GaudiHandleBase* pointing to the real handles.
 
virtual
GaudiHandleArrayBase::ConstBaseHandleArray 
getBaseArray () const
 Get a read-only vector of const GaudiHandleBase* pointing to the real handles.
 
virtual
GaudiHandleArrayBase::BaseHandleArray 
getBaseArray ()
 Get a read-write vector of GaudiHandleBase* pointing to the real handles.
 
virtual
GaudiHandleArrayBase::ConstBaseHandleArray 
getBaseArray () const
 Get a read-only vector of const GaudiHandleBase* pointing to the real handles.
 
iterator begin ()
 
const_iterator begin () const
 
iterator begin ()
 
const_iterator begin () const
 
iterator end ()
 
const_iterator end () const
 
iterator end ()
 
const_iterator end () const
 
const_iterator rbegin () const
 
const_iterator rbegin () const
 
const_iterator rend () const
 
const_iterator rend () const
 
size_type size () const
 
size_type size () const
 
virtual void clear ()
 Clear the list of handles.
 
virtual void clear ()
 Clear the list of handles.
 
virtual bool empty () const
 Return whether the list of tools is empty.
 
virtual bool empty () const
 Return whether the list of tools is empty.
 
ToolHandle< T > & operator[] (int index)
 
const ToolHandle< T > & operator[] (int index) const
 
ToolHandle< T > * operator[] (const std::string &name)
 Get pointer (!) to ToolHandle by instance name.
 
const ToolHandle< T > * operator[] (const std::string &name) const
 Get const pointer (!) to ToolHandle by instance name.
 
ToolHandle< T > & operator[] (int index)
 
const ToolHandle< T > & operator[] (int index) const
 
ToolHandle< T > * operator[] (const std::string &name)
 Get pointer (!) to ToolHandle by instance name.
 
const ToolHandle< T > * operator[] (const std::string &name) const
 Get const pointer (!) to ToolHandle by instance name.
 
StatusCode retrieve ()
 Retrieve all tools.
 
StatusCode retrieve ()
 Retrieve all tools.
 
StatusCode release ()
 Release all tools.
 
StatusCode release ()
 Release all tools.
 
- 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 (std::string(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.
 
virtual const std::string pythonPropertyClassName () const
 Name of the componentType with "HandleArray" appended.
 
virtual const std::string pythonRepr () const
 Python representation of array of handles, i.e.
 
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 (std::string(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.
 
virtual const std::string pythonPropertyClassName () const
 Name of the componentType with "HandleArray" appended.
 
virtual const std::string pythonRepr () const
 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 (const std::string &propName)
 set name as used in declareProperty(name,gaudiHandle).
 
const std::string & parentName () const
 The name of the parent.
 
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 (const std::string &propName)
 set name as used in declareProperty(name,gaudiHandle).
 
const std::string & parentName () const
 The name of the parent.
 

Additional Inherited Members

- Public Types inherited from GaudiHandleArray< ToolHandle< T > >
typedef std::vector
< ToolHandle< T > > 
HandleVector
 
typedef std::vector
< ToolHandle< T > > 
HandleVector
 
typedef HandleVector::value_type value_type
 
typedef HandleVector::value_type value_type
 
typedef HandleVector::size_type size_type
 
typedef HandleVector::size_type size_type
 
typedef HandleVector::reference reference
 
typedef HandleVector::reference reference
 
typedef
HandleVector::const_reference 
const_reference
 
typedef
HandleVector::const_reference 
const_reference
 
typedef HandleVector::iterator iterator
 
typedef HandleVector::iterator iterator
 
typedef
HandleVector::const_iterator 
const_iterator
 
typedef
HandleVector::const_iterator 
const_iterator
 
typedef
HandleVector::reverse_iterator 
reverse_iterator
 
typedef
HandleVector::reverse_iterator 
reverse_iterator
 
typedef
HandleVector::const_reverse_iterator 
const_reverse_iterator
 
typedef
HandleVector::const_reverse_iterator 
const_reverse_iterator
 
- Protected Member Functions inherited from ToolHandleInfo
 ToolHandleInfo (const IInterface *parent=0, bool createIf=true)
 
 ToolHandleInfo (const IInterface *parent=0, bool createIf=true)
 
- Protected Member Functions inherited from GaudiHandleArray< ToolHandle< T > >
 GaudiHandleArray (const std::vector< std::string > &myTypesAndNamesList, const std::string &myComponentType, const std::string &myParentName)
 Generic constructor.
 
 GaudiHandleArray (const std::string &myComponentType, const std::string &myParentName)
 Constructor creating an empty array.
 
 GaudiHandleArray (const std::vector< std::string > &myTypesAndNamesList, const std::string &myComponentType, const std::string &myParentName)
 Generic constructor.
 
 GaudiHandleArray (const std::string &myComponentType, const std::string &myParentName)
 Constructor creating an empty array.
 

Detailed Description

template<class T>
class ToolHandleArray< T >

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. T is the AlgTool interface class (or concrete class) of the tool to use, and must derive from IAlgTool.

Author
Marti.nosp@m.n.Wo.nosp@m.udstr.nosp@m.a@ce.nosp@m.rn.ch

Definition at line 26 of file PropertyMgr.h.

Constructor & Destructor Documentation

template<class T>
ToolHandleArray< T >::ToolHandleArray ( const std::vector< std::string > &  myTypesAndNames,
const IInterface parent = 0,
bool  createIf = true 
)
inline

Generic constructor.

Probably not very useful...

Parameters
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 174 of file ToolHandle.h.

template<class T>
ToolHandleArray< T >::ToolHandleArray ( const IInterface parent = 0,
bool  createIf = true 
)
inline

Constructor which creates and empty list.

Parameters
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 186 of file ToolHandle.h.

template<class T>
ToolHandleArray< T >::ToolHandleArray ( const std::vector< std::string > &  myTypesAndNames,
const IInterface parent = 0,
bool  createIf = true 
)
inline

Generic constructor.

Probably not very useful...

Parameters
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 174 of file ToolHandle.h.

template<class T>
ToolHandleArray< T >::ToolHandleArray ( const IInterface parent = 0,
bool  createIf = true 
)
inline

Constructor which creates and empty list.

Parameters
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 186 of file ToolHandle.h.

Member Function Documentation

template<class T>
virtual bool ToolHandleArray< T >::push_back ( const std::string &  toolTypeAndName)
inlinevirtual

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.

Implements GaudiHandleArrayBase.

Definition at line 196 of file ToolHandle.h.

{
ToolHandle<T> handle( toolTypeAndName,
return true;
}
template<class T>
virtual bool ToolHandleArray< T >::push_back ( const std::string &  toolTypeAndName)
inlinevirtual

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.

Implements GaudiHandleArrayBase.

Definition at line 196 of file ToolHandle.h.

{
ToolHandle<T> handle( toolTypeAndName,
return true;
}
template<class T>
virtual bool ToolHandleArray< T >::push_back ( const ToolHandle< T > &  myHandle)
inlinevirtual

Ensure that for added handles the parent and creatIf are taken from this array.

Reimplemented from GaudiHandleArray< ToolHandle< T > >.

Definition at line 205 of file ToolHandle.h.

{
return push_back( myHandle.typeAndName() );
}
template<class T>
virtual bool ToolHandleArray< T >::push_back ( const ToolHandle< T > &  myHandle)
inlinevirtual

Ensure that for added handles the parent and creatIf are taken from this array.

Reimplemented from GaudiHandleArray< ToolHandle< T > >.

Definition at line 205 of file ToolHandle.h.

{
return push_back( myHandle.typeAndName() );
}

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