| The Gaudi Framework v28r2-patches (bc4ad17a)

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions | Private Attributes | List of all members
DataObjectHandleProperty Class Reference

DataObjectHandleProperty.h GaudiKernel/DataObjectHandleProperty.h. More...

`#include <GaudiKernel/DataObjectHandleProperty.h>`

Inheritance diagram for DataObjectHandleProperty:
[legend]
Collaboration diagram for DataObjectHandleProperty:
[legend]

## Public Member Functions
| DataObjectHandleProperty (const std::string &name, DataObjectHandleBase &ref)
DataObjectHandleProperty & | operator= (const DataObjectHandleBase &value)
DataObjectHandleProperty * | clone () const override
| clones the current property More...
bool | load (Property &destination) const override
bool | assign (const Property &source) override
std::string | toString () const override
| value -> string More...
void | toStream (std::ostream &out) const override
| value -> stream More...
StatusCode | fromString (const std::string &s) override
| string -> value More...
const DataObjectHandleBase & | value () const
bool | setValue (const DataObjectHandleBase &value)
std::string | pythonRepr () const
Public Member Functions inherited from PropertyWithHandlers<>
PropertyBase & | declareReadHandler (std::function< void(PropertyBase &)> fun) override
| set new callback for reading More...
PropertyBase & | declareUpdateHandler (std::function< void(PropertyBase &)> fun) override
| set new callback for update More...
const std::function< void(PropertyBase &)> | readCallBack () const override
| get a reference to the readCallBack More...
const std::function< void(PropertyBase &)> | updateCallBack () const override
| get a reference to the updateCallBack More...
void | useReadHandler () const
| use the call-back function at reading, if available More...
bool | useUpdateHandler () override
| use the call-back function at update, if available More...
Public Member Functions inherited from Gaudi::Details::PropertyBase
const std::string | name () const
| property name More...
std::string | documentation () const
| property documentation More...
const std::type_info * | type_info () const
| property type-info More...
std::string | type () const
| property type More...
virtual bool | load (PropertyBase &dest) const =0
| export the property value to the destination More...
virtual bool | assign (const PropertyBase &source)=0
| import the property value form the source More...
virtual PropertyBase & | declareReadHandler (std::function< void(PropertyBase &)> fun)=0
| set new callback for reading More...
virtual PropertyBase & | declareUpdateHandler (std::function< void(PropertyBase &)> fun)=0
| set new callback for update More...
template<class HT >
PropertyBase & | declareReadHandler (void(HT::*MF)(PropertyBase &), HT *instance)
template<class HT >
PropertyBase & | declareUpdateHandler (void(HT::*MF)(PropertyBase &), HT *instance)
virtual | ~PropertyBase ()=default
| virtual destructor More...
void | setName (std::string value)
| set the new value for the property name More...
void | setDocumentation (std::string value)
| set the documentation string More...
virtual std::ostream & | fillStream (std::ostream &) const
| the printout of the property value More...
void | setOwnerType (const std::type_info &ownerType)
| set the type of the owner class (used for documentation) More...
template<class OWNER >
void | setOwnerType ()
| set the type of the owner class (used for documentation) More...
const std::type_info * | ownerType () const
| get the type of the owner class (used for documentation) More...
std::string | ownerTypeName () const
| get the string for the type of the owner class (used for documentation) More...

## Private Attributes
DataObjectHandleBase * | m_pValue
| Pointer to the real property. More...

## Additional Inherited Members
Protected Member Functions inherited from Gaudi::Details::PropertyBase
| PropertyBase (const std::type_info &type, std::string name="", std::string doc="")
| constructor from the property name and the type More...
| PropertyBase (std::string name, const std::type_info &type)
| constructor from the property name and the type More...
| PropertyBase (const PropertyBase &)=default
| copy constructor More...
PropertyBase & | operator= (const PropertyBase &)=default
| assignment operator More...

## Detailed Description

DataObjectHandleProperty.h GaudiKernel/DataObjectHandleProperty.h.

Helper class to manage DataObjectHandles and DataObjectHandleColls as properties

Author
  Charles Leggett

Date
  2015-09-01

Definition at line 23 of file DataObjectHandleProperty.h.

## Constructor & Destructor Documentation

DataObjectHandleProperty::DataObjectHandleProperty | ( | const std::string & | name,
|  | DataObjectHandleBase & | ref
| ) |  |

Definition at line 32 of file DataObjectHandleProperty.cpp.

33 : PropertyWithHandlers( name, typeid( DataObjectHandleBase ) ), m_pValue( &ref )
34 {
35 }
DataObjectHandleProperty::m_pValue
DataObjectHandleBase * m_pValue
Pointer to the real property.
Definition: DataObjectHandleProperty.h:44
PropertyWithHandlers
Helper class to simplify the migration old properties deriving directly from PropertyBase.
Definition: Property.h:751
DataObjectHandleBase
DataObjectHandleBase GaudiKernel/DataObjectHandleBase.h.
Definition: DataObjectHandleBase.h:24

## Member Function Documentation

bool DataObjectHandleProperty::assign | ( | const Property & | source | ) |
| override

Definition at line 90 of file DataObjectHandleProperty.cpp.

90 { return fromString( source.toString() ).isSuccess(); }
DataObjectHandleProperty::fromString
StatusCode fromString(const std::string &s) override
string -> value
Definition: DataObjectHandleProperty.cpp:39

