#include <tracked_ptr.hh>
Public Types | |
typedef std::set< self_t * > | holders_t |
typedef tracked_ptr< T > | self_t |
Public Member Functions | |
void | clean_ () |
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. | |
bool | run_ () const |
~tracked_ptr () | |
Destructor. | |
tracked_ptr (const tracked_ptr< T > &rhs) | |
Copy constructor. | |
tracked_ptr (T *ptr) | |
tracked_ptr () | |
Constructors. | |
Public Attributes | |
holders_t * | holders_ |
T * | ptr_ |
Definition at line 52 of file tracked_ptr.hh.
typedef std::set<self_t*> mln::util::tracked_ptr< T >::holders_t |
Definition at line 55 of file tracked_ptr.hh.
typedef tracked_ptr<T> mln::util::tracked_ptr< T >::self_t |
Definition at line 54 of file tracked_ptr.hh.
mln::util::tracked_ptr< T >::tracked_ptr | ( | ) | [inline] |
Constructors.
Definition at line 140 of file tracked_ptr.hh.
References mln::util::tracked_ptr< T >::run_().
mln::util::tracked_ptr< T >::tracked_ptr | ( | T * | ptr | ) | [inline] |
Definition at line 149 of file tracked_ptr.hh.
References mln::util::tracked_ptr< T >::holders_, and mln::util::tracked_ptr< T >::run_().
mln::util::tracked_ptr< T >::tracked_ptr | ( | const tracked_ptr< T > & | rhs | ) | [inline] |
Copy constructor.
Definition at line 164 of file tracked_ptr.hh.
References mln::util::tracked_ptr< T >::holders_, mln::util::tracked_ptr< T >::ptr_, and mln::util::tracked_ptr< T >::run_().
mln::util::tracked_ptr< T >::~tracked_ptr | ( | ) | [inline] |
Destructor.
Definition at line 216 of file tracked_ptr.hh.
References mln::util::tracked_ptr< T >::clean_().
void mln::util::tracked_ptr< T >::clean_ | ( | ) | [inline] |
Definition at line 240 of file tracked_ptr.hh.
References mln::util::tracked_ptr< T >::holders_, mln::util::tracked_ptr< T >::ptr_, and mln::util::tracked_ptr< T >::run_().
Referenced by mln::util::internal::graph_base< E >::invalidate(), mln::util::tracked_ptr< T >::operator=(), and mln::util::tracked_ptr< T >::~tracked_ptr().
mln::util::tracked_ptr< T >::operator bool | ( | ) | const [inline] |
Coercion towards Boolean (for arithmetical tests).
Definition at line 106 of file tracked_ptr.hh.
References mln::util::tracked_ptr< T >::ptr_, and mln::util::tracked_ptr< T >::run_().
bool mln::util::tracked_ptr< T >::operator! | ( | ) | const [inline] |
Negation (for arithmetical tests).
Definition at line 114 of file tracked_ptr.hh.
References mln::util::tracked_ptr< T >::run_().
T * mln::util::tracked_ptr< T >::operator-> | ( | ) | [inline] |
Mimics the behavior of op-> for a pointer in the mutable case.
Definition at line 131 of file tracked_ptr.hh.
References mln::util::tracked_ptr< T >::ptr_, and mln::util::tracked_ptr< T >::run_().
const T * mln::util::tracked_ptr< T >::operator-> | ( | ) | const [inline] |
Mimics the behavior of op-> for a pointer in the const case.
Definition at line 122 of file tracked_ptr.hh.
References mln::util::tracked_ptr< T >::ptr_, and mln::util::tracked_ptr< T >::run_().
tracked_ptr< T > & mln::util::tracked_ptr< T >::operator= | ( | T * | ptr | ) | [inline] |
Assignment.
Definition at line 195 of file tracked_ptr.hh.
References mln::util::tracked_ptr< T >::clean_(), mln::util::tracked_ptr< T >::holders_, mln::util::tracked_ptr< T >::ptr_, and mln::util::tracked_ptr< T >::run_().
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.
References mln::util::tracked_ptr< T >::clean_(), mln::util::tracked_ptr< T >::holders_, mln::util::tracked_ptr< T >::ptr_, and mln::util::tracked_ptr< T >::run_().
bool mln::util::tracked_ptr< T >::run_ | ( | ) | const [inline] |
Definition at line 223 of file tracked_ptr.hh.
References mln::util::tracked_ptr< T >::holders_, and mln::util::tracked_ptr< T >::ptr_.
Referenced by mln::util::tracked_ptr< T >::clean_(), mln::util::tracked_ptr< T >::operator bool(), mln::util::tracked_ptr< T >::operator!(), mln::util::tracked_ptr< T >::operator->(), mln::util::tracked_ptr< T >::operator=(), and mln::util::tracked_ptr< T >::tracked_ptr().
holders_t* mln::util::tracked_ptr< T >::holders_ |
Definition at line 58 of file tracked_ptr.hh.
Referenced by mln::util::tracked_ptr< T >::clean_(), mln::util::tracked_ptr< T >::operator=(), mln::util::tracked_ptr< T >::run_(), and mln::util::tracked_ptr< T >::tracked_ptr().
T* mln::util::tracked_ptr< T >::ptr_ |
Definition at line 57 of file tracked_ptr.hh.
Referenced by mln::util::tracked_ptr< T >::clean_(), mln::util::internal::graph_base< E >::id(), mln::internal::image_base< T, S, E >::id_(), mln::util::tracked_ptr< T >::operator bool(), mln::util::tracked_ptr< T >::operator->(), mln::util::tracked_ptr< T >::operator=(), mln::util::tracked_ptr< T >::run_(), and mln::util::tracked_ptr< T >::tracked_ptr().