Main MRPT website > C++ reference for MRPT 1.9.9
List of all members | Public Types | Public Member Functions | Protected Attributes
mrpt::containers::internal::generic_copier_ptr< T, Copier > Class Template Reference

Detailed Description

template<typename T, typename Copier>
class mrpt::containers::internal::generic_copier_ptr< T, Copier >

Definition at line 47 of file deepcopy_ptr.h.

#include <mrpt/containers/deepcopy_ptr.h>

Inheritance diagram for mrpt::containers::internal::generic_copier_ptr< T, Copier >:
Inheritance graph

Public Types

using value_type = T
 
using copier_t = Copier
 

Public Member Functions

 generic_copier_ptr (T *ptr)
 Ctor from a pointer; takes ownership. More...
 
 generic_copier_ptr ()
 Default ctor; init to nullptr. More...
 
 generic_copier_ptr (const generic_copier_ptr< T, Copier > &o)
 copy ctor: makes a copy of the object via clone() More...
 
 ~generic_copier_ptr ()
 
void move_from (generic_copier_ptr &o)
 
 generic_copier_ptr (generic_copier_ptr< T, Copier > &&o)
 move ctor More...
 
generic_copier_ptr< T, Copier > & operator= (generic_copier_ptr< T, Copier > &&o)
 move operator More...
 
generic_copier_ptr< T, Copier > & operator= (const generic_copier_ptr< T, Copier > &o)
 copy operator More...
 
T * operator-> ()
 
const T * operator-> () const
 
T & operator* (void)
 
const T & operator* (void) const
 
T * get ()
 
const T * get () const
 
 operator bool () const
 
bool operator! (void) const
 
T * release ()
 Releases the pointer (do not destroy the object) More...
 
void reset (T *ptr=nullptr)
 
void resetDefaultCtor ()
 

Protected Attributes

T * m_ptr
 

Member Typedef Documentation

◆ copier_t

template<typename T, typename Copier>
using mrpt::containers::internal::generic_copier_ptr< T, Copier >::copier_t = Copier

Definition at line 51 of file deepcopy_ptr.h.

◆ value_type

template<typename T, typename Copier>
using mrpt::containers::internal::generic_copier_ptr< T, Copier >::value_type = T

Definition at line 50 of file deepcopy_ptr.h.

Constructor & Destructor Documentation

◆ generic_copier_ptr() [1/4]

template<typename T, typename Copier>
mrpt::containers::internal::generic_copier_ptr< T, Copier >::generic_copier_ptr ( T *  ptr)
inlineexplicit

Ctor from a pointer; takes ownership.

Definition at line 53 of file deepcopy_ptr.h.

◆ generic_copier_ptr() [2/4]

template<typename T, typename Copier>
mrpt::containers::internal::generic_copier_ptr< T, Copier >::generic_copier_ptr ( )
inline

Default ctor; init to nullptr.

Definition at line 55 of file deepcopy_ptr.h.

◆ generic_copier_ptr() [3/4]

template<typename T, typename Copier>
mrpt::containers::internal::generic_copier_ptr< T, Copier >::generic_copier_ptr ( const generic_copier_ptr< T, Copier > &  o)
inline

copy ctor: makes a copy of the object via clone()

Definition at line 57 of file deepcopy_ptr.h.

◆ ~generic_copier_ptr()

template<typename T, typename Copier>
mrpt::containers::internal::generic_copier_ptr< T, Copier >::~generic_copier_ptr ( )
inline

Definition at line 61 of file deepcopy_ptr.h.

◆ generic_copier_ptr() [4/4]

template<typename T, typename Copier>
mrpt::containers::internal::generic_copier_ptr< T, Copier >::generic_copier_ptr ( generic_copier_ptr< T, Copier > &&  o)
inline

move ctor

Definition at line 72 of file deepcopy_ptr.h.

Member Function Documentation

◆ get() [1/2]

template<typename T, typename Copier>
T* mrpt::containers::internal::generic_copier_ptr< T, Copier >::get ( )
inline

Definition at line 126 of file deepcopy_ptr.h.

◆ get() [2/2]

template<typename T, typename Copier>
const T* mrpt::containers::internal::generic_copier_ptr< T, Copier >::get ( ) const
inline

Definition at line 127 of file deepcopy_ptr.h.

◆ move_from()

template<typename T, typename Copier>
void mrpt::containers::internal::generic_copier_ptr< T, Copier >::move_from ( generic_copier_ptr< T, Copier > &  o)
inline

Definition at line 66 of file deepcopy_ptr.h.

◆ operator bool()

template<typename T, typename Copier>
mrpt::containers::internal::generic_copier_ptr< T, Copier >::operator bool ( ) const
inline

Definition at line 128 of file deepcopy_ptr.h.

◆ operator!()

template<typename T, typename Copier>
bool mrpt::containers::internal::generic_copier_ptr< T, Copier >::operator! ( void  ) const
inline

Definition at line 129 of file deepcopy_ptr.h.

◆ operator*() [1/2]

template<typename T, typename Copier>
T& mrpt::containers::internal::generic_copier_ptr< T, Copier >::operator* ( void  )
inline

Definition at line 111 of file deepcopy_ptr.h.

◆ operator*() [2/2]

template<typename T, typename Copier>
const T& mrpt::containers::internal::generic_copier_ptr< T, Copier >::operator* ( void  ) const
inline

Definition at line 118 of file deepcopy_ptr.h.

◆ operator->() [1/2]

template<typename T, typename Copier>
T* mrpt::containers::internal::generic_copier_ptr< T, Copier >::operator-> ( )
inline

Definition at line 96 of file deepcopy_ptr.h.

◆ operator->() [2/2]

template<typename T, typename Copier>
const T* mrpt::containers::internal::generic_copier_ptr< T, Copier >::operator-> ( ) const
inline

Definition at line 103 of file deepcopy_ptr.h.

◆ operator=() [1/2]

template<typename T, typename Copier>
generic_copier_ptr<T, Copier>& mrpt::containers::internal::generic_copier_ptr< T, Copier >::operator= ( generic_copier_ptr< T, Copier > &&  o)
inline

move operator

Definition at line 78 of file deepcopy_ptr.h.

◆ operator=() [2/2]

template<typename T, typename Copier>
generic_copier_ptr<T, Copier>& mrpt::containers::internal::generic_copier_ptr< T, Copier >::operator= ( const generic_copier_ptr< T, Copier > &  o)
inline

copy operator

Definition at line 87 of file deepcopy_ptr.h.

◆ release()

template<typename T, typename Copier>
T* mrpt::containers::internal::generic_copier_ptr< T, Copier >::release ( )
inline

Releases the pointer (do not destroy the object)

Definition at line 131 of file deepcopy_ptr.h.

◆ reset()

template<typename T, typename Copier>
void mrpt::containers::internal::generic_copier_ptr< T, Copier >::reset ( T *  ptr = nullptr)
inline

◆ resetDefaultCtor()

template<typename T, typename Copier>
void mrpt::containers::internal::generic_copier_ptr< T, Copier >::resetDefaultCtor ( )
inline

Definition at line 144 of file deepcopy_ptr.h.

Member Data Documentation

◆ m_ptr

template<typename T, typename Copier>
T* mrpt::containers::internal::generic_copier_ptr< T, Copier >::m_ptr
protected



Page generated by Doxygen 1.8.14 for MRPT 1.9.9 Git: ad3a9d8ae Tue May 1 23:10:22 2018 -0700 at lun oct 28 00:14:14 CET 2019