Main Page   Modules   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

at::IteratorWrapper< w_T, w_value_type, w_debug_code > Class Template Reference

#include <at_pointers.h>

Collaboration diagram for at::IteratorWrapper< w_T, w_value_type, w_debug_code >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef w_value_type value_type
enum  { e_debug_code = ( w_debug_code && OSTraitsBase::DebugBuild ) ? 1 : 0 }

Public Methods

 IteratorWrapper ()
 IteratorWrapper (const w_T &i_value)
IteratorWrapper Assign (w_T &i_in)
void AssignNull ()
void AssignInvalid ()
bool IsNull () const
bool IsValid () const
const w_T & Get () const

Protected Attributes

w_T m_value
PointerRange m_range

Detailed Description

template<typename w_T, typename w_value_type, bool w_debug_code>
class at::IteratorWrapper< w_T, w_value_type, w_debug_code >

Is a set of methods and classes that wrap an iterator.


Member Typedef Documentation

template<typename w_T, typename w_value_type, bool w_debug_code>
typedef w_value_type at::IteratorWrapper< w_T, w_value_type, w_debug_code >::value_type
 

value_type is the value of the return from w_T::operator *()


Member Enumeration Documentation

template<typename w_T, typename w_value_type, bool w_debug_code>
anonymous enum
 

Enumeration values:
e_debug_code  e_debug_code is true if this is a debug PointerWrapper and this is a debug build.


Constructor & Destructor Documentation

template<typename w_T, typename w_value_type, bool w_debug_code>
at::IteratorWrapper< w_T, w_value_type, w_debug_code >::IteratorWrapper   [inline]
 

construct a default pointer_value. Null is OK.

template<typename w_T, typename w_value_type, bool w_debug_code>
at::IteratorWrapper< w_T, w_value_type, w_debug_code >::IteratorWrapper const w_T &    i_value [inline]
 

construct a pointer_value given a w_T value. It is assumed that the pointer value is a valid pointer. (This is where this concept breaks down a little. There is no way of knowing what kind of pointer is being passed.)

Parameters:
i_value  is the value of the pointer.


Member Function Documentation

template<typename w_T, typename w_value_type, bool w_debug_code>
IteratorWrapper at::IteratorWrapper< w_T, w_value_type, w_debug_code >::Assign w_T &    i_in [inline]
 

The Assign method is the function used to assign pointers.

Parameters:
i_in  The the value being assigned
Returns:
the previous value of the pointer

template<typename w_T, typename w_value_type, bool w_debug_code>
void at::IteratorWrapper< w_T, w_value_type, w_debug_code >::AssignInvalid   [inline]
 

AssignInvalid will set the pointer to an invalid entry. Meaning attempts to use the pointer will assert.

template<typename w_T, typename w_value_type, bool w_debug_code>
void at::IteratorWrapper< w_T, w_value_type, w_debug_code >::AssignNull   [inline]
 

Assign the pointer value to null

Parameters:
i_pv  The pointer_value being written to

template<typename w_T, typename w_value_type, bool w_debug_code>
const w_T& at::IteratorWrapper< w_T, w_value_type, w_debug_code >::Get   const [inline]
 

Get will retrieve from a pointer_value the value contained.

Returns:
a reference to the pointer value

template<typename w_T, typename w_value_type, bool w_debug_code>
bool at::IteratorWrapper< w_T, w_value_type, w_debug_code >::IsNull   const [inline]
 

Returns true if the value is null

Returns:
true if null, false otherwise

template<typename w_T, typename w_value_type, bool w_debug_code>
bool at::IteratorWrapper< w_T, w_value_type, w_debug_code >::IsValid   const [inline]
 

IsValid is used to determine if the pointer is valid.

Returns:
true if pointer is "valid"


Member Data Documentation

template<typename w_T, typename w_value_type, bool w_debug_code>
PointerRange at::IteratorWrapper< w_T, w_value_type, w_debug_code >::m_range [protected]
 

template<typename w_T, typename w_value_type, bool w_debug_code>
w_T at::IteratorWrapper< w_T, w_value_type, w_debug_code >::m_value [protected]
 


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

Generated for Austria by doxygen and MakeXS at Sun Oct 24 17:35:34 PDT 2004