DataObjectHandleProperty * DataObjectHandleProperty::clone | ( |  | ) | const
| override virtual

clones the current property

Implements Gaudi::Details::PropertyBase.

Definition at line 82 of file DataObjectHandleProperty.cpp.

82 { return new DataObjectHandleProperty( *this ); }
DataObjectHandleProperty::DataObjectHandleProperty
DataObjectHandleProperty(const std::string &name, DataObjectHandleBase &ref)
Definition: DataObjectHandleProperty.cpp:32

StatusCode DataObjectHandleProperty::fromString | ( | const std::string & | value | ) |
| override virtual

string -> value

Implements Gaudi::Details::PropertyBase.

Definition at line 39 of file DataObjectHandleProperty.cpp.

40 {
41 if ( !Gaudi::Parsers::parse( *m_pValue, s ).isSuccess() ) {
42 return StatusCode::FAILURE;
43 }
44 return useUpdateHandler() ? StatusCode::SUCCESS : StatusCode::FAILURE;
45 }
StatusCode::SUCCESS
Definition: StatusCode.h:30
StatusCode::FAILURE
Definition: StatusCode.h:29
DataObjectHandleProperty::m_pValue
DataObjectHandleBase * m_pValue
Pointer to the real property.
Definition: DataObjectHandleProperty.h:44
Gaudi::Parsers::parse
StatusCode parse(GaudiUtils::HashMap< K, V > &result, const std::string &input)
Basic parser for the types of HashMap used in DODBasicMapper.
Definition: DODBasicMapper.cpp:11
PropertyWithHandlers<>::useUpdateHandler
bool useUpdateHandler() override
use the call-back function at update, if available
Definition: Property.h:780
gaudirun.s
string s
Definition: gaudirun.py:245

bool DataObjectHandleProperty::load | ( | Property & | destination | ) | const
| override

Definition at line 86 of file DataObjectHandleProperty.cpp.

86 { return destination.assign( *this ); }

DataObjectHandleProperty & DataObjectHandleProperty::operator= | ( | const DataObjectHandleBase & | value | ) |

Definition at line 74 of file DataObjectHandleProperty.cpp.

75 {
76 setValue( value );
77 return *this;
78 }
DataObjectHandleProperty::setValue
bool setValue(const DataObjectHandleBase &value)
Definition: DataObjectHandleProperty.cpp:51

std::string DataObjectHandleProperty::pythonRepr | ( |  | ) | const

Definition at line 47 of file DataObjectHandleProperty.cpp.

47 { return "DataObjectHandleBase(\"" + toString() + "\")"; }
DataObjectHandleProperty::toString
std::string toString() const override
value -> string
Definition: DataObjectHandleProperty.cpp:59

bool DataObjectHandleProperty::setValue | ( | const DataObjectHandleBase & | value | ) |

Definition at line 51 of file DataObjectHandleProperty.cpp.

52 {
53 m_pValue->operator=( value );
54 return useUpdateHandler();
55 }
DataObjectHandleProperty::m_pValue
DataObjectHandleBase * m_pValue
Pointer to the real property.
Definition: DataObjectHandleProperty.h:44
PropertyWithHandlers<>::useUpdateHandler
bool useUpdateHandler() override
use the call-back function at update, if available
Definition: Property.h:780
DataObjectHandleProperty::value
const DataObjectHandleBase & value() const
Definition: DataObjectHandleProperty.cpp:94

void DataObjectHandleProperty::toStream | ( | std::ostream & | out | ) | const
| override virtual

value -> stream

Implements Gaudi::Details::PropertyBase.

Definition at line 66 of file DataObjectHandleProperty.cpp.

67 {
68 // implicitly invokes useReadHandler()
69 out << toString();
70 }
DataObjectHandleProperty::toString
std::string toString() const override
value -> string
Definition: DataObjectHandleProperty.cpp:59

std::string DataObjectHandleProperty::toString | ( |  | ) | const
| override virtual

value -> string

Implements Gaudi::Details::PropertyBase.

Definition at line 59 of file DataObjectHandleProperty.cpp.

60 {
61 useReadHandler();
62 return m_pValue->toString();
63 }
DataObjectHandleProperty::m_pValue
DataObjectHandleBase * m_pValue
Pointer to the real property.
Definition: DataObjectHandleProperty.h:44
DataObjectHandleBase::toString
std::string toString() const
Definition: DataObjectHandleBase.cpp:120
PropertyWithHandlers<>::useReadHandler
void useReadHandler() const
use the call-back function at reading, if available
Definition: Property.h:777

const DataObjectHandleBase & DataObjectHandleProperty::value | ( |  | ) | const

Definition at line 94 of file DataObjectHandleProperty.cpp.

95 {
96 useReadHandler();
97 return *m_pValue;
98 }
DataObjectHandleProperty::m_pValue
DataObjectHandleBase * m_pValue
Pointer to the real property.
Definition: DataObjectHandleProperty.h:44
PropertyWithHandlers<>::useReadHandler
void useReadHandler() const
use the call-back function at reading, if available
Definition: Property.h:777

## Member Data Documentation

DataObjectHandleBase* DataObjectHandleProperty::m_pValue
| private

Pointer to the real property.

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

Definition at line 44 of file DataObjectHandleProperty.h.

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

- GaudiKernel/GaudiKernel/DataObjectHandleProperty.h
- GaudiKernel/src/Lib/DataObjectHandleProperty.cpp