Gaudi Framework, version v25r2

Home   Generated: Wed Jun 4 2014
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Public Member Functions | List of all members
ServiceHandleArray< T > Class Template Reference

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

#include <GaudiKernel/ServiceHandle.h>

Inheritance diagram for ServiceHandleArray< T >:
Inheritance graph
[legend]
Collaboration diagram for ServiceHandleArray< T >:
Collaboration graph
[legend]

Public Member Functions

 ServiceHandleArray (const std::vector< std::string > &myTypesAndNamesList, const std::string &myComponentType, const std::string &myParentName)
 Generic constructor.
 
virtual ~ServiceHandleArray ()
 
 ServiceHandleArray (const std::string &myParentName)
 
virtual bool push_back (const std::string &serviceTypeAndName)
 Add a handle to the array with "type/name" given in <myHandleTypeAndName>.
 
virtual bool push_back (const ServiceHandle< T > &myHandle)
 
- Public Member Functions inherited from GaudiHandleArray< ServiceHandle< T > >
virtual ~GaudiHandleArray ()
 
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.
 
iterator begin ()
 
const_iterator begin () const
 
iterator end ()
 
const_iterator end () const
 
const_iterator rbegin () const
 
const_iterator rend () const
 
size_type size () const
 
virtual void clear ()
 Clear the list of handles.
 
virtual bool empty () const
 Return whether the list of tools is empty.
 
ServiceHandle< T > & operator[] (int index)
 
const ServiceHandle< T > & operator[] (int index) const
 
ServiceHandle< T > * operator[] (const std::string &name)
 Get pointer (!) to ToolHandle by instance name.
 
const ServiceHandle< T > * operator[] (const std::string &name) const
 Get const pointer (!) to ToolHandle by instance name.
 
StatusCode retrieve ()
 Retrieve 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.
 
- 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.
 

Additional Inherited Members

- Public Types inherited from GaudiHandleArray< ServiceHandle< T > >
typedef std::vector
< ServiceHandle< 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
 
- Protected Member Functions inherited from GaudiHandleArray< ServiceHandle< 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.
 

Detailed Description

template<class T>
class ServiceHandleArray< 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
Yushu Yao yyao@.nosp@m.lbl..nosp@m.gov

Definition at line 27 of file PropertyMgr.h.

Constructor & Destructor Documentation

template<class T>
ServiceHandleArray< T >::ServiceHandleArray ( const std::vector< std::string > &  myTypesAndNamesList,
const std::string &  myComponentType,
const std::string &  myParentName 
)
inline

Generic constructor.

Probably not very useful...

Definition at line 119 of file ServiceHandle.h.

:
GaudiHandleArray< ServiceHandle<T> >( myTypesAndNamesList,
myComponentType,
myParentName)
{ }
template<class T>
virtual ServiceHandleArray< T >::~ServiceHandleArray ( )
inlinevirtual

Definition at line 126 of file ServiceHandle.h.

{}
template<class T>
ServiceHandleArray< T >::ServiceHandleArray ( const std::string &  myParentName)
inline

Definition at line 128 of file ServiceHandle.h.

: GaudiHandleArray< ServiceHandle<T> >( "Service", myParentName)
{ }

Member Function Documentation

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

Add a handle to the array with "type/name" given in <myHandleTypeAndName>.

Return whether addition was successful or not. Must be implemented by derived class with concrete handle category.

Implements GaudiHandleArrayBase.

Definition at line 132 of file ServiceHandle.h.

{
ServiceHandle<T> handle( serviceTypeAndName,GaudiHandleInfo::parentName());
return true;
}
template<class T>
virtual bool ServiceHandleArray< T >::push_back ( const ServiceHandle< T > &  myHandle)
inlinevirtual

Reimplemented from GaudiHandleArray< ServiceHandle< T > >.

Definition at line 138 of file ServiceHandle.h.

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

The documentation for this class was generated from the following files:
Generated at Wed Jun 4 2014 14:49:03 for Gaudi Framework, version v25r2 by Doxygen version 1.8.2 written by Dimitri van Heesch, © 1997-2004