|
Blender V5.0
|
#include <BLI_generic_virtual_array.hh>
Inherits blender::GVArrayCommon.
Public Member Functions | |
| GVArray ()=default | |
| const GVArrayImpl * | get_implementation () const |
| Public Member Functions inherited from blender::GVArrayCommon | |
| bool | may_have_ownership () const |
| IndexRange | index_range () const |
| void | materialize (void *dst) const |
| void | materialize (const IndexMask &mask, void *dst) const |
| void | materialize_to_uninitialized (void *dst) const |
| void | materialize_to_uninitialized (const IndexMask &mask, void *dst) const |
| void | materialize_compressed (const IndexMask &mask, void *dst) const |
| void | materialize_compressed_to_uninitialized (const IndexMask &mask, void *dst) const |
| bool | is_span () const |
| GSpan | get_internal_span () const |
| bool | is_single () const |
| void | get_internal_single (void *r_value) const |
| void | get_internal_single_to_uninitialized (void *r_value) const |
| const CPPType & | type () const |
| operator bool () const | |
| int64_t | size () const |
| bool | is_empty () const |
| template<typename T> | |
| bool | try_assign_VArray (VArray< T > &varray) const |
| CommonVArrayInfo | common_info () const |
| void | get (int64_t index, void *r_value) const |
| template<typename T> | |
| T | get (int64_t index) const |
| void | get_to_uninitialized (int64_t index, void *r_value) const |
#GVArray | |
| GVArray (const GVArray &other) | |
| GVArray (GVArray &&other) noexcept | |
| GVArray (const GVArrayImpl *impl) | |
| GVArray (std::shared_ptr< const GVArrayImpl > impl) | |
| GVArray (varray_tag::single, const CPPType &type, int64_t size, const void *value) | |
| GVArray | slice (IndexRange slice) const |
| GVArray & | operator= (const GVArray &other) |
| GVArray & | operator= (GVArray &&other) noexcept |
| static GVArray | from_single (const CPPType &type, int64_t size, const void *value) |
| static GVArray | from_single_ref (const CPPType &type, int64_t size, const void *value) |
| static GVArray | from_single_default (const CPPType &type, int64_t size) |
| static GVArray | from_span (GSpan span) |
| static GVArray | from_garray (GArray<> array) |
| static GVArray | from_empty (const CPPType &type) |
Inline methods for #GVArray. | |
| GVArray (varray_tag::span, GSpan span) | |
| GVArray (varray_tag::single_ref, const CPPType &type, int64_t size, const void *value) | |
| template<typename T> | |
| GVArray (const VArray< T > &varray) | |
| template<typename T> | |
| GVArray (VArray< T > &&varray) | |
| template<typename T> | |
| VArray< T > | typed () const |
| template<typename ImplT, typename... Args> | |
| static GVArray | from (Args &&...args) |
Additional Inherited Members | |
| Protected Types inherited from blender::GVArrayCommon | |
| using | Storage = Any<detail::GVArrayAnyExtraInfo, 40, 8> |
| Protected Member Functions inherited from blender::GVArrayCommon | |
| 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) |
| Protected Attributes inherited from blender::GVArrayCommon | |
| const GVArrayImpl * | impl_ = nullptr |
| Storage | storage_ |
Generic version of VArray.
Definition at line 173 of file BLI_generic_virtual_array.hh.
|
default |
Referenced by from(), from_empty(), from_garray(), from_single(), from_single_default(), from_single_ref(), from_span(), GVArray(), GVArray(), GVArray(), operator=(), operator=(), and slice().
|
default |
References GVArray().
|
defaultnoexcept |
References GVArray(), blender::GVArrayCommon::size(), slice(), and blender::GVArrayCommon::type().
| blender::GVArray::GVArray | ( | const GVArrayImpl * | impl | ) |
Definition at line 680 of file generic_virtual_array.cc.
References blender::GVArrayCommon::GVArrayCommon().
| blender::GVArray::GVArray | ( | std::shared_ptr< const GVArrayImpl > | impl | ) |
Definition at line 682 of file generic_virtual_array.cc.
References blender::GVArrayCommon::GVArrayCommon().
|
inline |
Definition at line 793 of file BLI_generic_virtual_array.hh.
References blender::GSpan::data(), blender::GVArrayCommon::emplace(), blender::GSpan::size(), and blender::GSpan::type().
|
inline |
Definition at line 801 of file BLI_generic_virtual_array.hh.
References blender::GVArrayCommon::emplace(), blender::GVArrayCommon::size(), and blender::GVArrayCommon::type().
| blender::GVArray::GVArray | ( | varray_tag::single | , |
| const CPPType & | type, | ||
| int64_t | size, | ||
| const void * | value ) |
Definition at line 684 of file generic_virtual_array.cc.
References blender::GVArrayCommon::emplace(), blender::GVArrayCommon::size(), and blender::GVArrayCommon::type().
Definition at line 841 of file BLI_generic_virtual_array.hh.
Definition at line 845 of file BLI_generic_virtual_array.hh.
References blender::CommonVArrayInfo::data, from(), from_single(), from_span(), blender::CPPType::get(), blender::CommonVArrayInfo::may_have_ownership, blender::CommonVArrayInfo::Single, blender::CommonVArrayInfo::Span, and blender::CommonVArrayInfo::type.
|
inlinestatic |
Definition at line 833 of file BLI_generic_virtual_array.hh.
References blender::GVArrayCommon::emplace(), and GVArray().
Referenced by from_garray(), GVArray(), slice(), blender::bke::DataTypeConversions::try_convert(), and typed().
Definition at line 730 of file generic_virtual_array.cc.
References from_span(), GVArray(), and blender::GVArrayCommon::type().
Referenced by blender::fn::evaluate_fields().
Definition at line 725 of file generic_virtual_array.cc.
References from(), and GVArray().
Referenced by blender::ed::greasepencil::image_render::attribute_interpolate(), blender::bke::EvaluateAtIndexInput::get_varray_for_context(), blender::bke::EvaluateOnDomainInput::get_varray_for_context(), and blender::nodes::node_geo_blur_attribute_cc::BlurAttributeFieldInput::get_varray_for_context().
|
static |
Definition at line 694 of file generic_virtual_array.cc.
References GVArray(), blender::GVArrayCommon::size(), and blender::GVArrayCommon::type().
Referenced by blender::bke::CurvesGeometry::adapt_domain(), blender::bke::adapt_mesh_attribute_domain(), blender::geometry::add_instance_attributes_to_single_geometry(), blender::bke::get_varray_attribute(), blender::bke::AttributeFieldInput::get_varray_for_context(), blender::bke::EvaluateOnDomainInput::get_varray_for_context(), blender::nodes::node_geo_tool_selection_cc::SculptSelectionFieldInput::get_varray_for_context(), GVArray(), blender::bke::AttributeAccessor::lookup_or_default(), and slice().
Definition at line 704 of file generic_virtual_array.cc.
References from_single_ref(), GVArray(), blender::GVArrayCommon::size(), and blender::GVArrayCommon::type().
Referenced by blender::fn::get_field_context_inputs(), and blender::bke::EvaluateOnDomainInput::get_varray_for_context().
|
static |
Definition at line 699 of file generic_virtual_array.cc.
References GVArray(), blender::GVArrayCommon::size(), and blender::GVArrayCommon::type().
Referenced by blender::bke::attribute_to_reader(), blender::fn::evaluate_fields(), from_single_default(), blender::bke::AttributeAccessor::lookup_or_default(), and blender::nodes::List::varray().
Definition at line 709 of file generic_virtual_array.cc.
References GVArray().
Referenced by blender::ed::greasepencil::image_render::attribute_interpolate(), blender::bke::attribute_to_reader(), blender::nodes::node_geo_list_get_item_cc::SampleIndexFunction::call(), blender::bke::DataTypeConversions::convert_to_initialized_n(), blender::fn::evaluate_fields(), blender::GVectorArray::extend(), blender::bke::CustomDataAttributeProvider::foreach_attribute(), from_empty(), blender::array_utils::gather(), blender::bke::get_varray_attribute(), GVArray(), blender::geometry::interpolate_curves_with_samples(), blender::ed::sculpt_paint::select_grow::select_grow_modal(), slice(), blender::bke::BuiltinCustomDataLayerProvider::try_get_for_read(), blender::bke::CustomDataAttributeProvider::try_get_for_read(), and blender::nodes::List::varray().
|
inline |
Definition at line 207 of file BLI_generic_virtual_array.hh.
References blender::GVArrayCommon::impl_.
Definition at line 749 of file generic_virtual_array.cc.
References blender::GVArrayCommon::copy_from(), and GVArray().
Definition at line 755 of file generic_virtual_array.cc.
References GVArray(), and blender::GVArrayCommon::move_from().
| GVArray blender::GVArray::slice | ( | IndexRange | slice | ) | const |
Definition at line 735 of file generic_virtual_array.cc.
References blender::GVArrayCommon::common_info(), blender::CommonVArrayInfo::data, from(), from_single(), from_span(), GVArray(), blender::CommonVArrayInfo::may_have_ownership, blender::CommonVArrayInfo::Single, blender::IndexRange::size(), blender::GSpan::slice(), slice(), blender::CommonVArrayInfo::Span, blender::CommonVArrayInfo::type, and blender::GVArrayCommon::type().
Referenced by blender::fn::multi_function::add_sliced_parameters(), GVArray(), and slice().
Definition at line 867 of file BLI_generic_virtual_array.hh.
References BLI_assert, blender::GVArrayCommon::common_info(), blender::CommonVArrayInfo::data, from(), blender::VArray< T >::from_single(), blender::VArray< T >::from_span(), blender::GVArrayCommon::impl_, blender::CommonVArrayInfo::may_have_ownership, blender::CommonVArrayInfo::Single, blender::CommonVArrayInfo::Span, T, blender::GVArrayCommon::try_assign_VArray(), and blender::CommonVArrayInfo::type.
Referenced by blender::bke::AttributeAccessor::adapt_domain(), blender::bke::CurvesGeometry::adapt_domain(), blender::ed::spreadsheet::apply_row_filter(), attr_create_generic(), blender::io::usd::copy_blender_attribute_to_primvar(), blender::nodes::node_geo_duplicate_elements_cc::copy_stable_id_curves(), blender::nodes::node_geo_duplicate_elements_cc::copy_stable_id_edges(), blender::nodes::node_geo_duplicate_elements_cc::copy_stable_id_faces(), blender::nodes::node_geo_duplicate_elements_cc::copy_stable_id_point(), blender::geometry::create_id_index_map(), blender::ed::greasepencil::image_render::draw_grease_pencil_strokes(), blender::fn::multi_function::build::detail::execute_element_fn_as_multi_function(), blender::fn::FieldEvaluator::get_evaluated(), blender::fn::FieldEvaluator::get_evaluated_as_mask(), blender::bke::get_varray_attribute(), blender::geometry::merge_layers(), blender::geometry::point_merge_by_distance(), blender::fn::multi_function::Params::readonly_single_input(), blender::bke::mesh_surface_sample::sample_corner_attribute(), blender::bke::mesh_surface_sample::sample_face_attribute(), blender::bke::mesh_surface_sample::sample_point_attribute(), blender::ed::curves::set_attribute_invoke(), blender::ed::pointcloud::set_attribute_invoke(), and blender::nodes::List::varray().