#include <GaudiKernel/CommandProperty.h>
Inheritance diagram for CommandProperty:
Public Member Functions | |
CommandProperty () | |
Constructors and destructors. | |
CommandProperty (const std::string &name) | |
CommandProperty (const std::string &name, const std::string &value) | |
virtual | ~CommandProperty () |
virtual bool | set (const std::string &value) |
Set value method. | |
virtual void | handler (const std::string &value)=0 |
User call back function. | |
virtual SimpleProperty * | clone () const |
implementation of Property::clone | |
VERIFIER & | verifier () |
const VERIFIER & | verifier () const |
bool | set (const TYPE &value) |
update the value of the property/check the verifier | |
virtual bool | setValue (const TYPE &value) |
implementation of PropertyWithValue::setValue | |
operator const TYPE & () const | |
const TYPE & | value () const |
get the access to the storage | |
virtual bool | assign (const Property &source) |
get the value from another property | |
template<> | |
bool | assign (const Property &source) |
import the property value form the source | |
virtual bool | load (Property &dest) const |
set value for another property | |
virtual StatusCode | fromString (const std::string &s) |
string -> value | |
virtual std::string | toString () const |
value -> string | |
template<> | |
std::string | toString () const |
value -> string | |
const std::string & | name () const |
property name | |
const std::string & | documentation () const |
property documentation | |
const std::type_info * | type_info () const |
property type-info | |
std::string | type () const |
property type | |
const PropertyCallbackFunctor * | readCallBack () const |
Call-back functor at reading: the functor is ownered by property! | |
const PropertyCallbackFunctor * | updateCallBack () const |
Call-back functor for update: the funtor is ownered by property! | |
virtual void | declareReadHandler (PropertyCallbackFunctor *pf) |
set new callback for reading | |
template<class HT> | |
void | declareReadHandler (void(HT::*MF)(Property &), HT *instance) |
virtual void | declareUpdateHandler (PropertyCallbackFunctor *pf) |
set new callback for update | |
template<class HT> | |
void | declareUpdateHandler (void(HT::*MF)(Property &), HT *instance) |
virtual void | useReadHandler () const |
use the call-back function at reading | |
virtual void | useUpdateHandler () |
use the call-back function at update | |
void | setName (const std::string &value) |
set the new value for the property name | |
void | setDocumentation (const std::string &documentation) |
set the documentation string | |
virtual std::ostream & | fillStream (std::ostream &) const |
the printout of the property value | |
Protected Member Functions | |
void | i_set (const TYPE &value) |
TYPE * | i_get () const |
Protected Attributes | |
PropertyCallbackFunctor * | m_readCallBack |
PropertyCallbackFunctor * | m_updateCallBack |
The CommandProperty is a subclass of StringProperty that has a callback when the value is changed. Not very useful until we have a scripting language
Definition at line 16 of file CommandProperty.h.
CommandProperty::CommandProperty | ( | ) |
Constructors and destructors.
CommandProperty::CommandProperty | ( | const std::string & | name | ) |
CommandProperty::CommandProperty | ( | const std::string & | name, | |
const std::string & | value | |||
) |
virtual CommandProperty::~CommandProperty | ( | ) | [virtual] |
virtual bool CommandProperty::set | ( | const std::string & | value | ) | [virtual] |
Set value method.
virtual void CommandProperty::handler | ( | const std::string & | value | ) | [pure virtual] |
User call back function.
SimpleProperty< TYPE, VERIFIER > * SimpleProperty< TYPE, VERIFIER >::clone | ( | ) | const [inline, virtual, inherited] |
implementation of Property::clone
Implements Property.
Definition at line 550 of file Property.h.
00551 { return new SimpleProperty(*this) ; }
VERIFIER& PropertyWithVerifier< TYPE, VERIFIER >::verifier | ( | ) | [inline, inherited] |
const VERIFIER& PropertyWithVerifier< TYPE, VERIFIER >::verifier | ( | ) | const [inline, inherited] |
bool PropertyWithVerifier< TYPE, VERIFIER >::set | ( | const TYPE & | value | ) | [inline, inherited] |
update the value of the property/check the verifier
use verifier!
update the value
invoke the update handler
Definition at line 402 of file Property.h.
00403 { 00405 if ( !m_verifier.isValid( &value ) ) { return false ; } 00407 i_set( value ) ; 00409 this->useUpdateHandler() ; 00410 return true ; 00411 }
virtual bool PropertyWithVerifier< TYPE, VERIFIER >::setValue | ( | const TYPE & | value | ) | [inline, virtual, inherited] |
implementation of PropertyWithValue::setValue
Implements PropertyWithValue< TYPE >.
Definition at line 379 of file Property.h.
PropertyWithValue< TYPE >::operator const TYPE & | ( | ) | const [inline, inherited] |
const TYPE & PropertyWithValue< TYPE >::value | ( | ) | const [inline, inherited] |
get the access to the storage
Definition at line 306 of file Property.h.
00307 { useReadHandler() ; return *m_value ; }
bool PropertyWithValue< TYPE >::assign | ( | const Property & | source | ) | [inline, virtual, inherited] |
get the value from another property
Implements Property.
Definition at line 247 of file Property.h.
00248 { 00249 // 1) Is the property of "the same" type? 00250 const PropertyWithValue<TYPE>* p = 00251 dynamic_cast<const PropertyWithValue<TYPE>*> ( &source ) ; 00252 if ( 0 != p ) { return setValue ( p->value() ) ; } // RETURN 00253 // 2) Else use the string representation 00254 return this->fromString( source.toString() ).isSuccess() ; 00255 }
bool PropertyWithValue< std::string >::assign | ( | const Property & | source | ) | [inline, virtual, inherited] |
import the property value form the source
Implements Property.
Definition at line 297 of file Property.h.
00298 { return this->fromString( source.toString() ).isSuccess() ; }
bool PropertyWithValue< TYPE >::load | ( | Property & | dest | ) | const [inline, virtual, inherited] |
set value for another property
Implements Property.
Definition at line 261 of file Property.h.
00262 { 00263 // gelegate to the 'opposite' method ; 00264 return dest.assign( *this ) ; 00265 }
StatusCode PropertyWithValue< TYPE >::fromString | ( | const std::string & | s | ) | [inline, virtual, inherited] |
string -> value
Implements Property.
Definition at line 281 of file Property.h.
00282 { 00283 TYPE tmp ; 00284 StatusCode sc = Gaudi::Parsers::parse ( tmp , source ) ; 00285 if ( sc.isFailure() ) { return sc ; } 00286 return setValue ( tmp ) ? StatusCode::SUCCESS : StatusCode::FAILURE ; 00287 }
std::string PropertyWithValue< TYPE >::toString | ( | ) | const [inline, virtual, inherited] |
value -> string
Implements Property.
Definition at line 271 of file Property.h.
00272 { 00273 useReadHandler(); 00274 return Gaudi::Utils::toString( *m_value ) ; 00275 }
std::string PropertyWithValue< std::string >::toString | ( | ) | const [inline, virtual, inherited] |
value -> string
Implements Property.
Definition at line 293 of file Property.h.
00294 { return this->value() ; }
void PropertyWithValue< TYPE >::i_set | ( | const TYPE & | value | ) | [inline, protected, inherited] |
TYPE * PropertyWithValue< TYPE >::i_get | ( | ) | const [inline, protected, inherited] |
const std::string& Property::name | ( | ) | const [inline, inherited] |
const std::string& Property::documentation | ( | ) | const [inline, inherited] |
const std::type_info* Property::type_info | ( | ) | const [inline, inherited] |
std::string Property::type | ( | ) | const [inline, inherited] |
const PropertyCallbackFunctor* Property::readCallBack | ( | ) | const [inherited] |
Call-back functor at reading: the functor is ownered by property!
const PropertyCallbackFunctor* Property::updateCallBack | ( | ) | const [inherited] |
Call-back functor for update: the funtor is ownered by property!
virtual void Property::declareReadHandler | ( | PropertyCallbackFunctor * | pf | ) | [virtual, inherited] |
set new callback for reading
void Property::declareReadHandler | ( | void(HT::*)(Property &) | MF, | |
HT * | instance | |||
) | [inline, inherited] |
Definition at line 131 of file Property.h.
00132 { declareReadHandler ( new PropertyCallbackMemberFunctor< HT >( MF , obj ) ) ; }
virtual void Property::declareUpdateHandler | ( | PropertyCallbackFunctor * | pf | ) | [virtual, inherited] |
set new callback for update
void Property::declareUpdateHandler | ( | void(HT::*)(Property &) | MF, | |
HT * | instance | |||
) | [inline, inherited] |
Definition at line 136 of file Property.h.
00137 { declareUpdateHandler ( new PropertyCallbackMemberFunctor< HT >( MF , obj ) ) ; }
virtual void Property::useReadHandler | ( | ) | const [virtual, inherited] |
use the call-back function at reading
virtual void Property::useUpdateHandler | ( | ) | [virtual, inherited] |
use the call-back function at update
void Property::setName | ( | const std::string & | value | ) | [inline, inherited] |
set the new value for the property name
Definition at line 91 of file Property.h.
00091 { m_name = value ; }
void Property::setDocumentation | ( | const std::string & | documentation | ) | [inline, inherited] |
set the documentation string
Definition at line 93 of file Property.h.
00093 { 00094 m_documentation = documentation; };
virtual std::ostream& Property::fillStream | ( | std::ostream & | ) | const [virtual, inherited] |
the printout of the property value
PropertyCallbackFunctor* Property::m_readCallBack [mutable, protected, inherited] |
Definition at line 122 of file Property.h.
PropertyCallbackFunctor* Property::m_updateCallBack [protected, inherited] |
Definition at line 124 of file Property.h.