| # Gaudi Framework, version v20r3
Generated: 24 Nov 2008

# BoundedVerifier< T > Class Template Reference

`#include <GaudiKernel/PropertyVerifier.h>`

Inheritance diagram for BoundedVerifier< T >:

[legend]
Collaboration diagram for BoundedVerifier< T >:

[legend]

List of all members.

## Detailed Description

### template<class T>
class BoundedVerifier< T >

Default, always true verifier.

Author:
  CTDay

Definition at line 38 of file PropertyVerifier.h.

## Public Member Functions
| BoundedVerifier ()
| Constructors.
virtual | ~BoundedVerifier ()
| Destructor.
bool | isValid (const T *value) const
| Check if the value is within bounds.
bool | hasLower () const
| Return if it has a lower bound.
bool | hasUpper () const
| Return if it has a lower bound.
const T & | lower () const
| Return the lower bound value.
const T & | upper () const
| Return the upper bound value.
void | setLower (const T &value)
| Set lower bound value.
void | setUpper (const T &value)
| Set upper bound value.
void | clearLower ()
| Clear lower bound value.
void | clearUpper ()
| Clear upper bound value.
void | setBounds (const T &lower, const T &upper)
| Set both bounds (lower and upper) at the same time.
void | clearBounds ()
| Clear both bounds (lower and upper) at the same time.
template<>
bool | isValid (const Gaudi::Histo1DDef *value) const
## Private Attributes
bool | m_hasLowerBound
| Data and Function Members for This Class Implementation.
bool | m_hasUpperBound
T | m_lowerBound
T | m_upperBound

## Constructor & Destructor Documentation

template<class T>

BoundedVerifier< T >::BoundedVerifier | ( |  | ) | `[inline]`

Constructors.

Definition at line 41 of file PropertyVerifier.h.

    00042       : m_hasLowerBound( false ),
    00043         m_hasUpperBound( false ),
    00044         m_lowerBound( T() ),
    00045         m_upperBound( T() ) { }

template<class T>

virtual BoundedVerifier< T >::~BoundedVerifier | ( |  | ) | `[inline, virtual]`

Destructor.

Definition at line 48 of file PropertyVerifier.h.

    00048 { }

## Member Function Documentation

template<class T>

bool BoundedVerifier< T >::isValid | ( | const T * | value | ) | const`[inline, virtual]`

Check if the value is within bounds.

Implements PropertyVerifier< T >.

Definition at line 51 of file PropertyVerifier.h.

    00051                                        {
    00052     return   (( m_hasLowerBound && ( *value < m_lowerBound ) ) ? false : true )
    00053           && (( m_hasUpperBound && ( *value > m_upperBound ) ) ? false : true );
    00054   }

template<class T>

bool BoundedVerifier< T >::hasLower | ( |  | ) | const`[inline]`

Return if it has a lower bound.

Definition at line 57 of file PropertyVerifier.h.

    00057 { return m_hasLowerBound; }

template<class T>

bool BoundedVerifier< T >::hasUpper | ( |  | ) | const`[inline]`

Return if it has a lower bound.

Definition at line 59 of file PropertyVerifier.h.

    00059 { return m_hasUpperBound; }

template<class T>

const T& BoundedVerifier< T >::lower | ( |  | ) | const`[inline]`

Return the lower bound value.

Definition at line 61 of file PropertyVerifier.h.

    00061 { return m_lowerBound; }

template<class T>

const T& BoundedVerifier< T >::upper | ( |  | ) | const`[inline]`

Return the upper bound value.

Definition at line 63 of file PropertyVerifier.h.

    00063 { return m_upperBound; }

template<class T>

void BoundedVerifier< T >::setLower | ( | const T & | value | ) | `[inline]`

Set lower bound value.

Definition at line 66 of file PropertyVerifier.h.

    00066 { m_hasLowerBound = true; m_lowerBound = value; }

template<class T>

void BoundedVerifier< T >::setUpper | ( | const T & | value | ) | `[inline]`

Set upper bound value.

Definition at line 68 of file PropertyVerifier.h.

    00068 { m_hasUpperBound = true; m_upperBound = value; }

template<class T>

void BoundedVerifier< T >::clearLower | ( |  | ) | `[inline]`

Clear lower bound value.

Definition at line 70 of file PropertyVerifier.h.

    00070 { m_hasLowerBound = false; m_lowerBound = T(); }

template<class T>

void BoundedVerifier< T >::clearUpper | ( |  | ) | `[inline]`

Clear upper bound value.

Definition at line 72 of file PropertyVerifier.h.

    00072 { m_hasUpperBound = false; m_upperBound = T(); }

template<class T>

void BoundedVerifier< T >::setBounds | ( | const T & | lower,
|  | const T & | upper |
| ) |  |  | `[inline]`

Set both bounds (lower and upper) at the same time.

Definition at line 75 of file PropertyVerifier.h.

    00075                                                   {
    00076     setLower( lower );
    00077     setUpper( upper );
    00078   }

template<class T>

void BoundedVerifier< T >::clearBounds | ( |  | ) | `[inline]`

Clear both bounds (lower and upper) at the same time.

Definition at line 81 of file PropertyVerifier.h.

    00081                      {
    00082      clearLower();
    00083      clearUpper();
    00084   }

template<>

bool BoundedVerifier< Gaudi::Histo1DDef >::isValid | ( | const Gaudi::Histo1DDef * | value | ) | const`[inline]`

Author:
  Vanya BELYAEV ibelyaev@physics.syr.edu

Date:
  2007-09-18

Definition at line 26 of file HistoProperty.h.

    00027 {
    00028   return 0 != value && value->ok()
    00029     && ( ( m_hasLowerBound && ( *value       < m_lowerBound ) ) ? false : true )
    00030     && ( ( m_hasUpperBound && ( m_upperBound < *value       ) ) ? false : true ) ;
    00031 }

## Member Data Documentation

template<class T>

bool BoundedVerifier< T >::m_hasLowerBound`[private]`

Data and Function Members for This Class Implementation.

Data members

Definition at line 89 of file PropertyVerifier.h.

template<class T>

bool BoundedVerifier< T >::m_hasUpperBound`[private]`

Definition at line 90 of file PropertyVerifier.h.

template<class T>

T BoundedVerifier< T >::m_lowerBound`[private]`

Definition at line 91 of file PropertyVerifier.h.

template<class T>

T BoundedVerifier< T >::m_upperBound`[private]`

Definition at line 92 of file PropertyVerifier.h.

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

- /afs/cern.ch/sw/Gaudi/releases/GAUDI/GAUDI_v20r3/GaudiKernel/GaudiKernel/PropertyVerifier.h