| # Gaudi Framework, version v20r4
Generated: 8 Jan 2009

# PropertyWithVerifier< TYPE, VERIFIER > Class Template Reference

`#include <Property.h>`

Inheritance diagram for PropertyWithVerifier< TYPE, VERIFIER >:

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

[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>
PropertyWithVerifier & | operator= (const PropertyWithVerifier< OTHER, OTHERVERIFIER > &right)
| templated assignement
template<class OTHER>
PropertyWithVerifier & | operator= (const PropertyWithValue< OTHER > &right)
| templated assignement
PropertyWithVerifier & | operator= (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]`

templated assignement

template assignement

Reimplemented from PropertyWithValue< TYPE >.

Reimplemented in SimpleProperty< TYPE, VERIFIER >, SimplePropertyRef< TYPE, VERIFIER >, SimpleProperty< double >, SimpleProperty< std::string >, SimpleProperty< std::vector< std::string > >, SimpleProperty< int >, SimpleProperty< unsigned int >, and SimpleProperty< bool >.

Definition at line 428 of file Property.h.

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

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:

- /afs/cern.ch/sw/Gaudi/releases/GAUDI/GAUDI_v20r4/GaudiKernel/GaudiKernel/Property.h