Gaudi Framework, version v20r4

Generated: 8 Jan 2009

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 358 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 364 of file Property.h.

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

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

virtual destructor

Definition at line 372 of file Property.h.

00372 {};

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 374 of file Property.h.

00374 { return m_verifier ; }

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

Definition at line 375 of file Property.h.

00375 { 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

implementaion of PropertyWithVerifier::set

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 }

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 379 of file Property.h.

00379 { 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

template assignement

Definition at line 440 of file Property.h.

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

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

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 417 of file Property.h.

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


Member Data Documentation

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

Definition at line 395 of file Property.h.


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

Generated at Thu Jan 8 17:52:17 2009 for Gaudi Framework, version v20r4 by Doxygen version 1.5.6 written by Dimitri van Heesch, © 1997-2004