Blender
V3.3
|
#include <BLI_generic_virtual_array.hh>
#GVMutableArray | |
GVMutableArray (const GVMutableArray &other) | |
GVMutableArray (GVMutableArray &&other) noexcept | |
GVMutableArray (GVMutableArrayImpl *impl) | |
GVMutableArray (std::shared_ptr< GVMutableArrayImpl > impl) | |
operator GVArray () const & | |
operator GVArray () &&noexcept | |
GVMutableArray & | operator= (const GVMutableArray &other) |
GVMutableArray & | operator= (GVMutableArray &&other) noexcept |
GMutableSpan | get_internal_span () const |
void | set_all (const void *src) |
GVMutableArrayImpl * | get_implementation () const |
static GVMutableArray | ForSpan (GMutableSpan span) |
Inline methods for #GVMutableArray. | |
template<typename T > | |
GVMutableArray (const VMutableArray< T > &varray) | |
template<typename T > | |
VMutableArray< T > | typed () const |
template<typename ImplT , typename... Args> | |
static GVMutableArray | For (Args &&...args) |
Inline methods for #GVMutableArrayImpl. | |
template<typename T > | |
bool | try_assign_VMutableArray (VMutableArray< T > &varray) const |
void | set_by_copy (int64_t index, const void *value) |
void | set_by_move (int64_t index, void *value) |
void | set_by_relocate (int64_t index, void *value) |
Additional Inherited Members | |
![]() | |
using | Storage = Any< detail::GVArrayAnyExtraInfo, 40, 8 > |
![]() | |
GVArrayCommon ()=default | |
GVArrayCommon (const GVArrayCommon &other) | |
GVArrayCommon (GVArrayCommon &&other) noexcept | |
GVArrayCommon (const GVArrayImpl *impl) | |
GVArrayCommon (std::shared_ptr< const GVArrayImpl > impl) | |
~GVArrayCommon () | |
void | copy_from (const GVArrayCommon &other) |
void | move_from (GVArrayCommon &&other) noexcept |
const GVArrayImpl * | impl_from_storage () const |
template<typename ImplT , typename... Args> | |
void | emplace (Args &&...args) |
![]() | |
const GVArrayImpl * | impl_ = nullptr |
Storage | storage_ |
Generic version of #VMutableArray.
Definition at line 216 of file BLI_generic_virtual_array.hh.
|
default |
|
default |
|
defaultnoexcept |
blender::GVMutableArray::GVMutableArray | ( | GVMutableArrayImpl * | impl | ) |
Definition at line 750 of file generic_virtual_array.cc.
blender::GVMutableArray::GVMutableArray | ( | std::shared_ptr< GVMutableArrayImpl > | impl | ) |
Definition at line 754 of file generic_virtual_array.cc.
|
inline |
Definition at line 908 of file BLI_generic_virtual_array.hh.
References blender::VArrayCommon< T >::common_info(), blender::CommonVArrayInfo::data, ForSpan(), blender::CommonVArrayInfo::may_have_ownership, blender::VArrayCommon< T >::size(), blender::CommonVArrayInfo::Span, blender::VMutableArray< T >::try_assign_GVMutableArray(), and blender::CommonVArrayInfo::type.
Definition at line 92 of file generic_virtual_array.cc.
References blender::GVArrayCommon::common_info(), blender::CommonVArrayInfo::data, blender::CPPType::fill_assign_n(), set_by_copy(), blender::GVArrayCommon::size(), blender::CommonVArrayInfo::Span, blender::GVArrayCommon::type(), and blender::CommonVArrayInfo::type.
|
inlinestatic |
Definition at line 900 of file BLI_generic_virtual_array.hh.
References blender::GVArrayCommon::emplace().
|
static |
Definition at line 759 of file generic_virtual_array.cc.
Referenced by blender::fn::FieldEvaluator::add_with_destination(), GVMutableArray(), blender::bke::BuiltinPointAttributeProvider< T >::try_get_for_write(), blender::bke::CustomDataAttributeProvider::try_get_for_write(), and blender::bke::DynamicPointAttributeProvider::try_get_for_write().
GVMutableArrayImpl * blender::GVMutableArray::get_implementation | ( | ) | const |
Definition at line 790 of file generic_virtual_array.cc.
GMutableSpan blender::GVMutableArray::get_internal_span | ( | ) | const |
Definition at line 800 of file generic_virtual_array.cc.
References BLI_assert, blender::GVArrayImpl::common_info(), blender::CommonVArrayInfo::data, blender::GVArrayCommon::impl_, blender::GVArrayCommon::is_span(), blender::CPPType::size(), and blender::GVArrayCommon::type().
Referenced by blender::fn::evaluate_fields().
|
noexcept |
Definition at line 771 of file generic_virtual_array.cc.
References blender::GVArrayCommon::move_from().
blender::GVMutableArray::operator GVArray | ( | ) | const & |
Definition at line 764 of file generic_virtual_array.cc.
References blender::GVArrayCommon::copy_from().
GVMutableArray & blender::GVMutableArray::operator= | ( | const GVMutableArray & | other | ) |
Definition at line 778 of file generic_virtual_array.cc.
References blender::GVArrayCommon::copy_from().
|
noexcept |
Definition at line 784 of file generic_virtual_array.cc.
Copy the values from the source buffer to all elements in the virtual array.
Definition at line 795 of file generic_virtual_array.cc.
References blender::GVMutableArrayImpl::set_all(), and src.
Referenced by copy_attributes_between_components(), blender::bke::create_point_attribute(), blender::GMutableVArraySpan::save(), and vertex_paint_from_weight().
Definition at line 682 of file BLI_generic_virtual_array.hh.
References BLI_assert, blender::GVMutableArrayImpl::set_by_copy(), and blender::GVArrayCommon::size().
Referenced by fill().
Definition at line 689 of file BLI_generic_virtual_array.hh.
References BLI_assert, blender::GVMutableArrayImpl::set_by_move(), and blender::GVArrayCommon::size().
Definition at line 696 of file BLI_generic_virtual_array.hh.
References BLI_assert, blender::GVMutableArrayImpl::set_by_relocate(), and blender::GVArrayCommon::size().
|
inline |
Definition at line 704 of file BLI_generic_virtual_array.hh.
References BLI_assert, blender::GVArrayCommon::impl_, blender::CPPType::is(), T, blender::GVMutableArrayImpl::try_assign_VMutableArray(), and blender::GVArrayImpl::type().
Referenced by typed().
|
inline |
Definition at line 925 of file BLI_generic_virtual_array.hh.
References BLI_assert, blender::GVArrayCommon::common_info(), blender::CommonVArrayInfo::data, blender::VMutableArray< T >::ForSpan(), blender::CommonVArrayInfo::may_have_ownership, blender::CommonVArrayInfo::Span, T, try_assign_VMutableArray(), blender::GVArrayCommon::type(), and blender::CommonVArrayInfo::type.
Referenced by blender::bke::GAttributeWriter::typed().