Blender
V3.3
|
#include <BKE_anonymous_attribute.hh>
Public Member Functions | |
OwnedAnonymousAttributeID ()=default | |
OwnedAnonymousAttributeID (StringRefNull debug_name) | |
OwnedAnonymousAttributeID (const AnonymousAttributeID *anonymous_id) | |
template<bool OtherIsStrong> | |
OwnedAnonymousAttributeID (const OwnedAnonymousAttributeID< OtherIsStrong > &other) | |
template<bool OtherIsStrong> | |
OwnedAnonymousAttributeID (OwnedAnonymousAttributeID< OtherIsStrong > &&other) | |
~OwnedAnonymousAttributeID () | |
template<bool OtherIsStrong> | |
OwnedAnonymousAttributeID & | operator= (const OwnedAnonymousAttributeID< OtherIsStrong > &other) |
template<bool OtherIsStrong> | |
OwnedAnonymousAttributeID & | operator= (OwnedAnonymousAttributeID< OtherIsStrong > &&other) |
operator bool () const | |
StringRefNull | debug_name () const |
bool | has_strong_references () const |
const AnonymousAttributeID * | extract () |
const AnonymousAttributeID * | get () const |
Friends | |
template<bool OtherIsStrongReference> | |
class | OwnedAnonymousAttributeID |
Wrapper for AnonymousAttributeID with RAII semantics. This class should typically not be used directly. Instead use StrongAnonymousAttributeID or WeakAnonymousAttributeID.
Definition at line 20 of file BKE_anonymous_attribute.hh.
|
default |
|
inlineexplicit |
Create a new anonymous attribute id.
Definition at line 30 of file BKE_anonymous_attribute.hh.
References BKE_anonymous_attribute_id_new_strong(), BKE_anonymous_attribute_id_new_weak(), blender::StringRefNull::c_str(), data_, and blender::bke::OwnedAnonymousAttributeID< IsStrongReference >::debug_name().
|
inlineexplicit |
This transfers ownership, so no incref is necessary. The caller has to make sure that it owned the anonymous id.
Definition at line 44 of file BKE_anonymous_attribute.hh.
|
inline |
Definition at line 50 of file BKE_anonymous_attribute.hh.
References data_.
|
inline |
Definition at line 57 of file BKE_anonymous_attribute.hh.
References data_.
|
inline |
Definition at line 65 of file BKE_anonymous_attribute.hh.
Referenced by blender::bke::OwnedAnonymousAttributeID< IsStrongReference >::operator=().
|
inline |
Definition at line 97 of file BKE_anonymous_attribute.hh.
References BKE_anonymous_attribute_id_debug_name(), BLI_assert, and data_.
Referenced by blender::bke::OwnedAnonymousAttributeID< IsStrongReference >::OwnedAnonymousAttributeID().
|
inline |
Extract the ownership of the currently wrapped anonymous id.
Definition at line 110 of file BKE_anonymous_attribute.hh.
References data_.
|
inline |
Get the wrapped anonymous id, without taking ownership.
Definition at line 119 of file BKE_anonymous_attribute.hh.
References data_.
Referenced by blender::bke::AnonymousAttributeFieldInput::get_varray_for_context(), blender::bke::AnonymousAttributeFieldInput::hash(), and blender::bke::AnonymousAttributeFieldInput::is_equal_to().
|
inline |
Definition at line 103 of file BKE_anonymous_attribute.hh.
References BKE_anonymous_attribute_id_has_strong_references(), BLI_assert, and data_.
|
inline |
Definition at line 92 of file BKE_anonymous_attribute.hh.
References data_.
|
inline |
|
inline |
|
friend |
Definition at line 24 of file BKE_anonymous_attribute.hh.
Referenced by blender::bke::OwnedAnonymousAttributeID< IsStrongReference >::operator=().