|
Blender V4.3
|
#include <BLI_generic_span.hh>
Inherited by blender::GVArraySpan.
Public Member Functions | |
| GSpan ()=default | |
| GSpan (const CPPType *type, const void *buffer, int64_t size) | |
| GSpan (const CPPType &type, const void *buffer, int64_t size) | |
| GSpan (const CPPType &type) | |
| GSpan (const CPPType *type) | |
| template<typename T > | |
| GSpan (Span< T > array) | |
| const CPPType & | type () const |
| const CPPType * | type_ptr () const |
| bool | is_empty () const |
| int64_t | size () const |
| int64_t | size_in_bytes () const |
| const void * | data () const |
| const void * | operator[] (int64_t index) const |
| template<typename T > | |
| Span< T > | typed () const |
| GSpan | slice (const int64_t start, int64_t size) const |
| GSpan | slice (const IndexRange range) const |
| GSpan | drop_front (const int64_t n) const |
| GSpan | drop_back (const int64_t n) const |
| GSpan | take_front (const int64_t n) const |
| GSpan | take_back (const int64_t n) const |
Protected Attributes | |
| const CPPType * | type_ = nullptr |
| const void * | data_ = nullptr |
| int64_t | size_ = 0 |
A generic span. It behaves just like a blender::Span<T>, but the type is only known at run-time.
Definition at line 19 of file BLI_generic_span.hh.
|
default |
Referenced by drop_back(), drop_front(), slice(), take_back(), and take_front().
Definition at line 28 of file BLI_generic_span.hh.
References BLI_assert.
Definition at line 37 of file BLI_generic_span.hh.
|
inline |
Definition at line 39 of file BLI_generic_span.hh.
|
inline |
Definition at line 41 of file BLI_generic_span.hh.
Definition at line 44 of file BLI_generic_span.hh.
|
inline |
Definition at line 75 of file BLI_generic_span.hh.
References data_.
Referenced by blender::nodes::node_geo_instance_on_points_cc::add_instances_from_component(), blender::ed::greasepencil::attributes_varrays_span_data_equal(), blender::bke::build_mesh_positions(), blender::ed::sculpt_paint::color::color_vert_get(), blender::nodes::node_geo_instances_to_points_cc::convert_instances_to_points(), blender::bke::CustomDataAttributeProvider::foreach_attribute(), blender::nodes::node_geo_mesh_to_points_cc::geometry_set_mesh_to_points(), blender::nodes::node_geo_points_to_vertices_cc::geometry_set_points_to_vertices(), blender::nodes::node_geo_blur_attribute_cc::BlurAttributeFieldInput::get_varray_for_context(), blender::GVArray::GVArray(), blender::bke::CustomDataAttributeProvider::try_get_for_read(), and blender::bke::try_sharing_point_data().
Definition at line 113 of file BLI_generic_span.hh.
References BLI_assert, data_, GSpan(), size_, and type_.
Definition at line 106 of file BLI_generic_span.hh.
References BLI_assert, data_, GSpan(), POINTER_OFFSET, blender::CPPType::size(), size_, and type_.
|
inline |
Definition at line 60 of file BLI_generic_span.hh.
References size_.
Referenced by blender::tests::TEST(), blender::tests::TEST(), and blender::tests::TEST().
|
inline |
Definition at line 80 of file BLI_generic_span.hh.
References BLI_assert, data_, POINTER_OFFSET, blender::CPPType::size(), size_, and type_.
|
inline |
Definition at line 65 of file BLI_generic_span.hh.
References size_.
Referenced by blender::fn::multi_function::ParamsBuilder::add_readonly_single_input(), blender::bke::DataTypeConversions::convert_to_initialized_n(), blender::GVVectorArray_For_SingleGSpan::get_vector_size_impl(), blender::GVArray::GVArray(), blender::bke::CurvesGeometry::interpolate_to_evaluated(), blender::tests::TEST(), blender::tests::TEST(), blender::geometry::threaded_copy(), and blender::nodes::node_geo_dual_mesh_cc::transfer_attributes().
|
inline |
Definition at line 70 of file BLI_generic_span.hh.
References blender::CPPType::size(), size_, and type_.
|
inline |
Definition at line 101 of file BLI_generic_span.hh.
References slice(), and blender::IndexRange::start().
Definition at line 93 of file BLI_generic_span.hh.
References BLI_assert, data_, GSpan(), POINTER_OFFSET, blender::CPPType::size(), size_, and type_.
Referenced by blender::array_utils::copy_group_to_group(), blender::geometry::duplicate_fillet_point_data(), blender::bke::CurvesGeometry::interpolate_to_evaluated(), slice(), blender::GVArray::slice(), and blender::geometry::subdivide_attribute_catmull_rom().
Definition at line 127 of file BLI_generic_span.hh.
References BLI_assert, data_, GSpan(), POINTER_OFFSET, blender::CPPType::size(), size_, and type_.
Definition at line 120 of file BLI_generic_span.hh.
References BLI_assert, data_, GSpan(), size_, and type_.
|
inline |
Definition at line 49 of file BLI_generic_span.hh.
References BLI_assert, and type_.
Referenced by blender::fn::multi_function::ParamsBuilder::add_readonly_single_input(), blender::ed::object::apply_eval_grease_pencil_data(), blender::geometry::bezier_generic_to_nurbs(), blender::ed::sculpt_paint::color::color_vert_get(), blender::bke::DataTypeConversions::convert_to_initialized_n(), blender::bke::copy_profile_point_domain_attribute_to_mesh(), blender::nodes::node_geo_extrude_mesh_cc::copy_with_mixing(), blender::nodes::node_geo_extrude_mesh_cc::copy_with_mixing(), blender::geometry::curve_simplify(), blender::bke::attribute_math::gather(), blender::bke::gather_attributes(), blender::ed::sculpt_paint::color::gather_colors(), blender::ed::sculpt_paint::color::gather_colors_vert(), blender::bke::attribute_math::gather_group_to_group(), blender::bke::attribute_math::gather_to_groups(), blender::geometry::gaussian_blur_1D(), blender::GVArray::GVArray(), blender::bke::curves::bezier::interpolate_to_evaluated(), blender::bke::curves::catmull_rom::interpolate_to_evaluated(), blender::bke::curves::catmull_rom::interpolate_to_evaluated(), blender::bke::curves::nurbs::interpolate_to_evaluated(), blender::geometry::nurbs_to_bezier_assign(), blender::geometry::prepare_attribute_fallbacks(), blender::geometry::sample_curve_attribute(), blender::geometry::simplify_curve_attribute(), and blender::geometry::threaded_copy().
|
inline |
Definition at line 55 of file BLI_generic_span.hh.
References type_.
Definition at line 86 of file BLI_generic_span.hh.
References BLI_assert, data_, blender::CPPType::is(), size_, and type_.
Referenced by blender::bke::build_mesh_positions(), blender::nodes::node_geo_interpolate_curves_cc::interpolate_curve_attributes(), blender::geometry::preprocess_curves(), blender::geometry::preprocess_meshes(), blender::geometry::preprocess_pointclouds(), blender::geometry::sample_curve_attribute(), blender::tests::TEST(), blender::tests::TEST(), blender::tests::TEST(), blender::tests::TEST(), and blender::nodes::node_geo_dual_mesh_cc::transfer_attributes().
|
protected |
Definition at line 22 of file BLI_generic_span.hh.
Referenced by data(), drop_back(), drop_front(), blender::GVArraySpan::GVArraySpan(), blender::GVArraySpan::GVArraySpan(), operator[](), slice(), take_back(), take_front(), and typed().
|
protected |
Definition at line 23 of file BLI_generic_span.hh.
Referenced by drop_back(), drop_front(), blender::GVArraySpan::GVArraySpan(), blender::GVArraySpan::GVArraySpan(), is_empty(), operator[](), size(), size_in_bytes(), slice(), take_back(), take_front(), typed(), and blender::GVArraySpan::~GVArraySpan().
|
protected |
Definition at line 21 of file BLI_generic_span.hh.
Referenced by drop_back(), drop_front(), blender::GVArraySpan::GVArraySpan(), operator[](), size_in_bytes(), slice(), take_back(), take_front(), type(), type_ptr(), typed(), and blender::GVArraySpan::~GVArraySpan().