Gaudi Framework, version v20r2

Generated: 18 Jul 2008

PropertyWithVerifier< TYPE, VERIFIER > Class Template Reference

#include <Property.h>

Inheritance diagram for PropertyWithVerifier< TYPE, VERIFIER >:

Inheritance graph
[legend]
Collaboration diagram for PropertyWithVerifier< TYPE, VERIFIER >:

Collaboration graph
[legend]
List of all members.

Detailed Description

template<class TYPE, class VERIFIER>
class PropertyWithVerifier< TYPE, VERIFIER >

Helper intermediate class which represent partly implemented property with value of concrete type and concrete verifier.

Author:
Vanya BELYAEV ibelyaev@physics.syr.edu
Date:
2006-02-27

Definition at line 357 of file Property.h.

Public Member Functions

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
template<class OTHER, class OTHERVERIFIER>
PropertyWithVerifieroperator= (const PropertyWithVerifier< OTHER, OTHERVERIFIER > &right)
 templated assignement
template<class OTHER>
PropertyWithVerifieroperator= (const PropertyWithValue< OTHER > &right)
 templated assignement
PropertyWithVerifieroperator= (const TYPE &right)
 assignement

Protected Member Functions

 PropertyWithVerifier (const std::string &name, TYPE *value, const bool owner, const VERIFIER &verifier)
 the constructor with property name and value
virtual ~PropertyWithVerifier ()
 virtual destructor

Private Member Functions

 PropertyWithVerifier ()
 the default constructot is disabled
 PropertyWithVerifier (const PropertyWithVerifier &right)
 the copy constructor is disabled

Private Attributes

VERIFIER m_verifier


Constructor & Destructor Documentation

template<class TYPE, class VERIFIER>
PropertyWithVerifier< TYPE, VERIFIER >::PropertyWithVerifier ( const std::string name,
TYPE *  value,
const bool  owner,
const VERIFIER &  verifier 
) [inline, protected]

the constructor with property name and value

Definition at line 363 of file Property.h.

00367     : PropertyWithValue<TYPE> ( name , value , owner ) 
00368     , m_verifier ( verifier ) 
00369   {}

template<class TYPE, class VERIFIER>
virtual PropertyWithVerifier< TYPE, VERIFIER >::~PropertyWithVerifier (  )  [inline, protected, virtual]

virtual destructor

Definition at line 371 of file Property.h.

00371 {};

template<class TYPE, class VERIFIER>
PropertyWithVerifier< TYPE, VERIFIER >::PropertyWithVerifier (  )  [private]

the default constructot is disabled

template<class TYPE, class VERIFIER>
PropertyWithVerifier< TYPE, VERIFIER >::PropertyWithVerifier ( const PropertyWithVerifier< TYPE, VERIFIER > &  right  )  [private]

the copy constructor is disabled


Member Function Documentation

template<class TYPE, class VERIFIER>
VERIFIER& PropertyWithVerifier< TYPE, VERIFIER >::verifier (  )  [inline]

Definition at line 373 of file Property.h.

Referenced by EventCounter::EventCounter(), and Prescaler::Prescaler().

00373 { return m_verifier ; }

template<class TYPE, class VERIFIER>
const VERIFIER& PropertyWithVerifier< TYPE, VERIFIER >::verifier (  )  const [inline]

Definition at line 374 of file Property.h.

00374 { return m_verifier ; }

template<class TYPE, class VERIFIER>
bool PropertyWithVerifier< TYPE, VERIFIER >::set ( const TYPE &  value  )  [inline]

update the value of the property/check the verifier

use verifier!

update the value

invoke the update handler

Definition at line 401 of file Property.h.

References PropertyWithValue< TYPE >::i_set(), PropertyWithVerifier< TYPE, VERIFIER >::m_verifier, and Property::useUpdateHandler().

Referenced by MessageSvc::initColors(), CommandProperty::set(), and PropertyWithVerifier< std::vectorstring, BoundedVerifier< std::vectorstring > >::setValue().

00402 {
00404   if ( !m_verifier.isValid( &value ) ) { return false ; }    
00406   i_set( value ) ;
00408   this->useUpdateHandler() ;
00409   return true ;
00410 }

template<class TYPE, class VERIFIER>
virtual bool PropertyWithVerifier< TYPE, VERIFIER >::setValue ( const TYPE &  value  )  [inline, virtual]

implementation of PropertyWithValue::setValue

Implements PropertyWithValue< TYPE >.

Definition at line 378 of file Property.h.

00378 { return set( value ) ; }

template<class TYPE, class VERIFIER>
template<class OTHER, class OTHERVERIFIER>
PropertyWithVerifier< TYPE, VERIFIER > & PropertyWithVerifier< TYPE, VERIFIER >::operator= ( const PropertyWithVerifier< OTHER, OTHERVERIFIER > &  right  )  [inline]

templated assignement

Definition at line 439 of file Property.h.

Referenced by SimplePropertyRef< TYPE, VERIFIER >::operator=(), and SimpleProperty< TYPE, VERIFIER >::operator=().

00440 {
00441   PropertyWithValue<TYPE>::operator=(right) ;
00442   return *this ;
00443 }

template<class TYPE, class VERIFIER>
template<class OTHER>
PropertyWithVerifier< TYPE, VERIFIER > & PropertyWithVerifier< TYPE, VERIFIER >::operator= ( const PropertyWithValue< OTHER > &  right  )  [inline]

templated assignement

Reimplemented from PropertyWithValue< TYPE >.

Reimplemented in SimpleProperty< TYPE, VERIFIER >, SimplePropertyRef< TYPE, VERIFIER >, and SimpleProperty< std::vectorstring > >.

Definition at line 427 of file Property.h.

References PropertyWithValue< TYPE >::operator=().

00428 {
00429   PropertyWithValue<TYPE>::operator=(right) ;
00430   return *this ;
00431 }

template<class TYPE, class VERIFIER>
PropertyWithVerifier< TYPE, VERIFIER > & PropertyWithVerifier< TYPE, VERIFIER >::operator= ( const TYPE &  right  )  [inline]

assignement

Reimplemented from PropertyWithValue< TYPE >.

Reimplemented in SimpleProperty< TYPE, VERIFIER >, and SimplePropertyRef< TYPE, VERIFIER >.

Definition at line 416 of file Property.h.

References PropertyWithValue< TYPE >::operator=().

00417 {
00418   PropertyWithValue<TYPE>::operator=( right ) ;
00419   return *this ;
00420 }


Member Data Documentation

template<class TYPE, class VERIFIER>
VERIFIER PropertyWithVerifier< TYPE, VERIFIER >::m_verifier [private]

Definition at line 394 of file Property.h.

Referenced by PropertyWithVerifier< TYPE, VERIFIER >::set(), and PropertyWithVerifier< std::vectorstring, BoundedVerifier< std::vectorstring > >::verifier().


The documentation for this class was generated from the following file:
Generated at Fri Jul 18 12:09:05 2008 for Gaudi Framework, version v20r2 by Doxygen version 1.5.1 written by Dimitri van Heesch, © 1997-2004