Gaudi Framework, version v23r0

Home   Generated: Mon Jan 30 2012
Public Member Functions | Private Attributes

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 void toStream (std::ostream &out) const
 value -> stream
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 807 of file Property.h.


Constructor & Destructor Documentation

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

Definition at line 244 of file Property.cpp.

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

Member Function Documentation

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

import the property value form the source

Implements Property.

Definition at line 852 of file Property.h.

                                                                {
  return fromString( source.toString() ).isSuccess();
}
GaudiHandleProperty * GaudiHandleProperty::clone (  ) const [inline, virtual]

clone: "virtual constructor"

Implements Property.

Definition at line 844 of file Property.h.

                                                             {
  return new GaudiHandleProperty( *this );
}
StatusCode GaudiHandleProperty::fromString ( const std::string value ) [virtual]

string -> value

Implements Property.

Definition at line 265 of file Property.cpp.

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

export the property value to the destination

Implements Property.

Definition at line 848 of file Property.h.

                                                                   {
  return destination.assign( *this );
}
GaudiHandleProperty & GaudiHandleProperty::operator= ( const GaudiHandleBase value ) [inline]

Definition at line 839 of file Property.h.

                                                                                         {
      setValue( value );
      return *this;
}
bool GaudiHandleProperty::setValue ( const GaudiHandleBase value )

Definition at line 250 of file Property.cpp.

void GaudiHandleProperty::toStream ( std::ostream out ) const [virtual]

value -> stream

Implements Property.

Definition at line 260 of file Property.cpp.

                                                        {
  useReadHandler();
  out << m_pValue->typeAndName();
}
std::string GaudiHandleProperty::toString (  ) const [virtual]

value -> string

Implements Property.

Definition at line 255 of file Property.cpp.

                                               {
  useReadHandler();
  return m_pValue->typeAndName();
}
const GaudiHandleBase & GaudiHandleProperty::value (  ) const [inline]

Definition at line 856 of file Property.h.

                                                               {
  useReadHandler();
  return *m_pValue;
}

Member Data Documentation

Pointer to the real property.

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

Definition at line 832 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 Mon Jan 30 2012 13:53:14 for Gaudi Framework, version v23r0 by Doxygen version 1.7.2 written by Dimitri van Heesch, © 1997-2004