diff options
author | Jacques Lucke <jacques@blender.org> | 2022-07-02 12:45:57 +0300 |
---|---|---|
committer | Jacques Lucke <jacques@blender.org> | 2022-07-02 12:45:57 +0300 |
commit | 5d9ade27de54b6910ed32f92d20d8f692959603c (patch) | |
tree | 1dd2c2002178291273f0809284fbc6660a14ca70 /source/blender/nodes | |
parent | 3c60d62dba1214378c3348563167385385f6a539 (diff) |
BLI: improve span access to virtual arrays
* Make the class names more consistent.
* Implement missing move-constructors and assignment-operators.
Diffstat (limited to 'source/blender/nodes')
7 files changed, 20 insertions, 20 deletions
diff --git a/source/blender/nodes/geometry/nodes/node_geo_curve_sample.cc b/source/blender/nodes/geometry/nodes/node_geo_curve_sample.cc index 9077b59254c..01cf1d8db52 100644 --- a/source/blender/nodes/geometry/nodes/node_geo_curve_sample.cc +++ b/source/blender/nodes/geometry/nodes/node_geo_curve_sample.cc @@ -135,7 +135,7 @@ class SampleCurveFunction : public fn::MultiFunction { } const VArray<float> &lengths_varray = params.readonly_single_input<float>(0, "Length"); - const VArray_Span lengths{lengths_varray}; + const VArraySpan lengths{lengths_varray}; #ifdef DEBUG for (const float length : lengths) { /* Lengths must be in range of the curve's total length. This is ensured in diff --git a/source/blender/nodes/geometry/nodes/node_geo_curve_spline_type.cc b/source/blender/nodes/geometry/nodes/node_geo_curve_spline_type.cc index f846a6be53b..5c836391abe 100644 --- a/source/blender/nodes/geometry/nodes/node_geo_curve_spline_type.cc +++ b/source/blender/nodes/geometry/nodes/node_geo_curve_spline_type.cc @@ -410,8 +410,8 @@ static void convert_to_bezier(const CurveComponent &src_component, }; auto bezier_to_bezier = [&](IndexMask selection) { - const VArray_Span<int8_t> src_types_l = src_curves.handle_types_left(); - const VArray_Span<int8_t> src_types_r = src_curves.handle_types_right(); + const VArraySpan<int8_t> src_types_l = src_curves.handle_types_left(); + const VArraySpan<int8_t> src_types_r = src_curves.handle_types_right(); const Span<float3> src_handles_l = src_curves.handle_positions_left(); const Span<float3> src_handles_r = src_curves.handle_positions_right(); @@ -569,7 +569,7 @@ static void convert_to_nurbs(const CurveComponent &src_component, src_cyclic.get_internal_single() ? NURBS_KNOT_MODE_NORMAL : NURBS_KNOT_MODE_ENDPOINT); } else { - VArray_Span<bool> cyclic{src_cyclic}; + VArraySpan<bool> cyclic{src_cyclic}; MutableSpan<int8_t> knots_modes = dst_curves.nurbs_knots_modes_for_write(); threading::parallel_for(selection.index_range(), 1024, [&](IndexRange range) { for (const int i : selection.slice(range)) { diff --git a/source/blender/nodes/geometry/nodes/node_geo_delete_geometry.cc b/source/blender/nodes/geometry/nodes/node_geo_delete_geometry.cc index 352411dd8f5..68489d1b9a6 100644 --- a/source/blender/nodes/geometry/nodes/node_geo_delete_geometry.cc +++ b/source/blender/nodes/geometry/nodes/node_geo_delete_geometry.cc @@ -69,7 +69,7 @@ static void copy_attributes(const Map<AttributeIDRef, AttributeKind> &attributes attribute_math::convert_to_static_type(data_type, [&](auto dummy) { using T = decltype(dummy); - VArray_Span<T> span{attribute.varray.typed<T>()}; + VArraySpan<T> span{attribute.varray.typed<T>()}; MutableSpan<T> out_span = result_attribute.as_span<T>(); out_span.copy_from(span); }); @@ -109,7 +109,7 @@ static void copy_attributes_based_on_mask(const Map<AttributeIDRef, AttributeKin attribute_math::convert_to_static_type(data_type, [&](auto dummy) { using T = decltype(dummy); - VArray_Span<T> span{attribute.varray.typed<T>()}; + VArraySpan<T> span{attribute.varray.typed<T>()}; MutableSpan<T> out_span = result_attribute.as_span<T>(); copy_data_based_on_mask(span, out_span, mask); }); @@ -145,7 +145,7 @@ static void copy_attributes_based_on_map(const Map<AttributeIDRef, AttributeKind attribute_math::convert_to_static_type(data_type, [&](auto dummy) { using T = decltype(dummy); - VArray_Span<T> span{attribute.varray.typed<T>()}; + VArraySpan<T> span{attribute.varray.typed<T>()}; MutableSpan<T> out_span = result_attribute.as_span<T>(); copy_data_based_on_map(span, out_span, index_map); }); @@ -1067,7 +1067,7 @@ static void separate_mesh_selection(GeometrySet &geometry_set, return; } - const VArray_Span<bool> selection_span{selection}; + const VArraySpan<bool> selection_span{selection}; do_mesh_separation(geometry_set, src_component, selection_span, selection_domain, mode); } diff --git a/source/blender/nodes/geometry/nodes/node_geo_dual_mesh.cc b/source/blender/nodes/geometry/nodes/node_geo_dual_mesh.cc index 52156b59c51..8a256a9b91b 100644 --- a/source/blender/nodes/geometry/nodes/node_geo_dual_mesh.cc +++ b/source/blender/nodes/geometry/nodes/node_geo_dual_mesh.cc @@ -175,7 +175,7 @@ static void transfer_attributes( attribute_math::convert_to_static_type(data_type, [&](auto dummy) { using T = decltype(dummy); - VArray_Span<T> span{src_attribute.varray.typed<T>()}; + VArraySpan<T> span{src_attribute.varray.typed<T>()}; MutableSpan<T> dst_span = dst_attribute.as_span<T>(); if (src_attribute.domain == ATTR_DOMAIN_FACE) { dst_span.take_front(span.size()).copy_from(span); diff --git a/source/blender/nodes/geometry/nodes/node_geo_duplicate_elements.cc b/source/blender/nodes/geometry/nodes/node_geo_duplicate_elements.cc index 108a9443d58..5fe300e0a08 100644 --- a/source/blender/nodes/geometry/nodes/node_geo_duplicate_elements.cc +++ b/source/blender/nodes/geometry/nodes/node_geo_duplicate_elements.cc @@ -178,7 +178,7 @@ static void copy_stable_id_point(const Span<int> offsets, return; } - VArray_Span<int> src{src_attribute.varray.typed<int>()}; + VArraySpan<int> src{src_attribute.varray.typed<int>()}; MutableSpan<int> dst = dst_attribute.as_span<int>(); threaded_id_offset_copy(offsets, src, dst); dst_attribute.save(); @@ -211,7 +211,7 @@ static void copy_attributes_without_id(GeometrySet &geometry_set, } attribute_math::convert_to_static_type(data_type, [&](auto dummy) { using T = decltype(dummy); - VArray_Span<T> src = src_attribute.varray.typed<T>(); + VArraySpan<T> src = src_attribute.varray.typed<T>(); MutableSpan<T> dst = dst_attribute.as_span<T>(); threaded_slice_fill<T>(offsets, selection, src, dst); }); @@ -258,7 +258,7 @@ static void copy_curve_attributes_without_id(const GeometrySet &geometry_set, attribute_math::convert_to_static_type(data_type, [&](auto dummy) { using T = decltype(dummy); - VArray_Span<T> src{src_attribute.varray.typed<T>()}; + VArraySpan<T> src{src_attribute.varray.typed<T>()}; MutableSpan<T> dst = dst_attribute.as_span<T>(); switch (out_domain) { @@ -307,7 +307,7 @@ static void copy_stable_id_curves(const bke::CurvesGeometry &src_curves, return; } - VArray_Span<int> src{src_attribute.varray.typed<int>()}; + VArraySpan<int> src{src_attribute.varray.typed<int>()}; MutableSpan<int> dst = dst_attribute.as_span<int>(); threading::parallel_for(selection.index_range(), 512, [&](IndexRange range) { @@ -439,7 +439,7 @@ static void copy_face_attributes_without_id(GeometrySet &geometry_set, attribute_math::convert_to_static_type(data_type, [&](auto dummy) { using T = decltype(dummy); - VArray_Span<T> src{src_attribute.varray.typed<T>()}; + VArraySpan<T> src{src_attribute.varray.typed<T>()}; MutableSpan<T> dst = dst_attribute.as_span<T>(); switch (out_domain) { @@ -487,7 +487,7 @@ static void copy_stable_id_faces(const Mesh &mesh, return; } - VArray_Span<int> src{src_attribute.varray.typed<int>()}; + VArraySpan<int> src{src_attribute.varray.typed<int>()}; MutableSpan<int> dst = dst_attribute.as_span<int>(); Span<MPoly> polys(mesh.mpoly, mesh.totpoly); @@ -651,7 +651,7 @@ static void copy_edge_attributes_without_id(GeometrySet &geometry_set, } attribute_math::convert_to_static_type(data_type, [&](auto dummy) { using T = decltype(dummy); - VArray_Span<T> src{src_attribute.varray.typed<T>()}; + VArraySpan<T> src{src_attribute.varray.typed<T>()}; MutableSpan<T> dst = dst_attribute.as_span<T>(); switch (out_domain) { @@ -691,7 +691,7 @@ static void copy_stable_id_edges(const Mesh &mesh, Span<MEdge> edges(mesh.medge, mesh.totedge); - VArray_Span<int> src{src_attribute.varray.typed<int>()}; + VArraySpan<int> src{src_attribute.varray.typed<int>()}; MutableSpan<int> dst = dst_attribute.as_span<int>(); threading::parallel_for(IndexRange(selection.size()), 1024, [&](IndexRange range) { for (const int i_selection : range) { @@ -853,7 +853,7 @@ static void duplicate_points_curve(GeometrySet &geometry_set, attribute_math::convert_to_static_type(data_type, [&](auto dummy) { using T = decltype(dummy); - VArray_Span<T> src{src_attribute.varray.typed<T>()}; + VArraySpan<T> src{src_attribute.varray.typed<T>()}; MutableSpan<T> dst = dst_attribute.as_span<T>(); switch (domain) { diff --git a/source/blender/nodes/geometry/nodes/node_geo_join_geometry.cc b/source/blender/nodes/geometry/nodes/node_geo_join_geometry.cc index 0c56b0e9804..62cd1d8ac3a 100644 --- a/source/blender/nodes/geometry/nodes/node_geo_join_geometry.cc +++ b/source/blender/nodes/geometry/nodes/node_geo_join_geometry.cc @@ -63,7 +63,7 @@ static void fill_new_attribute(Span<const GeometryComponent *> src_components, GVArray read_attribute = component->attribute_get_for_read( attribute_id, domain, data_type, nullptr); - GVArray_GSpan src_span{read_attribute}; + GVArraySpan src_span{read_attribute}; const void *src_buffer = src_span.data(); void *dst_buffer = dst_span[offset]; cpp_type->copy_assign_n(src_buffer, dst_buffer, domain_num); diff --git a/source/blender/nodes/geometry/nodes/node_geo_points_to_vertices.cc b/source/blender/nodes/geometry/nodes/node_geo_points_to_vertices.cc index 00b3d167755..95ff53b7146 100644 --- a/source/blender/nodes/geometry/nodes/node_geo_points_to_vertices.cc +++ b/source/blender/nodes/geometry/nodes/node_geo_points_to_vertices.cc @@ -68,7 +68,7 @@ static void geometry_set_points_to_vertices(GeometrySet &geometry_set, attribute_math::convert_to_static_type(data_type, [&](auto dummy) { using T = decltype(dummy); VArray<T> src_typed = src.typed<T>(); - VArray_Span<T> src_typed_span{src_typed}; + VArraySpan<T> src_typed_span{src_typed}; copy_attribute_to_vertices(src_typed_span, selection, dst.as_span().typed<T>()); }); dst.save(); |