|
Blender
V2.93
|
#include <FN_generic_virtual_array.hh>
Inherited by blender::fn::GVArrayForEmpty, blender::fn::GVArrayForGSpan, blender::fn::GVArrayForGVVectorArrayIndex, blender::fn::GVArrayForSingleValueRef, and blender::fn::GVArrayForVArray< T >.
Public Member Functions | |
| GVArray (const CPPType &type, const int64_t size) | |
| virtual | ~GVArray ()=default |
| const CPPType & | type () const |
| int64_t | size () const |
| bool | is_empty () const |
| void | get (const int64_t index, void *r_value) const |
| void | get_to_uninitialized (const int64_t index, void *r_value) const |
| bool | is_span () const |
| GSpan | get_span () const |
| bool | is_single () const |
| void | get_single (void *r_value) const |
| void | get_single_to_uninitialized (void *r_value) const |
| void | materialize_to_uninitialized (const IndexMask mask, void *dst) const |
Protected Member Functions | |
| virtual void | get_impl (const int64_t index, void *r_value) const |
| virtual void | get_to_uninitialized_impl (const int64_t index, void *r_value) const =0 |
| virtual bool | is_span_impl () const |
| virtual GSpan | get_span_impl () const |
| virtual bool | is_single_impl () const |
| virtual void | get_single_impl (void *UNUSED(r_value)) const |
Protected Attributes | |
| const CPPType * | type_ |
| int64_t | size_ |
Definition at line 33 of file FN_generic_virtual_array.hh.
Definition at line 39 of file FN_generic_virtual_array.hh.
References BLI_assert, and size_.
|
virtualdefault |
|
inline |
Definition at line 63 of file FN_generic_virtual_array.hh.
References BLI_assert, get_impl(), and size_.
Referenced by blender::fn::GVectorArray::extend(), blender::fn::VArrayForGVArray< T >::get_impl(), get_single(), and blender::fn::GVVectorArrayForSingleGVArray::get_vector_element_impl().
|
protectedvirtual |
Reimplemented in blender::fn::GVArrayForGVVectorArrayIndex, blender::fn::GVArrayForVArray< T >, blender::fn::GVArrayForSingleValueRef, and blender::fn::GVArrayForGSpan.
Definition at line 29 of file generic_virtual_array.cc.
References blender::fn::CPPType::destruct(), get_to_uninitialized_impl(), and type_.
Referenced by get().
|
inline |
Definition at line 110 of file FN_generic_virtual_array.hh.
References BLI_assert, get(), get_single_impl(), and is_single().
Referenced by blender::fn::VArrayForGVArray< T >::get_single_impl(), and get_single_to_uninitialized().
|
protectedvirtual |
Definition at line 51 of file generic_virtual_array.cc.
References BLI_assert.
Referenced by get_single().
|
inline |
Definition at line 120 of file FN_generic_virtual_array.hh.
References blender::fn::CPPType::construct_default(), get_single(), and type_.
Referenced by blender::fn::MFNetworkEvaluationStorage::get_mutable_single__single().
|
inline |
Definition at line 89 of file FN_generic_virtual_array.hh.
References BLI_assert, get_span_impl(), is_span(), and type_.
Referenced by blender::fn::VArrayForGVArray< T >::get_span_impl().
|
protectedvirtual |
Reimplemented in blender::fn::GVArrayForVArray< T >, blender::fn::GVArrayForSingleValueRef, and blender::fn::GVArrayForGSpan.
Definition at line 40 of file generic_virtual_array.cc.
References BLI_assert, and type_.
Referenced by get_span().
|
inline |
Definition at line 71 of file FN_generic_virtual_array.hh.
References BLI_assert, get_to_uninitialized_impl(), and size_.
Referenced by materialize_to_uninitialized().
|
protectedpure virtual |
Implemented in blender::fn::GVArrayForGVVectorArrayIndex, blender::fn::GVArrayForVArray< T >, blender::fn::GVArrayForSingleValueRef, and blender::fn::GVArrayForGSpan.
Referenced by get_impl(), and get_to_uninitialized().
|
inline |
Definition at line 56 of file FN_generic_virtual_array.hh.
References size_.
|
inline |
Definition at line 99 of file FN_generic_virtual_array.hh.
References is_single_impl().
Referenced by get_single(), blender::fn::MFNetworkEvaluationStorage::get_single_input__single(), and blender::fn::VArrayForGVArray< T >::is_single_impl().
|
protectedvirtual |
Reimplemented in blender::fn::GVArrayForVArray< T >, and blender::fn::GVArrayForSingleValueRef.
Definition at line 46 of file generic_virtual_array.cc.
Referenced by is_single().
|
inline |
Definition at line 79 of file FN_generic_virtual_array.hh.
References is_span_impl(), and size_.
Referenced by get_span(), and blender::fn::VArrayForGVArray< T >::is_span_impl().
|
protectedvirtual |
Reimplemented in blender::fn::GVArrayForVArray< T >, blender::fn::GVArrayForSingleValueRef, and blender::fn::GVArrayForGSpan.
Definition at line 35 of file generic_virtual_array.cc.
Referenced by is_span().
| void blender::fn::GVArray::materialize_to_uninitialized | ( | const IndexMask | mask, |
| void * | dst | ||
| ) | const |
Definition at line 21 of file generic_virtual_array.cc.
References get_to_uninitialized(), mask(), POINTER_OFFSET, blender::fn::CPPType::size(), and type_.
Referenced by blender::fn::MFNetworkEvaluationStorage::get_mutable_single__full().
|
inline |
Definition at line 51 of file FN_generic_virtual_array.hh.
References size_.
Referenced by blender::fn::MFParamsBuilder::add_readonly_single_input(), blender::fn::MFNetworkEvaluationStorage::add_single_input_from_caller(), blender::fn::GVectorArray::extend(), and blender::fn::GVVectorArrayForSingleGVArray::get_vector_size_impl().
|
inline |
Definition at line 46 of file FN_generic_virtual_array.hh.
References type_.
Referenced by blender::fn::MFParamsBuilder::add_readonly_single_input(), blender::fn::GVectorArray::extend(), and blender::fn::VArrayForGVArray< T >::VArrayForGVArray().
|
protected |
Definition at line 36 of file FN_generic_virtual_array.hh.
Referenced by get(), blender::fn::GVArrayForGSpan::get_span_impl(), get_to_uninitialized(), GVArray(), is_empty(), is_span(), blender::fn::GVArrayForSingleValueRef::is_span_impl(), and size().
|
protected |
Definition at line 35 of file FN_generic_virtual_array.hh.
Referenced by get_impl(), blender::fn::GVArrayForGSpan::get_impl(), blender::fn::GVArrayForSingleValueRef::get_impl(), blender::fn::GVArrayForSingleValueRef::get_single_impl(), get_single_to_uninitialized(), get_span(), get_span_impl(), blender::fn::GVArrayForGSpan::get_span_impl(), blender::fn::GVArrayForSingleValueRef::get_span_impl(), blender::fn::GVArrayForGSpan::get_to_uninitialized_impl(), blender::fn::GVArrayForSingleValueRef::get_to_uninitialized_impl(), blender::fn::GVArrayForGVVectorArrayIndex::get_to_uninitialized_impl(), materialize_to_uninitialized(), and type().