mn_linked_ptr.hpp
Go to the documentation of this file.
This class implements a basic_linked_ptr template that it allows sharing of pointers between instance...
Definition: mn_linked_ptr.hpp:45
void link(const basic_linked_ptr< U > &pOther)
Definition: mn_linked_ptr.hpp:174
basic_linked_ptr(const basic_linked_ptr< U > &_pPtr)
Definition: mn_linked_ptr.hpp:73
basic_linked_ptr(pointer pValue)
Construct,.
Definition: mn_linked_ptr.hpp:64
basic_linked_ptr()
Construct a new basic linked ptr object.
Definition: mn_linked_ptr.hpp:58
basic_linked_ptr & operator=(const basic_linked_ptr &_pPtr)
Definition: mn_linked_ptr.hpp:129
basic_linked_ptr(const basic_linked_ptr &_pPtr)
Definition: mn_linked_ptr.hpp:67
bool unique()
If the use count of the owned pointer.
Definition: mn_linked_ptr.hpp:127
int count() const
Returns the use count of the shared pointer.
Definition: mn_linked_ptr.hpp:92
struct mn::memory::detail::ptr_difference T
Definition: mn_atomic_singleton.hpp:38
bool operator!=(const basic_linked_ptr< T > &a, const basic_linked_ptr< U > &b)
Compares two basic_linked_ptr objects for inequality.
Definition: mn_linked_ptr.hpp:239
T * get(const basic_linked_ptr< T > &_pPtr)
Get the pointer object.
Definition: mn_linked_ptr.hpp:223
bool operator==(const basic_linked_ptr< T > &a, const basic_linked_ptr< U > &b)
Compares two basic_linked_ptr objects for equality. Equality is defined as being true when the pointe...
Definition: mn_linked_ptr.hpp:231
basic_linked_ptr< T > make_link(const basic_linked_ptr< T > &value)
Make a linked pointer.
Definition: mn_linked_ptr.hpp:190
Definition: mn_allocator_typetraits.hpp:25
This class allows basic_linked_ptr<T> and basic_linked_ptr to share the same base nodes.
Definition: mn_linked_ptr.hpp:32
basic_linked_ptr_node * Prev
Definition: mn_linked_ptr.hpp:33
basic_linked_ptr_node * Next
Definition: mn_linked_ptr.hpp:34