Blender
V3.3
|
#include <BLI_generic_virtual_array.hh>
Public Member Functions | |
virtual | ~GVArrayImpl ()=default |
virtual void | get_to_uninitialized (int64_t index, void *r_value) const =0 |
Inline methods for #GVArrayImpl. | |
GVArrayImpl (const CPPType &type, int64_t size) | |
const CPPType & | type () const |
int64_t | size () const |
#GVArrayImpl | |
virtual void | get (int64_t index, void *r_value) const |
virtual CommonVArrayInfo | common_info () const |
virtual void | materialize (const IndexMask mask, void *dst) const |
virtual void | materialize_to_uninitialized (const IndexMask mask, void *dst) const |
virtual void | materialize_compressed (IndexMask mask, void *dst) const |
virtual void | materialize_compressed_to_uninitialized (IndexMask mask, void *dst) const |
virtual bool | try_assign_VArray (void *varray) const |
Protected Attributes | |
const CPPType * | type_ |
int64_t | size_ |
Definition at line 29 of file BLI_generic_virtual_array.hh.
Definition at line 660 of file BLI_generic_virtual_array.hh.
References BLI_assert, and size_.
|
virtualdefault |
|
virtual |
Reimplemented in blender::GVArrayImpl_For_SlicedGVArray, blender::GVArrayImpl_For_SingleValueRef, blender::GVArrayImpl_For_GSpan, blender::GVMutableArrayImpl_For_VMutableArray< T >, and blender::GVArrayImpl_For_VArray< T >.
Definition at line 49 of file generic_virtual_array.cc.
Referenced by blender::GVArrayCommon::common_info(), blender::GVArrayCommon::get_internal_single(), blender::GVArrayCommon::get_internal_span(), blender::GVMutableArray::get_internal_span(), blender::GVArrayCommon::is_single(), blender::GVArrayCommon::is_span(), and blender::GVMutableArrayImpl::set_all().
Reimplemented in blender::GVArray_For_GVVectorArrayIndex, blender::GVArrayImpl_For_GSpan, blender::GVArrayImpl_For_SlicedGVArray, blender::GVArrayImpl_For_SingleValueRef, blender::GVMutableArrayImpl_For_VMutableArray< T >, and blender::GVArrayImpl_For_VArray< T >.
Definition at line 43 of file generic_virtual_array.cc.
References blender::CPPType::destruct(), get_to_uninitialized(), and type_.
Referenced by blender::GVArrayCommon::get(), materialize(), and materialize_compressed().
|
pure virtual |
Implemented in blender::GVArray_For_GVVectorArrayIndex, blender::GVArrayImpl_For_GSpan, blender::GVArrayImpl_For_SlicedGVArray, blender::GVArrayImpl_For_SingleValueRef, blender::GVMutableArrayImpl_For_VMutableArray< T >, and blender::GVArrayImpl_For_VArray< T >.
Referenced by get(), blender::GVArrayCommon::get_to_uninitialized(), materialize_compressed_to_uninitialized(), and materialize_to_uninitialized().
Reimplemented in blender::GVArrayImpl_For_SingleValueRef, blender::GVArrayImpl_For_GSpan, blender::GVMutableArrayImpl_For_VMutableArray< T >, and blender::GVArrayImpl_For_VArray< T >.
Definition at line 11 of file generic_virtual_array.cc.
References get(), mask(), POINTER_OFFSET, blender::CPPType::size(), and type_.
Referenced by blender::GVArrayCommon::materialize().
Reimplemented in blender::GVArrayImpl_For_SingleValueRef, blender::GVArrayImpl_For_GSpan, blender::GVMutableArrayImpl_For_VMutableArray< T >, and blender::GVArrayImpl_For_VArray< T >.
Definition at line 27 of file generic_virtual_array.cc.
References get(), mask(), POINTER_OFFSET, blender::CPPType::size(), and type_.
Referenced by blender::GVArrayCommon::materialize_compressed().
|
virtual |
Reimplemented in blender::GVArrayImpl_For_SlicedGVArray, blender::GVArrayImpl_For_SingleValueRef, blender::GVArrayImpl_For_GSpan, blender::GVMutableArrayImpl_For_VMutableArray< T >, and blender::GVArrayImpl_For_VArray< T >.
Definition at line 35 of file generic_virtual_array.cc.
References get_to_uninitialized(), mask(), POINTER_OFFSET, blender::CPPType::size(), and type_.
Referenced by blender::GVArrayCommon::materialize_compressed_to_uninitialized().
|
virtual |
Reimplemented in blender::GVArrayImpl_For_SingleValueRef, blender::GVArrayImpl_For_GSpan, blender::GVMutableArrayImpl_For_VMutableArray< T >, and blender::GVArrayImpl_For_VArray< T >.
Definition at line 19 of file generic_virtual_array.cc.
References get_to_uninitialized(), mask(), POINTER_OFFSET, blender::CPPType::size(), and type_.
Referenced by blender::GVArrayCommon::materialize_to_uninitialized().
|
inline |
Definition at line 671 of file BLI_generic_virtual_array.hh.
References size_.
Referenced by blender::GVArrayCommon::materialize(), blender::GVArrayCommon::materialize_to_uninitialized(), and blender::GVArrayCommon::size().
Reimplemented in blender::GVMutableArrayImpl_For_VMutableArray< T >, and blender::GVArrayImpl_For_VArray< T >.
Definition at line 54 of file generic_virtual_array.cc.
Referenced by blender::GVArrayCommon::try_assign_VArray().
|
inline |
Definition at line 666 of file BLI_generic_virtual_array.hh.
References type_.
Referenced by blender::GVArrayCommon::get_internal_single_to_uninitialized(), blender::GVArrayImpl_For_SingleValue::GVArrayImpl_For_SingleValue(), blender::GVArrayImpl_For_SmallTrivialSingleValue< BufferSize >::GVArrayImpl_For_SmallTrivialSingleValue(), blender::GVArrayCommon::try_assign_VArray(), blender::GVMutableArray::try_assign_VMutableArray(), blender::GVArrayCommon::type(), and blender::GVArray::typed().
|
protected |
Definition at line 32 of file BLI_generic_virtual_array.hh.
Referenced by GVArrayImpl(), blender::GVMutableArrayImpl::set_all(), and size().
|
protected |
Definition at line 31 of file BLI_generic_virtual_array.hh.
Referenced by blender::GVArrayImpl_For_SlicedGVArray::common_info(), blender::GVArrayImpl_For_SingleValueRef::get(), get(), blender::GVArrayImpl_For_GSpan::get(), blender::GVArrayImpl_For_SingleValueRef::get_to_uninitialized(), blender::GVArrayImpl_For_GSpan::get_to_uninitialized(), blender::GVArray_For_GVVectorArrayIndex::get_to_uninitialized(), materialize(), blender::GVArrayImpl_For_GSpan::materialize(), blender::GVArrayImpl_For_SingleValueRef::materialize(), blender::GVArrayImpl_For_GSpan::materialize_compressed(), blender::GVArrayImpl_For_SingleValueRef::materialize_compressed(), materialize_compressed(), blender::GVArrayImpl_For_GSpan::materialize_compressed_to_uninitialized(), blender::GVArrayImpl_For_SingleValueRef::materialize_compressed_to_uninitialized(), materialize_compressed_to_uninitialized(), materialize_to_uninitialized(), blender::GVArrayImpl_For_GSpan::materialize_to_uninitialized(), blender::GVArrayImpl_For_SingleValueRef::materialize_to_uninitialized(), blender::GVMutableArrayImpl::set_all(), blender::GVMutableArrayImpl::set_by_copy(), blender::GVArrayImpl_For_GSpan::set_by_copy(), blender::GVArrayImpl_For_GSpan::set_by_move(), blender::GVMutableArrayImpl::set_by_relocate(), blender::GVArrayImpl_For_GSpan::set_by_relocate(), type(), and blender::GVArrayImpl_For_SingleValue::~GVArrayImpl_For_SingleValue().