|
Blender V4.3
|
#include <BLI_implicit_sharing_ptr.hh>
Public Member Functions | |
| ImplicitSharingPtr ()=default | |
| ImplicitSharingPtr (const T *data) | |
| ImplicitSharingPtr (std::nullptr_t) | |
| ImplicitSharingPtr (const ImplicitSharingPtr &other) | |
| ImplicitSharingPtr (ImplicitSharingPtr &&other) | |
| ~ImplicitSharingPtr () | |
| ImplicitSharingPtr & | operator= (const ImplicitSharingPtr &other) |
| ImplicitSharingPtr & | operator= (ImplicitSharingPtr &&other) |
| const T * | operator-> () const |
| const T & | operator* () const |
| operator bool () const | |
| const T * | get () const |
| const T * | release () |
| void | reset () |
| bool | has_value () const |
| uint64_t | hash () const |
Static Public Member Functions | |
| static uint64_t | hash_as (const T *data) |
Friends | |
| bool | operator== (const T *a, const ImplicitSharingPtr &b) |
| bool | operator== (const ImplicitSharingPtr &a, const T *b) |
ImplicitSharingPtr is a smart pointer that manages implicit sharing. It's designed to work with types that derive from #ImplicitSharingMixin. It is fairly similar to #std::shared_ptr but requires the reference count to be embedded in the data.
Definition at line 24 of file BLI_implicit_sharing_ptr.hh.
|
default |
|
inlineexplicit |
Definition at line 31 of file BLI_implicit_sharing_ptr.hh.
|
inline |
Definition at line 34 of file BLI_implicit_sharing_ptr.hh.
|
inline |
Definition at line 36 of file BLI_implicit_sharing_ptr.hh.
|
inline |
Definition at line 41 of file BLI_implicit_sharing_ptr.hh.
|
inline |
Definition at line 46 of file BLI_implicit_sharing_ptr.hh.
|
inline |
|
inline |
Definition at line 110 of file BLI_implicit_sharing_ptr.hh.
Referenced by blender::bke::GeometrySet::has(), and blender::ImplicitSharingPtrAndData::has_value().
|
inline |
Definition at line 115 of file BLI_implicit_sharing_ptr.hh.
References blender::get_default_hash().
|
inlinestatic |
Definition at line 120 of file BLI_implicit_sharing_ptr.hh.
References blender::get_default_hash().
|
inline |
Definition at line 87 of file BLI_implicit_sharing_ptr.hh.
|
inline |
Definition at line 81 of file BLI_implicit_sharing_ptr.hh.
References BLI_assert.
|
inline |
Definition at line 75 of file BLI_implicit_sharing_ptr.hh.
References BLI_assert.
|
inline |
Definition at line 51 of file BLI_implicit_sharing_ptr.hh.
|
inline |
Definition at line 63 of file BLI_implicit_sharing_ptr.hh.
|
inline |
Definition at line 97 of file BLI_implicit_sharing_ptr.hh.
References data.
|
inline |
Definition at line 104 of file BLI_implicit_sharing_ptr.hh.
|
friend |
Definition at line 132 of file BLI_implicit_sharing_ptr.hh.
|
friend |
Definition at line 127 of file BLI_implicit_sharing_ptr.hh.