Gaudi Framework, version v22r0

Home   Generated: 9 Feb 2011

GaudiHandleProperty Class Reference

#include <Property.h>

Inheritance diagram for GaudiHandleProperty:
Inheritance graph
[legend]
Collaboration diagram for GaudiHandleProperty:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 GaudiHandleProperty (const std::string &name, GaudiHandleBase &ref)
GaudiHandlePropertyoperator= (const GaudiHandleBase &value)
virtual GaudiHandlePropertyclone () const
 clone: "virtual constructor"
virtual bool load (Property &destination) const
 export the property value to the destination
virtual bool assign (const Property &source)
 import the property value form the source
virtual std::string toString () const
 value -> string
virtual StatusCode fromString (const std::string &s)
 string -> value
const GaudiHandleBasevalue () const
bool setValue (const GaudiHandleBase &value)

Private Attributes

GaudiHandleBasem_pValue
 Pointer to the real property.

Detailed Description

Definition at line 793 of file Property.h.


Constructor & Destructor Documentation

GaudiHandleProperty::GaudiHandleProperty ( const std::string name,
GaudiHandleBase ref 
)

Definition at line 244 of file Property.cpp.

00245   : Property( name, typeid( GaudiHandleBase ) ), m_pValue( &ref ) 
00246 { 
00247   m_pValue->setPropertyName( name );
00248 }


Member Function Documentation

bool GaudiHandleProperty::assign ( const Property source  )  [inline, virtual]

import the property value form the source

Implements Property.

Definition at line 836 of file Property.h.

00836                                                                 {
00837   return fromString( source.toString() ).isSuccess();
00838 }

GaudiHandleProperty * GaudiHandleProperty::clone (  )  const [inline, virtual]

clone: "virtual constructor"

Implements Property.

Definition at line 828 of file Property.h.

00828                                                              {
00829   return new GaudiHandleProperty( *this );
00830 }

StatusCode GaudiHandleProperty::fromString ( const std::string value  )  [virtual]

string -> value

Implements Property.

Definition at line 260 of file Property.cpp.

bool GaudiHandleProperty::load ( Property dest  )  const [inline, virtual]

export the property value to the destination

Implements Property.

Definition at line 832 of file Property.h.

00832                                                                    {
00833   return destination.assign( *this );
00834 }

GaudiHandleProperty & GaudiHandleProperty::operator= ( const GaudiHandleBase value  )  [inline]

Definition at line 823 of file Property.h.

00823                                                                                          {
00824       setValue( value );
00825       return *this;
00826 }

bool GaudiHandleProperty::setValue ( const GaudiHandleBase value  ) 

Definition at line 250 of file Property.cpp.

00250                                                                  {
00251   m_pValue->setTypeAndName( value.typeAndName() );
00252   return useUpdateHandler();
00253 }

std::string GaudiHandleProperty::toString (  )  const [virtual]

value -> string

Implements Property.

Definition at line 255 of file Property.cpp.

00255                                                {
00256   useReadHandler();
00257   return m_pValue->typeAndName();
00258 }

const GaudiHandleBase & GaudiHandleProperty::value (  )  const [inline]

Definition at line 840 of file Property.h.

00840                                                                {
00841   useReadHandler();
00842   return *m_pValue;
00843 }


Member Data Documentation

Pointer to the real property.

Reference would be better, but Reflex does not support references yet

Definition at line 816 of file Property.h.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines

Generated at Wed Feb 9 16:30:42 2011 for Gaudi Framework, version v22r0 by Doxygen version 1.6.2 written by Dimitri van Heesch, © 1997-2004