Public Member Functions

mln::util::tracked_ptr< T > Struct Template Reference
[Utilities]

Smart pointer for shared data with tracking. More...

#include <tracked_ptr.hh>

List of all members.

Public Member Functions

 operator bool () const
 Coercion towards Boolean (for arithmetical tests).
bool operator! () const
 Negation (for arithmetical tests).
T * operator-> ()
 Mimics the behavior of op-> for a pointer in the mutable case.
const T * operator-> () const
 Mimics the behavior of op-> for a pointer in the const case.
tracked_ptr< T > & operator= (T *ptr)
 Assignment.
tracked_ptr< T > & operator= (const tracked_ptr< T > &rhs)
 Assignment.
 ~tracked_ptr ()
 Destructor.

 tracked_ptr ()
 Constructors.
 tracked_ptr (const tracked_ptr< T > &rhs)
 Copy constructor.

Detailed Description

template<typename T>
struct mln::util::tracked_ptr< T >

Smart pointer for shared data with tracking.

Definition at line 52 of file tracked_ptr.hh.


Constructor & Destructor Documentation

template<typename T >
mln::util::tracked_ptr< T >::tracked_ptr (  )  [inline]

Constructors.

Definition at line 140 of file tracked_ptr.hh.

template<typename T >
mln::util::tracked_ptr< T >::tracked_ptr ( const tracked_ptr< T > &  rhs  )  [inline]

Copy constructor.

Definition at line 164 of file tracked_ptr.hh.

template<typename T >
mln::util::tracked_ptr< T >::~tracked_ptr (  )  [inline]

Destructor.

Definition at line 216 of file tracked_ptr.hh.


Member Function Documentation

template<typename T >
mln::util::tracked_ptr< T >::operator bool (  )  const [inline]

Coercion towards Boolean (for arithmetical tests).

Definition at line 106 of file tracked_ptr.hh.

template<typename T >
bool mln::util::tracked_ptr< T >::operator! (  )  const [inline]

Negation (for arithmetical tests).

Definition at line 114 of file tracked_ptr.hh.

template<typename T >
T * mln::util::tracked_ptr< T >::operator-> (  )  [inline]

Mimics the behavior of op-> for a pointer in the mutable case.

Invariant:
Pointer proxy exists.

Definition at line 131 of file tracked_ptr.hh.

template<typename T >
const T * mln::util::tracked_ptr< T >::operator-> (  )  const [inline]

Mimics the behavior of op-> for a pointer in the const case.

Invariant:
Pointer proxy exists.

Definition at line 122 of file tracked_ptr.hh.

template<typename T >
tracked_ptr< T > & mln::util::tracked_ptr< T >::operator= ( T *  ptr  )  [inline]

Assignment.

Definition at line 195 of file tracked_ptr.hh.

template<typename T >
tracked_ptr< T > & mln::util::tracked_ptr< T >::operator= ( const tracked_ptr< T > &  rhs  )  [inline]

Assignment.

Definition at line 176 of file tracked_ptr.hh.