![]() |
Prusa Slicer 2.6.0
|
#include <src/libslic3r/clonable_ptr.hpp>
Inheritance diagram for Slic3r::clonable_ptr< T >:Public Types | |
| typedef T | element_type |
| The type of the managed object, aliased as member type. | |
Public Member Functions | |
| clonable_ptr () noexcept | |
| Default constructor. | |
| clonable_ptr (T *p) noexcept | |
| Constructor with the provided pointer to manage. | |
| clonable_ptr (const clonable_ptr &rhs) | |
| Copy constructor, clones by calling the rhs.clone() method. | |
| clonable_ptr (clonable_ptr &&rhs) noexcept | |
| Move constructor, never throws. | |
| clonable_ptr & | operator= (const clonable_ptr &rhs) |
| Assignment operator. | |
| clonable_ptr & | operator= (clonable_ptr &&rhs) |
| Move operator, never throws. | |
| ~clonable_ptr () noexcept | |
| the destructor releases its ownership and destroy the object | |
| void | reset () noexcept |
| this reset releases its ownership and destroy the object | |
| void | reset (T *p) noexcept |
| this reset release its ownership and re-acquire another one | |
| void | swap (clonable_ptr &rhs) noexcept |
| Swap method for the copy-and-swap idiom (copy constructor and swap method) | |
| void | release () noexcept |
| release the ownership of the px pointer without destroying the object! | |
| operator bool () const noexcept | |
| T & | operator* () const noexcept |
| T * | operator-> () const noexcept |
| T * | get () const noexcept |
Private Member Functions | |
| void | destroy () noexcept |
| release the ownership of the px pointer and destroy the object | |
| void | release () const noexcept |
| hack: const-cast release the ownership of the px pointer without destroying the object! | |
Private Attributes | |
| T * | px |
| Native pointer. | |
| typedef T Slic3r::clonable_ptr< T >::element_type |
The type of the managed object, aliased as member type.
|
inlinenoexcept |
Default constructor.
|
inlineexplicitnoexcept |
Constructor with the provided pointer to manage.
|
inline |
Copy constructor, clones by calling the rhs.clone() method.
|
inlinenoexcept |
Move constructor, never throws.
|
inlinenoexcept |
the destructor releases its ownership and destroy the object
References Slic3r::clonable_ptr< T >::destroy().
Here is the call graph for this function:
|
inlineprivatenoexcept |
release the ownership of the px pointer and destroy the object
References Slic3r::clonable_ptr< T >::px.
Referenced by Slic3r::clonable_ptr< T >::~clonable_ptr(), Slic3r::clonable_ptr< T >::reset(), and Slic3r::clonable_ptr< T >::reset().
Here is the caller graph for this function:
|
inlinenoexcept |
References Slic3r::clonable_ptr< T >::px.
Referenced by Slic3r::ConfigOptionDef::get_default_value().
Here is the caller graph for this function:
|
inlinenoexcept |
References Slic3r::clonable_ptr< T >::px.
|
inlinenoexcept |
References Slic3r::clonable_ptr< T >::px.
|
inlinenoexcept |
References Slic3r::clonable_ptr< T >::px.
|
inline |
Move operator, never throws.
References Slic3r::clonable_ptr< T >::px.
|
inline |
Assignment operator.
References Slic3r::clonable_ptr< T >::px.
|
inlineprivatenoexcept |
hack: const-cast release the ownership of the px pointer without destroying the object!
References Slic3r::clonable_ptr< T >::px.
|
inlinenoexcept |
release the ownership of the px pointer without destroying the object!
References Slic3r::clonable_ptr< T >::px.
|
inlinenoexcept |
this reset releases its ownership and destroy the object
References Slic3r::clonable_ptr< T >::destroy().
Here is the call graph for this function:
|
inlinenoexcept |
this reset release its ownership and re-acquire another one
References Slic3r::clonable_ptr< T >::destroy(), and Slic3r::clonable_ptr< T >::px.
Here is the call graph for this function:
|
inlinenoexcept |
Swap method for the copy-and-swap idiom (copy constructor and swap method)
References Slic3r::clonable_ptr< T >::px.
|
private |
Native pointer.
Referenced by Slic3r::clonable_ptr< T >::destroy(), Slic3r::clonable_ptr< T >::get(), Slic3r::clonable_ptr< T >::operator bool(), Slic3r::clonable_ptr< T >::operator*(), Slic3r::clonable_ptr< T >::operator->(), Slic3r::clonable_ptr< T >::operator=(), Slic3r::clonable_ptr< T >::operator=(), Slic3r::clonable_ptr< T >::release(), Slic3r::clonable_ptr< T >::release(), Slic3r::clonable_ptr< T >::reset(), and Slic3r::clonable_ptr< T >::swap().