|
Blender V4.5
|
#include <BLI_virtual_array.hh>
Inherits blender::VArrayCommon< T >.
Static Public Member Functions | |
| template<typename ImplT, typename... Args> | |
| static VMutableArray | For (Args &&...args) |
| static VMutableArray | ForSpan (MutableSpan< T > values) |
| template<typename StructT, T(*)(const StructT &) GetFunc, void(*)(StructT &, T) SetFunc> | |
| static VMutableArray | ForDerivedSpan (MutableSpan< StructT > values) |
| template<typename ContainerT> | |
| static VMutableArray | ForContainer (ContainerT container) |
Additional Inherited Members | |
| Protected Types inherited from blender::VArrayCommon< T > | |
| using | Storage = Any<blender::detail::VArrayAnyExtraInfo<T>, 24, 8> |
| Protected Member Functions inherited from blender::VArrayCommon< T > | |
| VArrayCommon ()=default | |
| VArrayCommon (const VArrayCommon &other) | |
| VArrayCommon (VArrayCommon &&other) noexcept | |
| VArrayCommon (const VArrayImpl< T > *impl) | |
| VArrayCommon (std::shared_ptr< const VArrayImpl< T > > impl) | |
| template<typename ImplT, typename... Args> | |
| void | emplace (Args &&...args) |
| void | copy_from (const VArrayCommon &other) |
| void | move_from (VArrayCommon &&other) noexcept |
| const VArrayImpl< T > * | impl_from_storage () const |
| Protected Attributes inherited from blender::VArrayCommon< T > | |
| const VArrayImpl< T > * | impl_ = nullptr |
| Storage | storage_ |
Similar to VArray but references a virtual array that can be modified.
Definition at line 896 of file BLI_virtual_array.hh.
|
default |
Referenced by For(), ForContainer(), ForDerivedSpan(), ForSpan(), operator=(), operator=(), VMutableArray(), and VMutableArray().
|
default |
References VMutableArray().
|
defaultnoexcept |
References VMutableArray().
|
inline |
Definition at line 902 of file BLI_virtual_array.hh.
References T, and blender::VArrayCommon< T >::VArrayCommon().
|
inline |
Definition at line 904 of file BLI_virtual_array.hh.
References T, and blender::VArrayCommon< T >::VArrayCommon().
|
inlinestatic |
Construct a new virtual array for a custom VMutableArrayImpl.
Definition at line 912 of file BLI_virtual_array.hh.
References blender::VArrayCommon< T >::emplace(), and VMutableArray().
Referenced by ForContainer(), ForDerivedSpan(), ForSpan(), and blender::bke::varray_for_mutable_deform_verts().
|
inlinestatic |
Construct a new virtual array for an existing container. Every container that lays out the elements in a plain array works. This takes ownership of the passed in container. If that is not desired, use ForSpan instead.
Definition at line 943 of file BLI_virtual_array.hh.
References For(), and VMutableArray().
Referenced by blender::tests::TEST().
|
inlinestatic |
Construct a new virtual array for an existing span with a mapping function. This does not take ownership of the span.
Definition at line 933 of file BLI_virtual_array.hh.
References For(), and VMutableArray().
Referenced by blender::bke::instance_position_varray_for_write(), and blender::tests::TEST().
|
inlinestatic |
Construct a new virtual array for an existing span. This does not take ownership of the span.
Definition at line 923 of file BLI_virtual_array.hh.
References For(), and VMutableArray().
Referenced by blender::fn::FieldEvaluator::add_with_destination(), blender::tests::TEST(), and blender::GVMutableArray::typed().
|
inline |
Get access to the internal span. This invokes undefined behavior if the is_span returned false.
Definition at line 980 of file BLI_virtual_array.hh.
References BLI_assert, blender::CommonVArrayInfo::data, blender::VArrayCommon< T >::is_span(), T, and this.
Referenced by blender::tests::TEST().
|
inlinenoexcept |
Convert to a VArray by moving.
Definition at line 957 of file BLI_virtual_array.hh.
|
inline |
Convert to a VArray by copying.
Definition at line 949 of file BLI_virtual_array.hh.
|
inline |
Definition at line 964 of file BLI_virtual_array.hh.
References blender::VArrayCommon< T >::copy_from(), and VMutableArray().
|
inlinenoexcept |
Definition at line 970 of file BLI_virtual_array.hh.
References blender::VArrayCommon< T >::move_from(), and VMutableArray().
|
inline |
Set the value at the given index.
Definition at line 990 of file BLI_virtual_array.hh.
References BLI_assert, blender::VArrayCommon< T >::size(), and T.
Referenced by blender::ed::greasepencil::add_armature_automatic_weights(), blender::ed::greasepencil::add_armature_envelope_weights(), blender::ed::sculpt_paint::greasepencil::WeightPaintOperation::apply_weight_to_point(), blender::ed::greasepencil::grease_pencil_weight_invert_exec(), blender::tests::TEST(), and blender::tests::TEST().
|
inline |
Copy the values from the source span to all elements in the virtual array.
Definition at line 1000 of file BLI_virtual_array.hh.
References BLI_assert, blender::Span< T >::size(), and this.
|
inline |
See #GVMutableArrayImpl::try_assign_GVMutableArray.
Definition at line 1007 of file BLI_virtual_array.hh.
Referenced by blender::GVMutableArray::GVMutableArray().