|
Blender V4.3
|
#include <BLI_generic_virtual_array.hh>
Inherited by blender::GVArrayImpl_For_SingleValueRef, blender::GVArrayImpl_For_SlicedGVArray, blender::GVArrayImpl_For_SmallTrivialSingleValue< BufferSize >, blender::GVArrayImpl_For_VArray< T >, blender::GVArray_For_GVVectorArrayIndex, blender::GVMutableArrayImpl, and blender::bke::GVArray_For_ConvertedGVArray.
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 (const IndexMask &mask, void *dst) const |
| virtual void | materialize_compressed_to_uninitialized (const IndexMask &mask, void *dst) const |
| virtual bool | try_assign_VArray (void *varray) const |
Protected Attributes | |
| const CPPType * | type_ |
| int64_t | size_ |
Definition at line 31 of file BLI_generic_virtual_array.hh.
Definition at line 663 of file BLI_generic_virtual_array.hh.
References BLI_assert, and size_.
|
virtualdefault |
|
virtual |
Reimplemented in blender::GVArrayImpl_For_GSpan, blender::GVArrayImpl_For_SingleValueRef, blender::GVArrayImpl_For_SlicedGVArray, blender::GVArrayImpl_For_VArray< T >, and blender::GVMutableArrayImpl_For_VMutableArray< T >.
Definition at line 53 of file generic_virtual_array.cc.
Referenced by blender::GVArrayCommon::common_info(), blender::GVArrayDevirtualizer< T, UseSingle, UseSpan >::devirtualize(), blender::fn::multi_function::build::detail::execute_materialized(), 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().
|
virtual |
Reimplemented in blender::GVArray_For_GVVectorArrayIndex, blender::GVArrayImpl_For_GSpan, blender::GVArrayImpl_For_SingleValueRef, blender::GVArrayImpl_For_SlicedGVArray, blender::GVArrayImpl_For_VArray< T >, and blender::GVMutableArrayImpl_For_VMutableArray< T >.
Definition at line 47 of file generic_virtual_array.cc.
References blender::CPPType::destruct(), get_to_uninitialized(), and type_.
Referenced by blender::GVArrayCommon::get(), blender::GVArrayCommon::get(), materialize(), and materialize_compressed().
|
pure virtual |
Implemented in blender::GVArray_For_GVVectorArrayIndex, blender::GVArrayImpl_For_GSpan, blender::GVArrayImpl_For_SingleValueRef, blender::GVArrayImpl_For_SlicedGVArray, blender::GVArrayImpl_For_VArray< T >, and blender::GVMutableArrayImpl_For_VMutableArray< T >.
Referenced by get(), blender::GVArrayCommon::get_to_uninitialized(), materialize_compressed_to_uninitialized(), and materialize_to_uninitialized().
|
virtual |
Reimplemented in blender::GVArrayImpl_For_GSpan, blender::GVArrayImpl_For_SingleValueRef, blender::GVArrayImpl_For_SlicedGVArray, blender::GVArrayImpl_For_VArray< T >, and blender::GVMutableArrayImpl_For_VMutableArray< T >.
Definition at line 15 of file generic_virtual_array.cc.
References get(), POINTER_OFFSET, blender::CPPType::size(), and type_.
Referenced by blender::GVArrayCommon::materialize().
|
virtual |
Reimplemented in blender::GVArrayImpl_For_GSpan, blender::GVArrayImpl_For_SingleValueRef, blender::GVArrayImpl_For_SlicedGVArray, blender::GVArrayImpl_For_VArray< T >, and blender::GVMutableArrayImpl_For_VMutableArray< T >.
Definition at line 31 of file generic_virtual_array.cc.
References get(), POINTER_OFFSET, pos, blender::CPPType::size(), and type_.
Referenced by blender::GVArrayCommon::materialize_compressed().
|
virtual |
Reimplemented in blender::GVArrayImpl_For_GSpan, blender::GVArrayImpl_For_SingleValueRef, blender::GVArrayImpl_For_SlicedGVArray, blender::GVArrayImpl_For_VArray< T >, and blender::GVMutableArrayImpl_For_VMutableArray< T >.
Definition at line 39 of file generic_virtual_array.cc.
References get_to_uninitialized(), POINTER_OFFSET, pos, blender::CPPType::size(), and type_.
Referenced by blender::fn::multi_function::build::detail::execute_materialized(), and blender::GVArrayCommon::materialize_compressed_to_uninitialized().
|
virtual |
Reimplemented in blender::GVArrayImpl_For_GSpan, blender::GVArrayImpl_For_SingleValueRef, blender::GVArrayImpl_For_SlicedGVArray, blender::GVArrayImpl_For_VArray< T >, and blender::GVMutableArrayImpl_For_VMutableArray< T >.
Definition at line 23 of file generic_virtual_array.cc.
References get_to_uninitialized(), POINTER_OFFSET, blender::CPPType::size(), and type_.
Referenced by blender::GVArrayCommon::materialize_to_uninitialized().
|
inline |
Definition at line 674 of file BLI_generic_virtual_array.hh.
References size_.
Referenced by blender::GVArrayDevirtualizer< T, UseSingle, UseSpan >::devirtualize(), blender::GVArrayCommon::materialize(), blender::GVArrayCommon::materialize_to_uninitialized(), blender::GVArrayCommon::materialize_to_uninitialized(), and blender::GVArrayCommon::size().
|
virtual |
Reimplemented in blender::GVArrayImpl_For_VArray< T >, and blender::GVMutableArrayImpl_For_VMutableArray< T >.
Definition at line 58 of file generic_virtual_array.cc.
Referenced by blender::GVArrayCommon::try_assign_VArray().
|
inline |
Definition at line 669 of file BLI_generic_virtual_array.hh.
References type_.
Referenced by blender::GVArrayCommon::get_internal_single_to_uninitialized(), blender::GVArrayCommon::try_assign_VArray(), blender::GVMutableArray::try_assign_VMutableArray(), blender::GVArrayCommon::type(), and blender::GVArray::typed().
|
protected |
Definition at line 34 of file BLI_generic_virtual_array.hh.
Referenced by GVArrayImpl(), blender::GVMutableArrayImpl::set_all(), and size().
|
protected |
Definition at line 33 of file BLI_generic_virtual_array.hh.
Referenced by blender::GVArrayImpl_For_SlicedGVArray::common_info(), get(), blender::GVArrayImpl_For_GSpan::get(), blender::GVArrayImpl_For_SingleValueRef::get(), blender::GVArray_For_GVVectorArrayIndex::get_to_uninitialized(), blender::GVArrayImpl_For_GSpan::get_to_uninitialized(), blender::GVArrayImpl_For_SingleValueRef::get_to_uninitialized(), materialize(), blender::GVArrayImpl_For_GSpan::materialize(), blender::GVArrayImpl_For_SingleValueRef::materialize(), blender::GVArrayImpl_For_SlicedGVArray::materialize(), materialize_compressed(), blender::GVArrayImpl_For_GSpan::materialize_compressed(), blender::GVArrayImpl_For_SingleValueRef::materialize_compressed(), materialize_compressed_to_uninitialized(), blender::GVArrayImpl_For_GSpan::materialize_compressed_to_uninitialized(), blender::GVArrayImpl_For_SingleValueRef::materialize_compressed_to_uninitialized(), materialize_to_uninitialized(), blender::GVArrayImpl_For_GSpan::materialize_to_uninitialized(), blender::GVArrayImpl_For_SingleValueRef::materialize_to_uninitialized(), blender::GVArrayImpl_For_SlicedGVArray::materialize_to_uninitialized(), blender::GVMutableArrayImpl::set_all(), blender::GVArrayImpl_For_GSpan::set_by_copy(), blender::GVMutableArrayImpl::set_by_copy(), blender::GVArrayImpl_For_GSpan::set_by_move(), blender::GVArrayImpl_For_GSpan::set_by_relocate(), blender::GVMutableArrayImpl::set_by_relocate(), type(), and blender::GVArrayImpl_For_SingleValue::~GVArrayImpl_For_SingleValue().