|
Blender V5.0
|
#include <BLI_virtual_array.hh>
Inherits blender::VMutableArrayImpl< T >.
Inherited by blender::VArrayImpl_For_Span_final< T >.
Public Member Functions | |
| VArrayImpl_For_Span (const MutableSpan< T > data) | |
| Public Member Functions inherited from blender::VMutableArrayImpl< T > | |
| virtual void | set_all (Span< T > src) |
| virtual bool | try_assign_GVMutableArray (GVMutableArray &) const |
| Public Member Functions inherited from blender::VArrayImpl< T > | |
| VArrayImpl (const int64_t size) | |
| virtual | ~VArrayImpl ()=default |
| int64_t | size () const |
| virtual bool | try_assign_GVArray (GVArray &) const |
Protected Member Functions | |
| VArrayImpl_For_Span (const int64_t size) | |
| T | get (const int64_t index) const final |
| void | set (const int64_t index, T value) final |
| CommonVArrayInfo | common_info () const override |
| void | materialize (const IndexMask &mask, T *dst, const bool dst_is_uninitialized) const override |
| void | materialize_compressed (const IndexMask &mask, T *dst, const bool dst_is_uninitialized) const override |
Protected Attributes | |
| T * | data_ = nullptr |
| Protected Attributes inherited from blender::VArrayImpl< T > | |
| int64_t | size_ |
A virtual array implementation that references that wraps a span. This implementation is used by mutable and immutable spans to avoid code duplication.
Definition at line 204 of file BLI_virtual_array.hh.
|
inline |
Definition at line 209 of file BLI_virtual_array.hh.
References data, data_, blender::VArrayImpl< T >::size(), and T.
Referenced by blender::VArrayImpl_For_Span_final< T >::VArrayImpl_For_Span_final().
|
inlineprotected |
Definition at line 215 of file BLI_virtual_array.hh.
References blender::VArrayImpl< T >::size(), and T.
|
inlineoverrideprotectedvirtual |
Reimplemented from blender::VArrayImpl< T >.
Definition at line 227 of file BLI_virtual_array.hh.
References data_, and blender::CommonVArrayInfo::Span.
|
inlinefinalprotectedvirtual |
Get the element at #index. This does not return a reference, because the value may be computed on the fly.
Implements blender::VArrayImpl< T >.
Definition at line 217 of file BLI_virtual_array.hh.
|
inlineoverrideprotectedvirtual |
Copy values from the virtual array into the provided span. The index of the value in the virtual array is the same as the index in the span.
Reimplemented from blender::VArrayImpl< T >.
Definition at line 232 of file BLI_virtual_array.hh.
|
inlineoverrideprotectedvirtual |
Copy values from the virtual array into the provided span. Contrary to materialize, the index in virtual array is not the same as the index in the output span. Instead, the span is filled without gaps.
Reimplemented from blender::VArrayImpl< T >.
Definition at line 247 of file BLI_virtual_array.hh.
|
inlinefinalprotectedvirtual |
Assign the provided #value to the #index.
Implements blender::VMutableArrayImpl< T >.
Definition at line 222 of file BLI_virtual_array.hh.
|
protected |
Definition at line 206 of file BLI_virtual_array.hh.
Referenced by common_info(), get(), materialize(), materialize_compressed(), set(), and VArrayImpl_For_Span().