Gaudi Framework, version v21r4

Home   Generated: 7 Sep 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 355 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 361 of file Property.h.

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

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

virtual destructor

Definition at line 369 of file Property.h.

00369 {};

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

00371 { return m_verifier ; }

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

Definition at line 372 of file Property.h.

00372 { 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 399 of file Property.h.

00400 {
00402   if ( !m_verifier.isValid( &value ) ) { return false ; }
00404   i_set( value ) ;
00406   return this->useUpdateHandler() ;
00407 }

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

00376 { 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 436 of file Property.h.

00437 {
00438   PropertyWithValue<TYPE>::operator=(right) ;
00439   return *this ;
00440 }

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

00414 {
00415   PropertyWithValue<TYPE>::operator=( right ) ;
00416   return *this ;
00417 }


Member Data Documentation

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

Definition at line 392 of file Property.h.


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

Generated at Mon Sep 7 18:21:53 2009 for Gaudi Framework, version v21r4 by Doxygen version 1.5.6 written by Dimitri van Heesch, © 1997-2004