Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

PropertyMgr Class Reference

Property manager helper class. More...

#include <GaudiKernel/PropertyMgr.h>

Inheritance diagram for PropertyMgr:

IProperty IInterface List of all members.

Public Methods

 PropertyMgr ()
 Constructors and destructors. More...

virtual ~PropertyMgr ()
template<classValueType> void declareProperty ( const std::string& name, ValueType& referencedVariable )
 Declare a property (templated). More...

 DECLARESIMPLEPROPERTY (Boolean) DECLARESIMPLEPROPERTY(Char) DECLARESIMPLEPROPERTY(SignedChar) DECLARESIMPLEPROPERTY(UnsignedChar) DECLARESIMPLEPROPERTY(Short) DECLARESIMPLEPROPERTY(UnsignedShort) DECLARESIMPLEPROPERTY(Integer) DECLARESIMPLEPROPERTY(UnsignedInteger) DECLARESIMPLEPROPERTY(Long) DECLARESIMPLEPROPERTY(UnsignedLong) DECLARESIMPLEPROPERTY(Float) DECLARESIMPLEPROPERTY(Double) DECLARESIMPLEPROPERTY(LongDouble) DECLARESIMPLEPROPERTY(String) DECLARESIMPLEPROPERTY(BooleanArray) DECLARESIMPLEPROPERTY(CharArray) DECLARESIMPLEPROPERTY(SignedCharArray) DECLARESIMPLEPROPERTY(UnsignedCharArray) DECLARESIMPLEPROPERTY(ShortArray) DECLARESIMPLEPROPERTY(UnsignedShortArray) DECLARESIMPLEPROPERTY(IntegerArray) DECLARESIMPLEPROPERTY(UnsignedIntegerArray) DECLARESIMPLEPROPERTY(LongArray) DECLARESIMPLEPROPERTY(UnsignedLongArray) DECLARESIMPLEPROPERTY(FloatArray) DECLARESIMPLEPROPERTY(DoubleArray) DECLARESIMPLEPROPERTY(LongDoubleArray) DECLARESIMPLEPROPERTY(StringArray) StatusCode setProperty( const Property& p)
StatusCode setProperty ( std::istream& s )
 Set the property by istream. More...

StatusCode setProperty ( const std::string& n, const std::string& v)
 Set the property by std::string. More...

StatusCode getProperty (Property* p) const
 Get the property by property. More...

const PropertygetProperty ( const std::string& name) const
 Get the property by name. More...

StatusCode getProperty ( const std::string& n, std::string& v ) const
 Get the property by std::string. More...

const std::vector<Property*>& getProperties ( ) const
 Get list of properties. More...

StatusCode queryInterface (const IID& riid, void** ppvInterface)
unsigned long addRef ()
 Increment the reference count of Interface instance. More...

unsigned long release ()
 Release Interface instance. More...


Private Types

typedef std::vector< PropertyRef* > PropertyCollectionType

Private Attributes

PropertyCollectionType m_properties
std::vector<bool> m_isOwned

Detailed Description

Property manager helper class.

This class is used by algorithms and services for helping to manage its own set of properties. It implements the IProperty interface.

Author(s):
Paul Maley , David Quarrie

Definition at line 20 of file PropertyMgr.h.


Member Typedef Documentation

typedef std::vector< PropertyRef* > PropertyMgr::PropertyCollectionType [private]
 

Definition at line 112 of file PropertyMgr.h.


Constructor & Destructor Documentation

PropertyMgr::PropertyMgr ( )
 

Constructors and destructors.

Definition at line 18 of file PropertyMgr.cpp.

PropertyMgr::~PropertyMgr ( ) [virtual]
 

Definition at line 20 of file PropertyMgr.cpp.


Member Function Documentation

PropertyMgr::DECLARESIMPLEPROPERTY ( Boolean ) const
 

unsigned long PropertyMgr::addRef ( ) [virtual]
 

Increment the reference count of Interface instance.

Reimplemented from IInterface.

Definition at line 142 of file PropertyMgr.cpp.

template<classValueType>
void PropertyMgr::declareProperty ( const std::string & name,
ValueType & referencedVariable ) [inline]
 

Declare a property (templated).

Definition at line 28 of file PropertyMgr.h.

Referenced by Service::declareProperty(), Auditor::declareProperty(), AlgTool::declareProperty(), and Algorithm::declareProperty().

const std::vector< Property *>& PropertyMgr::getProperties ( ) const [virtual]
 

Get list of properties.

Reimplemented from IProperty.

Definition at line 135 of file PropertyMgr.cpp.

Referenced by Service::getProperties(), Auditor::getProperties(), AlgTool::getProperties(), and Algorithm::getProperties().

StatusCode PropertyMgr::getProperty ( const std::string & n,
std::string & v ) const [virtual]
 

Get the property by std::string.

Reimplemented from IProperty.

Definition at line 119 of file PropertyMgr.cpp.

const Property & PropertyMgr::getProperty ( const std::string & name ) const [virtual]
 

Get the property by name.

Reimplemented from IProperty.

Definition at line 106 of file PropertyMgr.cpp.

StatusCode PropertyMgr::getProperty ( Property * p ) const [virtual]
 

Get the property by property.

Reimplemented from IProperty.

Definition at line 94 of file PropertyMgr.cpp.

Referenced by Service::getProperty(), getProperty(), Auditor::getProperty(), AlgTool::getProperty(), Algorithm::getProperty(), and setProperty().

StatusCode PropertyMgr::queryInterface ( const IID & riid,
void ** ppvInterface )
 

Definition at line 141 of file PropertyMgr.cpp.

unsigned long PropertyMgr::release ( ) [virtual]
 

Release Interface instance.

Reimplemented from IInterface.

Definition at line 143 of file PropertyMgr.cpp.

StatusCode PropertyMgr::setProperty ( const std::string & n,
const std::string & v ) [virtual]
 

Set the property by std::string.

Reimplemented from IProperty.

Definition at line 78 of file PropertyMgr.cpp.

StatusCode PropertyMgr::setProperty ( std::istream & i ) [virtual]
 

Set the property by istream.

Reimplemented from IProperty.

Definition at line 61 of file PropertyMgr.cpp.

Referenced by Service::setProperty(), Auditor::setProperty(), AlgTool::setProperty(), and Algorithm::setProperty().


Member Data Documentation

std::vector< bool > PropertyMgr::m_isOwned [private]
 

Definition at line 114 of file PropertyMgr.h.

PropertyCollectionType PropertyMgr::m_properties [private]
 

Definition at line 113 of file PropertyMgr.h.


The documentation for this class was generated from the following files:
Generated at Wed Nov 21 12:22:15 2001 by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000