OpenWalnut  1.4.0
Public Types | Public Member Functions | Private Attributes
WInterval< T > Class Template Reference

Basic class for encapsulating a std::pair to be interpreted as interval. More...

#include <WInterval.h>

List of all members.

Public Types

typedef boost::shared_ptr
< WInterval< T > > 
SPtr
 Convenience typedef for a boost::shared_ptr< WInterval >.
typedef boost::shared_ptr
< const WInterval< T > > 
ConstSPtr
 Convenience typedef for a boost::shared_ptr< const WInterval >.
typedef std::pair< T, T > StoreType
 Type used to store the information.
typedef WInterval< T > Type
 My own type.

Public Member Functions

 WInterval (const StoreType &c)
 Copy constructor to create a WInterval using a std::pair.
 WInterval (const Type &c)
 Copy constructor.
 WInterval (const T &l, const T &u)
 Create a new interval instance using the given values.
virtual ~WInterval ()
 Destructor.
 operator const StoreType & () const
 Convert the WInterval instance to a std::pair again.
const T & getLower () const
 Get the lower value of the interval.
const T & getUpper () const
 Return the upper value of the interval.
getLength () const
 The length of the interval.
bool operator== (Type interval) const
 Compare this interval with another one.
bool operator!= (Type interval) const
 Compare this interval with another one.

Private Attributes

StoreType m_interval
 The interval itself.

Detailed Description

template<typename T>
class WInterval< T >

Basic class for encapsulating a std::pair to be interpreted as interval.

This class intentionally does not include a parameter telling whether the interval is open or not (mathematically: [],][,[[,]])

Template Parameters:
Tthe type used for this interval

Definition at line 42 of file WInterval.h.


Member Typedef Documentation

template<typename T>
typedef boost::shared_ptr< const WInterval< T > > WInterval< T >::ConstSPtr

Convenience typedef for a boost::shared_ptr< const WInterval >.

Definition at line 53 of file WInterval.h.

template<typename T>
typedef boost::shared_ptr< WInterval< T > > WInterval< T >::SPtr

Convenience typedef for a boost::shared_ptr< WInterval >.

Definition at line 48 of file WInterval.h.

template<typename T>
typedef std::pair< T, T > WInterval< T >::StoreType

Type used to store the information.

Definition at line 58 of file WInterval.h.

template<typename T>
typedef WInterval< T > WInterval< T >::Type

My own type.

Definition at line 63 of file WInterval.h.


Constructor & Destructor Documentation

template<typename T >
WInterval< T >::WInterval ( const StoreType c) [explicit]

Copy constructor to create a WInterval using a std::pair.

Parameters:
cthe pair to use

Definition at line 237 of file WInterval.h.

template<typename T >
WInterval< T >::WInterval ( const Type c)

Copy constructor.

Parameters:
cthe interval to copy

Definition at line 245 of file WInterval.h.

template<typename T >
WInterval< T >::WInterval ( const T &  l,
const T &  u 
)

Create a new interval instance using the given values.

Parameters:
lthe lower border
uthe upper border

Definition at line 252 of file WInterval.h.

template<typename T >
WInterval< T >::~WInterval ( ) [virtual]

Destructor.

Definition at line 259 of file WInterval.h.


Member Function Documentation

template<typename T >
T WInterval< T >::getLength ( ) const

The length of the interval.

This is upper - lower.

Returns:
length

Definition at line 283 of file WInterval.h.

template<typename T >
const T & WInterval< T >::getLower ( ) const

Get the lower value of the interval.

Returns:
the lower value

Definition at line 271 of file WInterval.h.

Referenced by PROPERTY_TYPE_HELPER::WStringConversion< WPVBaseTypes::PV_INTERVAL >::asString(), WInterval< T >::operator==(), and wge::toUniformType().

template<typename T >
const T & WInterval< T >::getUpper ( ) const

Return the upper value of the interval.

Returns:
the upper value

Definition at line 277 of file WInterval.h.

Referenced by PROPERTY_TYPE_HELPER::WStringConversion< WPVBaseTypes::PV_INTERVAL >::asString(), WInterval< T >::operator==(), and wge::toUniformType().

template<typename T >
WInterval< T >::operator const StoreType & ( ) const

Convert the WInterval instance to a std::pair again.

Returns:
the pair

Definition at line 265 of file WInterval.h.

template<typename T >
bool WInterval< T >::operator!= ( Type  interval) const

Compare this interval with another one.

Parameters:
intervalthe other one
Returns:
true if lower and upper bounds are equal

Definition at line 295 of file WInterval.h.

template<typename T >
bool WInterval< T >::operator== ( Type  interval) const

Compare this interval with another one.

Parameters:
intervalthe other one
Returns:
true if lower and upper bounds are equal

Definition at line 289 of file WInterval.h.

References WInterval< T >::getLower(), and WInterval< T >::getUpper().


Member Data Documentation

template<typename T>
StoreType WInterval< T >::m_interval [private]

The interval itself.

Definition at line 143 of file WInterval.h.


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