API Documentation
Loading...
Searching...
No Matches
DynamicPointer< t_type > Class Template Reference

Provides a modifiable pointer that has shared ownership of a dynamically allocated object. More...

#include <Pointer.hpp>

Inheritance diagram for DynamicPointer< t_type >:
[legend]
Collaboration diagram for DynamicPointer< t_type >:
[legend]

Public Member Functions

template<class t_other_type >
DynamicPointer< t_other_type > as () const
 
 DynamicPointer ()
 
 DynamicPointer (const DynamicPointer< t_type > &value) noexcept
 
 DynamicPointer (DynamicPointer< t_type > &&value) noexcept
 
 DynamicPointer (t_type &&value) noexcept
 
 DynamicPointer (t_type *value) noexcept
 
constexpr t_type & get () const
 
t_type * operator-> () const
 
DynamicPointeroperator= (const DynamicPointer &pointer)
 
DynamicPointeroperator= (t_type *pointer)
 
constexpr t_type * rawptr () const
 
void set (t_type &&value)
 
- Public Member Functions inherited from ConstPointer< t_type >
template<class t_other_type >
ConstPointer< t_other_type > as () const
 
 ConstPointer ()
 
 ConstPointer (const Pointer< t_type > &value) noexcept
 
 ConstPointer (const t_type *value) noexcept
 
 ConstPointer (t_type &&value) noexcept
 
const t_type & get () const
 
const t_type * operator-> () const
 
ConstPointer< t_type > & operator= (const Pointer< t_type > &pointer) noexcept
 
ConstPointer< t_type > & operator= (t_type *pointer)
 
constexpr const t_type * rawptr () const
 
void set (t_type &&value) noexcept
 
- Public Member Functions inherited from Pointer< t_type >
bool isNull () const
 
bool operator!= (const Pointer< t_type > &pointer) const
 
bool operator== (const Pointer< t_type > &pointer) const
 
uint04 referenceCount () const
 
void setToNull ()
 
void swap (Pointer< t_type > &pointer)
 

Friends

class MemoryManager< BufferAllocator< DynamicPointer< t_type >, uint04, false >, t_type >
 

Additional Inherited Members

- Protected Member Functions inherited from Pointer< t_type >
t_type & get () const
 
Pointeroperator= (const Pointer &pointer)
 
Pointeroperator= (t_type *pointer)
 
 Pointer () noexcept
 
 Pointer (const Pointer< t_type > &value) noexcept
 
 Pointer (t_type &&value) noexcept
 
 Pointer (t_type *value) noexcept
 
constexpr t_type * rawptr () const
 
void set (t_type &&value)
 
 ~Pointer ()
 
- Protected Attributes inherited from Pointer< t_type >
Corem_core = nullptr
 
t_type * m_object = nullptr
 

Detailed Description

template<class t_type>
class NDEVR::DynamicPointer< t_type >

Provides a modifiable pointer that has shared ownership of a dynamically allocated object.


Weaker overall logic (Cannot detect circular references) but faster.

Constructor & Destructor Documentation

◆ DynamicPointer() [1/5]

template<class t_type >
DynamicPointer ( )
inline

◆ DynamicPointer() [2/5]

template<class t_type >
DynamicPointer ( t_type * value)
inlinenoexcept

◆ DynamicPointer() [3/5]

template<class t_type >
DynamicPointer ( t_type && value)
inlinenoexcept

◆ DynamicPointer() [4/5]

template<class t_type >
DynamicPointer ( const DynamicPointer< t_type > & value)
inlinenoexcept

◆ DynamicPointer() [5/5]

template<class t_type >
DynamicPointer ( DynamicPointer< t_type > && value)
inlinenoexcept

Member Function Documentation

◆ as()

template<class t_type >
template<class t_other_type >
DynamicPointer< t_other_type > as ( ) const
inline

◆ get()

template<class t_type >
t_type & get ( ) const
inlineconstexpr

◆ operator->()

template<class t_type >
t_type * operator-> ( ) const
inline

◆ operator=() [1/2]

template<class t_type >
DynamicPointer & operator= ( const DynamicPointer< t_type > & pointer)
inline

◆ operator=() [2/2]

template<class t_type >
DynamicPointer & operator= ( t_type * pointer)
inline

◆ rawptr()

template<class t_type >
t_type * rawptr ( ) const
inlineconstexpr

◆ set()

template<class t_type >
void set ( t_type && value)
inline

Friends And Related Symbol Documentation

◆ MemoryManager< BufferAllocator< DynamicPointer< t_type >, uint04, false >, t_type >

template<class t_type >
friend class MemoryManager< BufferAllocator< DynamicPointer< t_type >, uint04, false >, t_type >
friend

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