Public Types | Public Member Functions | Private Member Functions | Private Attributes

n_ref_counter::t_ref_counter< T_integral > Class Template Reference

t_ref_counter is a reference counter. More...

#include <reference_counter.hpp>

List of all members.

Public Types

enum  { NEW = 0, NOT_COUNTED = -1 }

Public Member Functions

 t_ref_counter (T_integral x=0)
 t_ref_counter (t_ref_counter const &a)
t_ref_counteroperator= (t_ref_counter const a)
 operator T_integral const () const
T_integral const set (T_integral const a)
T_integral const inc ()
T_integral const dec ()
T_integral const enable_count ()
T_integral const disable_count ()
T_integral const operator++ ()
T_integral const operator++ (int)
T_integral const operator-- ()
T_integral const operator-- (int)

Private Member Functions

 BOOST_STATIC_ASSERT (std::numeric_limits< T_integral >::is_signed)

Private Attributes

T_integral count_

Detailed Description

template<typename T_integral>
class n_ref_counter::t_ref_counter< T_integral >

t_ref_counter is a reference counter.

If the counter overflows it stops counting. So any negative count disables reference counting.

Definition at line 35 of file reference_counter.hpp.


Member Enumeration Documentation

template<typename T_integral>
anonymous enum
Enumerator:
NEW 
NOT_COUNTED 

Definition at line 41 of file reference_counter.hpp.


Constructor & Destructor Documentation

template<typename T_integral>
n_ref_counter::t_ref_counter< T_integral >::t_ref_counter ( T_integral  x = 0  )  [inline, explicit]

Definition at line 43 of file reference_counter.hpp.

template<typename T_integral>
n_ref_counter::t_ref_counter< T_integral >::t_ref_counter ( t_ref_counter< T_integral > const &  a  )  [inline]

Definition at line 44 of file reference_counter.hpp.


Member Function Documentation

template<typename T_integral>
n_ref_counter::t_ref_counter< T_integral >::BOOST_STATIC_ASSERT ( std::numeric_limits< T_integral >::is_signed   )  [private]
template<typename T_integral>
T_integral const n_ref_counter::t_ref_counter< T_integral >::dec (  )  [inline]

Definition at line 53 of file reference_counter.hpp.

Referenced by n_ref_counter::t_ref_counter< signed int >::operator--().

Here is the caller graph for this function:

template<typename T_integral>
T_integral const n_ref_counter::t_ref_counter< T_integral >::disable_count (  )  [inline]

Definition at line 59 of file reference_counter.hpp.

template<typename T_integral>
T_integral const n_ref_counter::t_ref_counter< T_integral >::enable_count (  )  [inline]

Definition at line 56 of file reference_counter.hpp.

template<typename T_integral>
T_integral const n_ref_counter::t_ref_counter< T_integral >::inc (  )  [inline]

Definition at line 50 of file reference_counter.hpp.

Referenced by n_ref_counter::t_ref_counter< signed int >::operator++().

Here is the caller graph for this function:

template<typename T_integral>
n_ref_counter::t_ref_counter< T_integral >::operator T_integral const (  )  const [inline]
template<typename T_integral>
T_integral const n_ref_counter::t_ref_counter< T_integral >::operator++ (  )  [inline]

Definition at line 63 of file reference_counter.hpp.

template<typename T_integral>
T_integral const n_ref_counter::t_ref_counter< T_integral >::operator++ ( int   )  [inline]

Definition at line 64 of file reference_counter.hpp.

template<typename T_integral>
T_integral const n_ref_counter::t_ref_counter< T_integral >::operator-- (  )  [inline]

Definition at line 65 of file reference_counter.hpp.

template<typename T_integral>
T_integral const n_ref_counter::t_ref_counter< T_integral >::operator-- ( int   )  [inline]

Definition at line 66 of file reference_counter.hpp.

template<typename T_integral>
t_ref_counter& n_ref_counter::t_ref_counter< T_integral >::operator= ( t_ref_counter< T_integral > const   a  )  [inline]

Definition at line 45 of file reference_counter.hpp.

template<typename T_integral>
T_integral const n_ref_counter::t_ref_counter< T_integral >::set ( T_integral const   a  )  [inline]

Definition at line 49 of file reference_counter.hpp.


Member Data Documentation

template<typename T_integral>
T_integral n_ref_counter::t_ref_counter< T_integral >::count_ [private]

The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated by doxygen 1.7.1 on Thu May 24 2012 01:24:58 for The Battle for Wesnoth
Gna! | Forum | Wiki | CIA | devdocs