Blender
V3.3
|
#include <BLI_virtual_array.hh>
Public Types | |
enum class | Type : uint8_t { Any , Span , Single } |
Public Member Functions | |
CommonVArrayInfo ()=default | |
CommonVArrayInfo (const Type _type, const bool _may_have_ownership, const void *_data) | |
Public Attributes | |
Type | type = Type::Any |
bool | may_have_ownership = true |
const void * | data |
Is used to quickly check if a varray is a span or single value. This struct also allows retrieving multiple pieces of data with a single virtual method call.
Definition at line 41 of file BLI_virtual_array.hh.
|
strong |
Enumerator | |
---|---|
Any | |
Span | |
Single |
Definition at line 42 of file BLI_virtual_array.hh.
|
default |
|
inline |
Definition at line 61 of file BLI_virtual_array.hh.
const void* blender::CommonVArrayInfo::data |
Points either to nothing, a single value or array of values, depending on type. If this is a span of a mutable virtual array, it is safe to cast away const.
Definition at line 58 of file BLI_virtual_array.hh.
Referenced by blender::GVArrayImpl_For_SlicedGVArray::common_info(), blender::GVMutableArray::fill(), blender::VArrayCommon< T >::get_internal_single(), blender::GVArrayCommon::get_internal_single(), blender::GVArrayCommon::get_internal_span(), blender::GVMutableArray::get_internal_span(), blender::VArrayCommon< T >::get_internal_span(), blender::VMutableArray< T >::get_internal_span(), blender::GMutableVArraySpan::GMutableVArraySpan(), blender::GVArray::GVArray(), blender::GVArraySpan::GVArraySpan(), blender::GVMutableArray::GVMutableArray(), blender::VArrayImpl_For_Span< T >::is_same(), blender::VArrayImpl< T >::materialize(), blender::VArrayImpl< T >::materialize_to_uninitialized(), blender::MutableVArraySpan< T >::MutableVArraySpan(), blender::GVMutableArrayImpl::set_all(), blender::VMutableArrayImpl< T >::set_all(), blender::GVArray::slice(), blender::GVArray::typed(), blender::GVMutableArray::typed(), and blender::VArraySpan< T >::VArraySpan().
bool blender::CommonVArrayInfo::may_have_ownership = true |
True when the data becomes a dangling pointer when the virtual array is destructed.
Definition at line 52 of file BLI_virtual_array.hh.
Referenced by blender::GVArrayImpl_For_SlicedGVArray::common_info(), blender::GVArray::GVArray(), blender::GVMutableArray::GVMutableArray(), blender::GVArray::slice(), blender::GVArray::typed(), and blender::GVMutableArray::typed().
Definition at line 49 of file BLI_virtual_array.hh.
Referenced by blender::GVArrayImpl_For_SlicedGVArray::common_info(), blender::GVMutableArray::fill(), blender::GMutableVArraySpan::GMutableVArraySpan(), blender::GVArray::GVArray(), blender::GVArraySpan::GVArraySpan(), blender::GVMutableArray::GVMutableArray(), blender::VArrayImpl_For_Span< T >::is_same(), blender::GVArrayCommon::is_single(), blender::VArrayCommon< T >::is_single(), blender::GVArrayCommon::is_span(), blender::VArrayCommon< T >::is_span(), blender::VArrayImpl< T >::materialize(), blender::VArrayImpl< T >::materialize_to_uninitialized(), blender::MutableVArraySpan< T >::MutableVArraySpan(), blender::GVMutableArrayImpl::set_all(), blender::VMutableArrayImpl< T >::set_all(), blender::GVArray::slice(), blender::GVArray::typed(), blender::GVMutableArray::typed(), and blender::VArraySpan< T >::VArraySpan().