Blender V5.0
blender::Span< T > Class Template Reference

#include <BLI_span.hh>

Inherited by blender::VArraySpan< T >.

Public Types

using value_type = T
using pointer = T *
using const_pointer = const T *
using reference = T &
using const_reference = const T &
using iterator = const T *
using size_type = int64_t

Public Member Functions

constexpr Span ()=default
constexpr Span (const T *start, int64_t size)
template<typename U, BLI_ENABLE_IF((is_span_convertible_pointer_v< U, T >))>
constexpr Span (const U *start, int64_t size)
constexpr Span (const std::initializer_list< T > &list)
constexpr Span (const std::vector< T > &vector)
template<std::size_t N>
constexpr Span (const std::array< T, N > &array)
template<typename U, BLI_ENABLE_IF((is_span_convertible_pointer_v< U, T >))>
constexpr Span (Span< U > span)
constexpr Span slice (int64_t start, int64_t size) const
constexpr Span slice (IndexRange range) const
constexpr Span slice_safe (const int64_t start, const int64_t size) const
constexpr Span slice_safe (IndexRange range) const
constexpr Span drop_front (int64_t n) const
constexpr Span drop_back (int64_t n) const
constexpr Span take_front (int64_t n) const
constexpr Span take_back (int64_t n) const
constexpr const Tdata () const
constexpr const Tbegin () const
constexpr const Tend () const
constexpr std::reverse_iterator< const T * > rbegin () const
constexpr std::reverse_iterator< const T * > rend () const
constexpr const Toperator[] (int64_t index) const
constexpr int64_t size () const
constexpr bool is_empty () const
constexpr int64_t size_in_bytes () const
constexpr bool contains (const T &value) const
constexpr bool contains_ptr (const T *ptr) const
constexpr int64_t count (const T &value) const
constexpr const Tfirst () const
constexpr const Tlast (const int64_t n=0) const
constexpr bool has_duplicates__linear_search () const
constexpr bool intersects__linear_search (Span other) const
constexpr int64_t first_index (const T &search_value) const
constexpr int64_t first_index_try (const T &search_value) const
constexpr IndexRange index_range () const
constexpr uint64_t hash () const
template<typename NewT>
Span< NewT > constexpr cast () const

Protected Attributes

const Tdata_ = nullptr
int64_t size_ = 0

Friends

bool operator== (const Span< T > a, const Span< T > b)
bool operator!= (const Span< T > a, const Span< T > b)

Detailed Description

template<typename T>
class blender::Span< T >

References an array of type T that is owned by someone else. The data in the array cannot be modified.

Definition at line 74 of file BLI_span.hh.

Member Typedef Documentation

◆ const_pointer

template<typename T>
using blender::Span< T >::const_pointer = const T *

Definition at line 78 of file BLI_span.hh.

◆ const_reference

template<typename T>
using blender::Span< T >::const_reference = const T &

Definition at line 80 of file BLI_span.hh.

◆ iterator

template<typename T>
using blender::Span< T >::iterator = const T *

Definition at line 81 of file BLI_span.hh.

◆ pointer

template<typename T>
using blender::Span< T >::pointer = T *

Definition at line 77 of file BLI_span.hh.

◆ reference

template<typename T>
using blender::Span< T >::reference = T &

Definition at line 79 of file BLI_span.hh.

◆ size_type

template<typename T>
using blender::Span< T >::size_type = int64_t

Definition at line 82 of file BLI_span.hh.

◆ value_type

template<typename T>
using blender::Span< T >::value_type = T

Definition at line 76 of file BLI_span.hh.

Constructor & Destructor Documentation

◆ Span() [1/7]

template<typename T>
blender::Span< T >::Span ( )
constexprdefault

◆ Span() [2/7]

template<typename T>
blender::Span< T >::Span ( const T * start,
int64_t size )
inlineconstexpr

Definition at line 94 of file BLI_span.hh.

References BLI_assert, data_, size(), size_, and T.

◆ Span() [3/7]

template<typename T>
template<typename U, BLI_ENABLE_IF((is_span_convertible_pointer_v< U, T >))>
blender::Span< T >::Span ( const U * start,
int64_t size )
inlineconstexpr

Definition at line 100 of file BLI_span.hh.

References BLI_assert, data_, size(), size_, T, and U.

◆ Span() [4/7]

template<typename T>
blender::Span< T >::Span ( const std::initializer_list< T > & list)
inlineconstexpr

Reference an initializer_list. Note that the data in the initializer_list is only valid until the expression containing it is fully computed.

Do: call_function_with_array({1, 2, 3, 4});

Don't: Span<int> span = {1, 2, 3, 4}; call_function_with_array(span);

Definition at line 116 of file BLI_span.hh.

References begin(), size(), and Span().

◆ Span() [5/7]

template<typename T>
blender::Span< T >::Span ( const std::vector< T > & vector)
inlineconstexpr

Definition at line 120 of file BLI_span.hh.

References data(), size(), and Span().

◆ Span() [6/7]

template<typename T>
template<std::size_t N>
blender::Span< T >::Span ( const std::array< T, N > & array)
inlineconstexpr

Definition at line 122 of file BLI_span.hh.

References data(), N, and Span().

◆ Span() [7/7]

template<typename T>
template<typename U, BLI_ENABLE_IF((is_span_convertible_pointer_v< U, T >))>
blender::Span< T >::Span ( Span< U > span)
inlineconstexpr

Support implicit conversions like the one below: Span<T *> -> Span<const T *>

Definition at line 129 of file BLI_span.hh.

References data(), data_, size(), size_, Span(), and T.

Member Function Documentation

◆ begin()

template<typename T>
const T * blender::Span< T >::begin ( ) const
inlineconstexpr

Definition at line 220 of file BLI_span.hh.

References data_, and T.

Referenced by blender::bke::pbvh::uv_islands::TriangleToEdgeMap::add(), blender::array_utils::all_equal(), applyarmature_process_selected_recursive(), blender::ed::object::arithmetic_mean(), blender::ed::sculpt_paint::greasepencil::arithmetic_mean(), blender::ed::greasepencil::attributes_elements_are_equal(), BKE_mesh_legacy_convert_mpoly_to_material_indices(), BKE_mesh_legacy_sharp_edges_from_flags(), BKE_mesh_legacy_sharp_faces_from_flags(), blender::ed::sculpt_paint::hide::calc_face_hide(), blender::draw::calc_face_visibility_mesh(), blender::ed::sculpt_paint::contains_nan(), contains_ptr(), blender::ed::sculpt_paint::face_set::create_op_exec(), blender::io::usd::determine_knots_mode(), blender::io::usd::USDPointsWriter::do_write(), blender::ed::sculpt_paint::dyntopo::dyntopo_supports_customdata_layers(), blender::ed::sculpt_paint::CombOperationExecutor::execute(), blender::draw::extract_edituv_face_dots_mesh(), blender::ed::sculpt_paint::mask::fill_mask_grids(), blender::ed::sculpt_paint::greasepencil::find_frames_interval(), blender::index_mask::IndexMask::foreach_segment_zipped(), blender::io::grease_pencil::get_average(), blender::io::grease_pencil::get_average(), blender::io::usd::get_loops_polys(), blender::io::usd::get_positions(), blender::ed::sculpt_paint::hide::grids_show_all(), blender::ed::curves::has_anything_selected(), blender::ed::pointcloud::has_anything_selected(), blender::memory_cache::invalidate_outdated_caches_if_necessary(), blender::ed::mesh::join_face_sets(), blender::geometry::lookup_point_bezier(), blender::geometry::boolean::mesh_bm_concat(), blender::nodes::partial_eval::NodeInContextDownstreamComparator::operator()(), blender::nodes::partial_eval::NodeInContextUpstreamComparator::operator()(), operator==, blender::io::csv::parse_column_as_floats(), blender::io::csv::parse_column_as_ints(), rend(), blender::bke::mesh::reverse_indices_in_groups(), blender::nodes::node_geo_scale_elements_cc::reverse_indices_in_groups(), blender::length_parameterize::sample_at_length(), blender::length_parameterize::sample_at_lengths(), blender::bke::mesh_surface_sample::sample_nearest_weights(), blender::length_parameterize::sample_uniform(), blender::length_parameterize::sample_uniform_reverse(), blender::index_mask::segments_is_equal(), blender::ed::sculpt_paint::select_grow::select_grow_update(), blender::ed::sculpt_paint::expand::snap_init_from_enabled(), Span(), blender::tests::TEST(), text_format_string_literals_check_sorted_array(), blender::ed::transform::transform_mesh_uv_vert_slide_data_create(), WM_drag_get_single_path(), and blender::io::ply::FileBuffer::write_bytes().

◆ cast()

template<typename T>
template<typename NewT>
Span< NewT > constexpr blender::Span< T >::cast ( ) const
inlineconstexpr

Returns a new Span to the same underlying memory buffer. No conversions are done.

Definition at line 418 of file BLI_span.hh.

References BLI_assert, data_, size_, Span(), and T.

Referenced by blender::bke::BoneDeformLinearMixer< full_deform >::accumulate_bbone(), blender::ed::sculpt_paint::apply_translations(), blender::ed::sculpt_paint::apply_translations(), blender::ed::sculpt_paint::apply_translations(), attr_create_generic(), blender::bke::mesh::build_vert_to_edge_map(), blender::nodes::node_fn_separate_matrix_cc::SeparateMatrixFunction::call(), blender::geometry::edges_to_curve_point_indices(), blender::draw::extract_edituv_tris_mesh(), blender::draw::extract_tris_mesh(), blender::animrig::fcurve_find(), blender::geometry::fit_poly_to_bezier_curves(), blender::fn::lazy_function::Graph::function_nodes(), blender::fn::lazy_function::Graph::function_nodes(), blender::io::grease_pencil::get_average(), blender::geometry::mesh_triangulate(), operator<<(), blender::bits::or_bools_into_bits(), blender::fn::multi_function::Procedure::params(), blender::io::usd::USDCurveData::points(), blender::io::usd::USDBasisCurvesReader::read_curve_sample(), blender::io::usd::USDPointInstancerReader::read_geometry(), blender::io::usd::USDPointsReader::read_geometry(), blender::io::grease_pencil::shape_attributes_to_curves(), subdivide_base(), blender::tests::TEST(), blender::tests::TEST(), blender::tests::TEST(), blender::io::usd::USDCurveData::velocities(), blender::bke::mesh::vert_tris_from_corner_tris(), blender::io::hydra::CurvesData::write_curves(), and blender::io::ply::FileBufferBinary::write_face().

◆ contains()

template<typename T>
bool blender::Span< T >::contains ( const T & value) const
inlineconstexpr

◆ contains_ptr()

template<typename T>
bool blender::Span< T >::contains_ptr ( const T * ptr) const
inlineconstexpr

Does a constant time check to see if the pointer points to a value in the referenced array. Return true if it is, otherwise false.

Definition at line 291 of file BLI_span.hh.

References begin(), end(), ptr, and T.

Referenced by BKE_attribute_data_length(), BKE_attribute_domain(), and blender::tests::TEST().

◆ count()

template<typename T>
int64_t blender::Span< T >::count ( const T & value) const
inlineconstexpr

Does a linear search to count how often the value is in the array. Returns the number of occurrences.

Definition at line 300 of file BLI_span.hh.

References element, and T.

Referenced by blender::nodes::node_geo_remove_attribute_cc::node_geo_exec(), and blender::tests::TEST().

◆ data()

template<typename T>
const T * blender::Span< T >::data ( ) const
inlineconstexpr

Returns the pointer to the beginning of the referenced array. This may be nullptr when the size is zero.

Definition at line 215 of file BLI_span.hh.

References data_, and T.

Referenced by blender::geometry::PackIsland::add_polygon(), blender::ed::object::armature_coords_and_quats_apply_with_mat4(), blender::draw::overlay::Background::begin_sync(), BKE_keyblock_data_set_with_mat4(), BKE_keyblock_update_from_mesh(), BKE_mesh_is_valid(), BKE_mesh_remap_calc_loops_from_mesh(), BKE_mesh_runtime_is_valid(), BKE_mesh_validate(), BLI_lasso_is_point_inside(), blender::geometry::ngon::calc_corner_tris(), blender::ed::transform::calcEdgeSlide_mval_range(), blender::draw::detail::PassBase< DrawCommandBufType >::clear_multi(), blender::LinearAllocator< Allocator >::construct_array_copy(), blender::gpu::convert_buffer(), blender::MutableSpan< T >::copy_from(), blender::bke::idprop::create_array(), create_mesh(), blender::draw::curve_create_curves_pos(), CustomData_blend_write(), blender::index_mask::difference_index_mask_segments(), distribute_from_volume_exec(), dynamicPaint_createUVSurface(), dynamicPaint_generateBakeData(), ED_mesh_pick_face_vert(), blender::ed::object::edit_armature_coords_and_quats_apply_with_mat4(), export_hair_curves(), export_pointcloud(), blender::Vector< SubdivCCGCoord, 256 >::extend(), blender::Vector< SubdivCCGCoord, 256 >::extend_unchecked(), blender::draw::extract_face_dot_index(), blender::geometry::extract_mesh_faces(), face_edge_loop_islands_calc(), blender::csv_parse::CsvRecord::field_str(), blender::draw::pbvh::fill_masks_grids(), blender::draw::pbvh::fill_positions_grids(), blender::ed::sculpt_paint::undo::compression::filter_compress(), blender::ed::sculpt_paint::undo::compression::filter_decompress(), find_all_ranges_test(), blender::VArray< T >::from_derived_span(), get_dupliface_transform_from_coords(), BlenderDisplayDriver::graphics_interop_get_device(), blender::draw::interpolate(), blender::ed::mesh::join_generic_attributes(), blender::ed::mesh::join_shape_keys(), blender::ed::mesh::join_vertex_groups(), blender::io::ply::load_face_element(), blender::io::ply::load_tristrips_element(), mesh_calc_eigen_matrix(), mesh_calc_hq_normal(), blender::ed::object::metaball_coords_and_quats_apply_with_mat4(), MOD_solidify_nonmanifold_modifyMesh(), blender::ed::object::modifier_skin_armature_create(), modify_mesh(), modify_mesh(), modify_mesh(), modify_mesh(), blender::bits::or_bytes_into_bits(), blender::io::ply::parse_row_ascii(), blender::bke::pbvh::pbvh_bmesh_face_create(), blender::ed::greasepencil::polyline_detect_corners(), blender::ed::greasepencil::polyline_fit_curve(), psys_particle_on_dm(), blender::Stack< T, InlineBufferCapacity, RawAllocator >< RawVector< FunctionRef< void()>, 0 >, 0 >::push_multiple(), PyC_Tuple_Pack_Bool(), PyC_Tuple_Pack_F32(), PyC_Tuple_Pack_F64(), PyC_Tuple_Pack_I32(), PyC_Tuple_Pack_I32FromBool(), RE_engine_get_current_tiles(), blender::bke::bake::MemoryBlobReader::read(), blender::io::ply::read_header(), RNA_property_boolean_set_array(), RNA_property_float_set_array(), RNA_property_int_set_array(), blender::io::obj::OBJCurvesTest::run_nurbs_test(), sculpt_update_object(), blender::VMutableArrayImpl< T >::set_all(), blender::io::obj::set_property_of_socket(), shrinkwrapParams_deform(), Span(), Span(), Span(), blender::draw::statvis_calc_thickness(), blender::bke::tests::TEST(), blender::tests::TEST(), blender::draw::test_eevee_lut_gen(), blender::io::ply::type_from_string(), blender::gpu::GLTexture::update_sub(), blender::gpu::MTLTexture::update_sub(), view3d_lasso_select(), blender::bke::write_channelbag(), blender::bke::write_layers(), blender::bke::write_slots(), blender::bke::write_strip_keyframe_data_array(), and blender::bke::write_strips().

◆ drop_back()

◆ drop_front()

template<typename T>
Span blender::Span< T >::drop_front ( int64_t n) const
inlineconstexpr

Returns a new Span with n elements removed from the beginning. This invokes undefined behavior when n is negative.

Definition at line 171 of file BLI_span.hh.

References BLI_assert, data_, size_, and Span().

Referenced by blender::ed::sculpt_paint::greasepencil::PaintOperationExecutor::active_smoothing(), blender::fn::multi_function::ProcedureBuilder::add_call(), blender::io::usd::calc_curve_offsets(), blender::ed::curves::curve_offsets_from_selection(), blender::io::obj::detect_knot_mode_bezier_clamped(), blender::io::obj::detect_knot_mode_cyclic(), blender::io::obj::detect_knot_mode_uniform(), blender::ed::curves::extend_range_by_1_within_bounds(), blender::fill_scene_range_chain(), blender::index_mask::IndexMask::foreach_range(), blender::index_mask::IndexMask::from_segments(), blender::fn::lazy_function::Graph::function_nodes(), blender::fn::lazy_function::Graph::function_nodes(), blender::geometry::gather_or_reference(), blender::ed::curves::invert_ranges(), blender::nodes::Bundle::lookup_path(), blender::csv_parse::parse_csv_in_chunks(), blender::ed::viewer_path::parse_geometry_nodes_viewer(), blender::Stack< T, InlineBufferCapacity, RawAllocator >< RawVector< FunctionRef< void()>, 0 >, 0 >::push_multiple(), blender::geometry::reinsert_modified_geometry_recursive(), blender::ed::sculpt_paint::greasepencil::sample_curve_2d(), blender::string_search::score_query_against_words(), blender::index_mask::segments_from_indices(), blender::unique_sorted_indices::split_to_ranges_and_spans(), blender::tests::TEST(), blender::tests::TEST(), blender::tests::TEST(), and blender::io::obj::valid_nurb_control_point_range().

◆ end()

template<typename T>
const T * blender::Span< T >::end ( ) const
inlineconstexpr

Definition at line 224 of file BLI_span.hh.

References data_, size_, and T.

Referenced by blender::bke::pbvh::uv_islands::TriangleToEdgeMap::add(), blender::array_utils::all_equal(), applyarmature_process_selected_recursive(), blender::ed::object::arithmetic_mean(), blender::ed::sculpt_paint::greasepencil::arithmetic_mean(), blender::ed::greasepencil::attributes_elements_are_equal(), BKE_mesh_legacy_convert_mpoly_to_material_indices(), BKE_mesh_legacy_sharp_edges_from_flags(), BKE_mesh_legacy_sharp_faces_from_flags(), blender::ed::sculpt_paint::hide::calc_face_hide(), blender::draw::calc_face_visibility_mesh(), blender::ed::sculpt_paint::contains_nan(), contains_ptr(), blender::ed::sculpt_paint::face_set::create_op_exec(), blender::io::usd::determine_knots_mode(), blender::io::usd::USDPointsWriter::do_write(), blender::ed::sculpt_paint::dyntopo::dyntopo_supports_customdata_layers(), blender::ed::sculpt_paint::CombOperationExecutor::execute(), blender::draw::extract_edituv_face_dots_mesh(), blender::ed::sculpt_paint::mask::fill_mask_grids(), blender::ed::sculpt_paint::greasepencil::find_frames_interval(), blender::index_mask::IndexMask::foreach_segment_zipped(), blender::io::grease_pencil::get_average(), blender::io::grease_pencil::get_average(), blender::io::usd::get_loops_polys(), blender::io::usd::get_positions(), blender::ed::sculpt_paint::hide::grids_show_all(), blender::ed::curves::has_anything_selected(), blender::ed::pointcloud::has_anything_selected(), blender::memory_cache::invalidate_outdated_caches_if_necessary(), blender::ed::mesh::join_face_sets(), blender::geometry::lookup_point_bezier(), blender::nodes::partial_eval::NodeInContextDownstreamComparator::operator()(), blender::nodes::partial_eval::NodeInContextUpstreamComparator::operator()(), operator==, blender::io::csv::parse_column_as_floats(), blender::io::csv::parse_column_as_ints(), rbegin(), blender::bke::mesh::reverse_indices_in_groups(), blender::nodes::node_geo_scale_elements_cc::reverse_indices_in_groups(), blender::length_parameterize::sample_at_length(), blender::length_parameterize::sample_at_lengths(), blender::length_parameterize::sample_uniform(), blender::length_parameterize::sample_uniform_reverse(), blender::index_mask::segments_is_equal(), blender::ed::sculpt_paint::select_grow::select_grow_update(), blender::ed::sculpt_paint::expand::snap_init_from_enabled(), text_format_string_literals_check_sorted_array(), blender::ed::transform::transform_mesh_uv_vert_slide_data_create(), WM_drag_get_single_path(), and blender::io::ply::FileBuffer::write_bytes().

◆ first()

template<typename T>
const T & blender::Span< T >::first ( ) const
inlineconstexpr

Return a reference to the first element in the array. This invokes undefined behavior when the array is empty.

Definition at line 315 of file BLI_span.hh.

References BLI_assert, data_, size_, and T.

Referenced by blender::bke::mesh::accumulate_fan_normal(), blender::length_parameterize::accumulate_lengths(), blender::bke::action_blend_write_make_legacy_channel_groups_listbase(), blender::fn::multi_function::ProcedureBuilder::add_call(), blender::array_utils::booleans_mix_calc(), blender::bke::build_mesh_positions(), blender::geometry::build_point_to_sample_map(), blender::ed::curves::calc_curves_extrusion(), blender::bke::pbvh::calc_face_bounds(), blender::ed::sculpt_paint::islands::calc_topology_islands_mesh(), blender::geometry::calculate_angles(), blender::bke::curves::bezier::calculate_auto_handles(), blender::geometry::calculate_directions(), blender::bke::curves::bezier::calculate_evaluated_positions(), blender::bke::curves::poly::calculate_normals_minimum(), blender::bke::curves::poly::calculate_tangents(), blender::geometry::catmull_rom_to_bezier_handles(), blender::ed::sculpt_paint::greasepencil::compute_auto_flip(), blender::ed::space_node::connect_nested_node_to_node(), blender::ed::space_node::connect_node_to_surface_output(), blender::ed::space_node::connect_nodes_to_aovs(), blender::bke::copy_point_selection_custom_knots(), blender::ed::curves::curve_offsets_from_selection(), blender::ed::transform::curves::curve_populate_trans_data_structs(), blender::io::obj::detect_clamped_endpoint(), blender::io::obj::detect_knot_mode_bezier_clamped(), blender::io::obj::detect_knot_mode_cyclic(), blender::io::obj::detect_knot_mode_uniform(), blender::geometry::execute_realize_curve_tasks(), blender::geometry::execute_realize_grease_pencil_tasks(), blender::geometry::execute_realize_mesh_tasks(), blender::geometry::execute_realize_pointcloud_tasks(), blender::ed::curves::extend_range_by_1_within_bounds(), blender::draw::Manager::extract_object_attributes(), blender::nodes::node_geo_extrude_mesh_cc::extrude_mesh_edges(), blender::bke::fill_mesh_positions(), blender::fill_scene_range_chain(), blender::array_utils::find_all_ranges(), blender::find_closest_point(), blender::ed::greasepencil::find_lowest_common_ancestor(), blender::ed::curves::convert_to_particle_system::find_mface_for_root_position(), blender::ed::greasepencil::generate_stroke_perimeter(), blender::ed::greasepencil::get_visible_frames_for_layer(), blender::bke::mesh::handle_fan_result_and_custom_normals(), blender::bke::curves::bezier::interpolate_to_evaluated(), blender::bke::curves::catmull_rom::interpolate_to_evaluated(), blender::length_parameterize::interpolate_to_masked(), blender::ed::curves::invert_ranges(), blender::bke::curves::bezier::last_cyclic_segment_is_vector(), blender::geometry::limit_radii(), blender::io::obj::linked_sockets_to_dest_id(), blender::ed::greasepencil::merge_layers(), blender::bounds::min_max(), blender::bounds::min_max(), blender::bounds::min_max_with_radii(), blender::geometry::nurbs_to_bezier_assign(), proj_paint_add_slot(), blender::io::ply::read_header(), blender::geometry::reinsert_modified_geometry_recursive(), blender::tests::TEST(), blender::tests::TEST(), blender::io::obj::TEST_F(), blender::io::obj::TEST_F(), blender::io::obj::TEST_F(), blender::io::obj::TEST_F(), blender::io::obj::TEST_F(), blender::io::obj::TEST_F(), blender::length_parameterize::tests::test_uniform_lengths(), blender::bke::node_tree_runtime::update_dangling_reroute_nodes(), blender::geometry::update_unselected_edges(), and blender::io::grease_pencil::SVGExporter::write_bezier_path().

◆ first_index()

◆ first_index_try()

template<typename T>
int64_t blender::Span< T >::first_index_try ( const T & search_value) const
inlineconstexpr

Returns the index of the first occurrence of the given value or -1 if it does not exist.

Definition at line 387 of file BLI_span.hh.

References data_, i, size_, and T.

Referenced by blender::nodes::node_geo_set_material_cc::assign_material_to_id_geometry(), first_index(), and blender::ed::greasepencil::merge_layers().

◆ has_duplicates__linear_search()

template<typename T>
bool blender::Span< T >::has_duplicates__linear_search ( ) const
inlineconstexpr

Check if the array contains duplicates. Does a linear search for every element. So the total running time is O(n^2). Only use this for small arrays.

Definition at line 336 of file BLI_span.hh.

References BLI_assert, data_, i, size_, and T.

Referenced by blender::tests::TEST().

◆ hash()

◆ index_range()

template<typename T>
IndexRange blender::Span< T >::index_range ( ) const
inlineconstexpr

Utility to make it more convenient to iterate over all indices that can be used with this array.

Definition at line 401 of file BLI_span.hh.

References size_.

Referenced by blender::ed::sculpt_paint::brushes::accumulate_samples(), blender::ed::sculpt_paint::accumulate_weighted_average_position(), blender::bke::action_blend_write_make_legacy_channel_groups_listbase(), blender::bke::action_blend_write_make_legacy_fcurves_listbase(), blender::bke::adapt_mesh_domain_edge_to_point_impl(), blender::meshintersect::add_face_constraints(), blender::nodes::node_geo_instance_on_points_cc::add_instances_from_component(), add_interpolated_faces_to_new_mesh(), blender::add_missing_data_block_mappings(), animsys_blend_in_fcurves(), blender::ed::curves::append_point_knots(), blender::ed::sculpt_paint::cloth::apply_filter_forces_grids(), blender::ed::sculpt_paint::apply_kelvinet_to_translations(), blender::ed::sculpt_paint::apply_translations(), blender::geometry::assign_samples_to_segments(), attr_create_generic(), attr_create_pointiness(), attr_create_random_per_island(), attr_create_uv_map(), blender::ed::sculpt_paint::smooth::average_data_grids(), blender::io::grease_pencil::average_gradient_color(), blender::gpu::ShaderCompiler::batch_compile(), blender::geometry::bezier_generic_to_nurbs(), blender::geometry::bezier_positions_to_nurbs(), BKE_brush_calc_curve_factors(), BKE_editmesh_uv_tangents_calc(), BKE_fcurve_pathcache_create(), BKE_mesh_foreach_mapped_edge(), BKE_mesh_legacy_bevel_weight_to_layers(), BKE_mesh_legacy_convert_edges_to_generic(), BKE_mesh_legacy_convert_loops_to_corners(), BKE_mesh_legacy_convert_mpoly_to_material_indices(), BKE_mesh_legacy_convert_polys_to_offsets(), BKE_mesh_legacy_edge_crease_to_layers(), BKE_mesh_legacy_sharp_edges_from_flags(), BKE_mesh_legacy_sharp_faces_from_flags(), BKE_mesh_to_curve_nurblist(), BKE_object_foreach_display_point(), BLI_lasso_boundbox(), BLI_lasso_is_edge_inside(), blender::ed::sculpt_paint::smooth::blur_geometry_data_array(), BM_mesh_bm_from_me(), blender::bm_to_mesh_faces(), blender::ed::greasepencil::build_curves_2d_bvh_from_visible(), blender::nodes::node_geo_blur_attribute_cc::build_edge_to_edge_by_vert_map(), blender::geometry::build_point_to_sample_map(), blender::ed::spreadsheet::GeometryInstancesTreeView::build_tree_for_instances(), blender::bke::mesh::build_vert_to_edge_map(), buildAdjacencyMap(), C_BVHTree_FromObject(), blender::draw::calc_adjacency_bm(), blender::ed::sculpt_paint::calc_area_normal_and_center_node_bmesh(), blender::ed::sculpt_paint::calc_area_normal_and_center_node_grids(), blender::ed::sculpt_paint::pose::calc_average_face_set_center(), blender::ed::sculpt_paint::boundary::calc_bend_position(), blender::bke::pbvh::calc_boundary_face_normals(), blender::ed::sculpt_paint::calc_brush_cube_distances(), blender::ed::sculpt_paint::calc_brush_distances_squared(), blender::ed::sculpt_paint::cloth::calc_brush_simulation_falloff(), blender::ed::sculpt_paint::calc_brush_texture_factors(), blender::bke::mesh::calc_connecting_edge_info(), blender::geometry::ngon::calc_corner_tris(), blender::geometry::quad::calc_corner_tris(), blender::io::usd::calc_curve_offsets(), blender::ed::sculpt_paint::brushes::calc_distances(), blender::ed::sculpt_paint::cloth::calc_distances_to_plane(), blender::nodes::node_geo_dual_mesh_cc::calc_dual_mesh(), blender::bke::calc_edge_centers(), blender::bke::mesh::calc_edge_directions(), blender::ed::sculpt_paint::auto_mask::calc_face_factors(), blender::ed::sculpt_paint::hide::calc_face_hide(), blender::ed::sculpt_paint::calc_front_face(), blender::ed::sculpt_paint::boundary::calc_grab_position(), blender::ed::sculpt_paint::auto_mask::calc_grids_factors(), blender::ed::sculpt_paint::boundary::calc_inflate_position(), blender::ed::sculpt_paint::mask::calc_new_masks(), blender::ed::curves::calc_new_offsets(), blender::bke::node_structure_type_inferencing::calc_node_interface(), blender::ed::sculpt_paint::cloth::calc_perpendicular_pinch_forces(), blender::ed::sculpt_paint::cloth::calc_plane_pinch_forces(), blender::geometry::quad::calc_quad_directions(), blender::ed::sculpt_paint::smooth::calc_relaxed_translations_grids(), blender::ed::sculpt_paint::pose::calc_segment_translations(), blender::ed::sculpt_paint::filter::calc_sharpen_detail_translations(), blender::ed::sculpt_paint::filter::calc_sharpen_filter(), blender::ed::sculpt_paint::boundary::calc_slide_position(), blender::ed::sculpt_paint::boundary::calc_smooth_position(), blender::bke::node_field_inferencing::calc_socket_states(), blender::ed::sculpt_paint::filter::calc_sphere_translations(), blender::ed::sculpt_paint::calc_symm_area_transform_translations(), blender::ed::sculpt_paint::islands::calc_topology_islands_mesh(), blender::ed::sculpt_paint::calc_transform_translations(), blender::ed::sculpt_paint::brushes::calc_translations(), blender::ed::sculpt_paint::calc_translations_to_plane(), blender::ed::sculpt_paint::boundary::calc_twist_position(), blender::nodes::node_geo_uv_tangent_cc::calc_uv_tangents_simple(), blender::ed::sculpt_paint::cloth::calc_vert_indices_grids(), blender::ed::sculpt_paint::calc_vert_neighbors(), blender::ed::sculpt_paint::calc_vert_neighbors_interior(), blender::ed::sculpt_paint::cloth::calc_visible_vert_indices_grids(), blender::geometry::calculate_angles(), blender::geometry::calculate_bezier_handles_bezier_mode(), blender::geometry::calculate_bezier_handles_poly_mode(), blender::ed::sculpt_paint::trim::calculate_depth(), blender::geometry::calculate_directions(), blender::bke::curves::bezier::calculate_evaluated_positions(), blender::geometry::calculate_fillet_positions(), blender::bke::curves::nurbs::calculate_multiplicity_sequence(), blender::bke::curves::poly::calculate_tangents(), blender::geometry::catmull_rom_to_bezier_handles(), blender::ed::sculpt_paint::clip_and_lock_translations(), blender::bke::mesh::collect_corner_info(), blender::nodes::node_geo_distribute_points_on_faces_cc::compute_attribute_outputs(), compute_interpolated_faces(), blender::nodes::node_geo_distribute_points_on_faces_cc::compute_legacy_normal_outputs(), blender::nodes::node_geo_distribute_points_on_faces_cc::compute_normal_outputs(), construct_param_handle_subsurfed(), contarget_get_mesh_mat(), blender::gpu::convert_normals_impl(), blender::array_utils::copy(), blender::bke::bake::copy_bake_items_to_socket_values(), blender::bke::greasepencil::copy_drawing_array(), blender::nodes::node_geo_duplicate_elements_cc::copy_hashed_ids(), blender::bke::copy_indices_to_offset_ranges(), blender::bke::copy_main_point_data_to_mesh_edges(), blender::bke::copy_main_point_data_to_mesh_verts(), copy_masked_verts_to_new_mesh(), blender::ed::sculpt_paint::mask::copy_old_hidden_mask_grids(), blender::bke::copy_profile_point_data_to_mesh_edges(), blender::bke::copy_profile_point_data_to_mesh_verts(), blender::ed::object::copy_transformed_radii(), correctivesmooth_modifier_do(), blender::geometry::create_id_index_map(), create_mesh(), create_subd_mesh(), blender::bke::create_tree_from_tris(), blender::geometry::create_value_to_first_index_map(), createFaceRingMap(), blender::ed::transform::curves::createTransCurvesVerts(), blender::ed::transform::greasepencil::createTransGreasePencilVerts(), createVertRingMap(), blender::bke::curve_legacy_to_curves(), blender::ed::transform::curves::curve_populate_trans_data_structs(), blender::io::obj::detect_knot_mode_cyclic(), blender::io::obj::detect_knot_mode_uniform(), blender::io::usd::determine_knots_mode(), blender::bke::discover_tree_zones(), blender::ed::sculpt_paint::geodesic::distances_create(), blender::nodes::node_geo_curve_fill_cc::do_cdt(), blender::ed::spreadsheet::SpreadsheetLayoutDrawer::draw_byte_color(), blender::ed::spreadsheet::SpreadsheetLayoutDrawer::draw_float_vector(), blender::ed::spreadsheet::SpreadsheetLayoutDrawer::draw_int_vector(), blender::nodes::draw_output_attributes_panel(), DRW_select_buffer_context_create(), blender::draw::DRW_subdivide_loose_geom(), dynamic_paint_create_uv_surface_direct_cb(), dynamicPaint_createUVSurface(), dynamicPaint_setInitialColor(), EDBM_unified_findnearest_from_raycast(), blender::bke::calc_edges::edge_map_offsets(), blender::nodes::node_geo_edge_paths_to_selection_cc::edge_paths_to_selection(), blender::geometry::edge_selection_from_vert(), blender::geometry::edges_to_curve_point_indices(), blender::ed::sculpt_paint::face_set::edit_fairing(), blender::ed::sculpt_paint::boundary::ensure_boundary_info(), blender::ed::greasepencil::ensure_selection_domain(), blender::fn::evaluate_fields(), blender::index_mask::evaluate_short_unknown_segments_exactly(), blender::geometry::execute_instances_tasks(), blender::nodes::execute_multi_function_on_value_variant(), blender::nodes::execute_multi_function_on_value_variant__field(), blender::nodes::execute_multi_function_on_value_variant__list(), blender::nodes::execute_multi_function_on_value_variant__single(), blender::geometry::execute_realize_curve_tasks(), blender::geometry::execute_realize_grease_pencil_task(), blender::geometry::execute_realize_grease_pencil_tasks(), blender::geometry::execute_realize_mesh_task(), blender::geometry::execute_realize_mesh_tasks(), blender::geometry::execute_realize_pointcloud_tasks(), blender::io::usd::export_deform_verts(), export_hair_curves(), export_pointcloud(), blender::draw::extract_edge_idx_loose_geom_subdiv(), blender::draw::extract_edge_index_mesh(), blender::draw::extract_edituv_tris_bm(), blender::draw::extract_lines_bm(), blender::draw::extract_lines_loose_geom_subdiv(), blender::draw::extract_loose_positions_subdiv(), blender::draw::extract_mesh_loose_edge_data(), blender::draw::extract_orco(), blender::draw::extract_points_subdiv_bm(), blender::draw::extract_points_subdiv_mesh(), blender::draw::extract_vert_idx_loose_geom_subdiv(), blender::draw::extract_vert_index_mesh(), blender::ed::curves::extrude_curves(), blender::ed::curves::extrude_knots(), blender::nodes::node_geo_extrude_mesh_cc::extrude_mesh_face_regions(), blender::bke::mesh::face_area_calc(), blender::bke::mesh::face_center_calc_ngon(), blender::ed::sculpt_paint::fake_neighbor_search(), blender::draw::pbvh::fill_face_sets_grids(), blender::ed::sculpt_paint::fill_factor_from_hide(), blender::ed::sculpt_paint::fill_factor_from_hide_and_mask(), blender::nodes::node_geo_extrude_mesh_cc::fill_quad_consistent_direction(), blender::ed::sculpt_paint::filter_above_plane_factors(), blender::ed::sculpt_paint::filter_below_plane_factors(), blender::ed::sculpt_paint::filter_distances_with_radius(), blender::ed::sculpt_paint::gesture::filter_factors(), blender::ed::sculpt_paint::brushes::filter_plane_side_factors(), blender::ed::sculpt_paint::filter_plane_trim_limit_factors(), blender::ed::sculpt_paint::filter_region_clip_factors(), blender::bke::FileHandlerType::filter_supported_paths(), blender::ed::sculpt_paint::filter_translations_with_symmetry(), blender::ed::sculpt_paint::filter_verts_outside_symmetry_area(), blender::ed::sculpt_paint::face_set::filter_verts_with_unique_face_sets_grids(), blender::geometry::finalize_geometry(), blender::array_utils::find_all_ranges(), blender::ed::curves::find_closest_curve(), blender::find_closest_point(), blender::geometry::find_connected_ranges(), blender::find_envelope(), blender::ed::view3d::geometry_nodes_gizmos::find_gizmo_geometry_transform_recursive(), blender::find_key_range(), blender::bke::find_nearest_tris(), blender::bke::find_nearest_verts(), blender::nodes::node_geo_interpolate_curves_cc::find_neighbor_guides(), blender::ed::sculpt_paint::face_set::find_next_available_id(), blender::nodes::node_geo_points_to_curves_cc::find_points_by_group_index(), blender::bke::node_tree_reference_lifetimes::find_reference_sets(), blender::fn::find_varying_fields(), blender::geometry::finish_rows(), blender::io::obj::fixup_invalid_face(), blender::io::csv::flatten_valid_attribute_chunks(), blender::geometry::foreach_connected_curve(), blender::index_mask::IndexMask::foreach_segment_zipped(), blender::ed::curves::foreach_selectable_curve_range(), blender::ed::curves::foreach_selectable_point_range(), blender::index_mask::IndexMask::from_bools(), blender::index_mask::IndexMask::from_segments(), blender::ed::sculpt_paint::gather_data_grids(), blender::ed::sculpt_paint::face_set::gather_hidden_face_sets(), blender::bke::generate_unique_instance_ids(), blender::io::alembic::get_edge_creases(), blender::io::usd::get_edge_creases(), blender::io::usd::get_loops_polys(), blender::bke::node_field_inferencing::get_node_field_inferencing_interface(), blender::ed::greasepencil::get_root_and_tips_of_bones(), blender::nodes::node_geo_input_mesh_island_cc::IslandCountFieldInput::get_varray_for_context(), blender::nodes::node_geo_input_mesh_island_cc::IslandFieldInput::get_varray_for_context(), blender::io::alembic::get_vert_creases(), blender::io::usd::get_vert_creases(), blender::ed::greasepencil::get_visible_frames_for_layer(), blender::string_search::get_word_index_that_fuzzy_matches(), blender::ed::greasepencil::grease_pencil_material_select_exec(), blender::ed::greasepencil::grease_pencil_merge_layer_exec(), blender::ed::sculpt_paint::hide::grid_hide_update(), blender::ed::sculpt_paint::pose::grow_factors_grids(), blender::ed::sculpt_paint::mask::grow_mask_grids(), blender::geometry::guess_initial_scale(), blender::bke::mesh::handle_fan_result_and_custom_normals(), blender::nodes::id_property_int_update_enum_items(), blender::io::fbx::import_edges(), blender::nodes::socket_usage_inference::infer_all_sockets_usage(), blender::nodes::socket_usage_inference::infer_group_interface_inputs_usage(), blender::ed::sculpt_paint::auto_mask::init_boundary_masking_grids(), blender::ed::curves::init_selection_writers(), blender::ed::sculpt_paint::paint::image::init_uv_primitives_brush_test(), blender::ed::sculpt_paint::greasepencil::WeightPaintOperation::init_weight_data_for_drawings(), blender::insert_keys_forward(), blender::insert_keys_reverse(), blender::bke::curves::bezier::interpolate_to_evaluated(), blender::bke::curves::catmull_rom::interpolate_to_evaluated(), blender::memory_cache::invalidate_outdated_caches_if_necessary(), blender::geometry::invert_permutation(), blender::nodes::node_geo_sort_elements_cc::invert_permutation(), blender::ed::greasepencil::join_curves(), blender::geometry::join_curves(), blender::ed::mesh::join_face_sets(), blender::ed::mesh::join_generic_attributes(), blender::ed::greasepencil::join_geometries_with_transforms(), blender::geometry::join_instances(), blender::ed::mesh::join_materials(), blender::ed::mesh::join_normals(), blender::ed::mesh::join_positions(), blender::ed::mesh::join_shape_keys(), blender::ed::mesh::join_vertex_groups(), blender::bke::greasepencil::convert::legacy_gpencil_frame_to_grease_pencil_drawing(), blender::geometry::limit_radii(), blender::ed::space_node::link_path_intersection(), list_of_lists_from_arrays(), blender::io::ply::load_custom_attributes(), blender::bke::loose_verts_no_hidden_mask_get(), blender::nodes::node_geo_bake_cc::make_bake_socket_config(), blender::nodes::node_geo_simulation_cc::make_bake_socket_config(), make_duplis_geometry_set_impl(), blender::bke::calc_edges::map_edge_to_span_index(), blender::ed::sculpt_paint::mask_border_weight_calc(), blender::ed::sculpt_paint::mask::mask_equals_array_grids(), blender::bounds::max(), blender::geometry::merge_groups_create(), blender::geometry::merge_layers(), blender::geometry::boolean::mesh_bm_concat(), blender::geometry::boolean::mesh_boolean_float(), blender::bke::mesh_calc_edges(), blender::bke::mesh_edge_hide_from_vert(), mesh_get_boundaries(), mesh_get_x_mirror_faces(), blender::ed::object::mesh_is_manifold_consistent(), blender::geometry::mesh_merge_by_distance_connected(), blender::bke::mesh::mesh_normals_corner_custom_set(), mesh_to_softbody(), blender::geometry::mesh_triangulate(), blender::bounds::min_max(), blender::bounds::min_max_with_radii(), blender::bke::mesh::mix_normals_corner_to_vert(), blender::bke::bake::move_bake_items_to_socket_values(), blender::nodes::node_geo_simulation_cc::move_values_to_simulation_state(), blender::ed::sculpt_paint::mask::multiply_add(), multires_reshape_apply_base_update_mesh_coords(), blender::ed::sculpt_paint::smooth::neighbor_position_average_interior_grids_impl(), blender::nodes::node_geo_field_to_grid_cc::node_declare(), blender::nodes::node_geo_index_switch_cc::node_declare(), blender::ed::space_node::node_draw_extra_info_panel(), blender::ed::space_node::node_draw_zones_and_frames(), blender::nodes::node_geo_field_to_grid_cc::node_geo_exec(), blender::bke::pbvh::node_raycast_grids(), blender::bke::pbvh::node_raycast_mesh(), blender::ed::space_node::node_select_same_type_step_exec(), blender::bke::mesh::normal_calc_ngon(), blender::bke::mesh::normals_calc_corners(), blender::bke::mesh::normals_calc_verts(), blender::ed::object::object_origin_set_exec(), blender::draw::external::Prepass::object_sync(), blender::draw::overlay::Prepass::object_sync(), blender::geometry::pack_islands(), blender::geometry::pack_islands_margin_fraction(), blender::geometry::OverlapMerger::pack_islands_overlap(), blender::geometry::pack_islands_scale_margin(), blender::bke::node_interface::item_types::panel_init(), blender::ed::sculpt_paint::hide::partialvis_gesture_update_grids(), blender::ed::sculpt_paint::hide::partialvis_masked_update_grids(), blender::ed::curves::convert_from_particle_system::particles_to_curves(), blender::bke::pbvh::pbvh_faces_node_nearest_to_ray(), blender::bke::pbvh::pbvh_grids_node_nearest_to_ray(), poly_loops_orders_match(), blender::ed::greasepencil::polyline_fit_curve(), blender::gpu::ShaderCompiler::precompile_specializations(), blender::bke::greasepencil::Layer::prepare_for_dna_write(), blender::draw::process_ibo_verts_mesh(), blender::ed::greasepencil::DrawingPlacement::project(), blender::bke::node_structure_type_inferencing::propagate_left_to_right(), blender::ed::sculpt_paint::filter::randomize_factors(), blender::bke::bake::MemoryBlobReader::read(), blender::io::alembic::read_edge_creases(), blender::ed::transform::remake_graph_transdata(), blender::bke::remember_deformed_grease_pencil_if_necessary(), blender::ed::sculpt_paint::remove_points_and_split_from_drawings(), blender::geometry::reorder_and_flip_attributes_group_to_group(), blender::geometry::reorder_attributes_group_to_group(), blender::geometry::reorder_customdata(), reorder_layer_data(), blender::ed::greasepencil::DrawingPlacement::reproject(), blender::ed::sculpt_paint::undo::restore_face_sets(), blender::ed::sculpt_paint::undo::restore_mask_grids(), blender::ed::sculpt_paint::undo::restore_position_grids(), blender::ed::sculpt_paint::undo::restore_vert_visibility_grids(), blender::geometry::retrieve_attribute_spans(), blender::geometry::retrieve_attribute_spans(), blender::ed::greasepencil::retrieve_editable_drawings(), blender::ed::greasepencil::retrieve_editable_drawings_grouped_per_frame(), blender::ed::greasepencil::retrieve_editable_drawings_with_falloff(), blender::ed::greasepencil::retrieve_visible_drawings(), blender::bke::mesh::reverse_indices_in_groups(), blender::nodes::node_geo_scale_elements_cc::reverse_indices_in_groups(), blender::geometry::sample_curve_padded(), blender::geometry::ReverseUVSampler::sample_many(), blender::nodes::node_geo_distribute_points_on_faces_cc::sample_mesh_surface(), blender::ed::sculpt_paint::scatter_data_grids(), blender::string_search::score_query_against_words(), blender::nodes::search_link_ops_for_declarations(), blender::bke::curves::bezier::segment_is_vector(), blender::ed::pointcloud::select_box(), blender::nodes::node_geo_material_selection_cc::select_by_material(), blender::ed::pointcloud::select_circle(), blender::ed::pointcloud::select_lasso(), blender::ed::greasepencil::select_similar_by_layer(), selected_indices_from_vertex_group(), selection_array_from_vertex_group(), blender::bke::VArrayImpl_For_VertexWeights::set_all(), blender::bke::node_tree_reference_lifetimes::set_initial_data_and_reference_bits(), blender::fn::multi_function::CallInstruction::set_params(), blender::ed::sculpt_paint::mask::sharpen_masks(), blender::ed::sculpt_paint::mask::shrink_mask_grids(), blender::bke::shrinkwrap::shrinkwrap_build_boundary_data(), skin_output_connections(), blender::ed::sculpt_paint::SlideOperationExecutor::slide(), smoothModifier_do(), blender::geometry::sort_tris_into_rows(), blender::ed::sculpt_paint::expand::spherical_falloff_create(), blender::geometry::split_edges(), blender::draw::statvis_calc_thickness(), blender::bke::node_structure_type_inferencing::store_group_input_structure_types(), blender::bke::node_structure_type_inferencing::store_group_output_structure_types(), blender::io::obj::OBJMesh::store_normal_coords_and_indices(), blender::ed::sculpt_paint::undo::store_vert_visibility_grids(), blender::animrig::StripKeyframeData::StripKeyframeData(), blender::geometry::subdivide_attribute_linear(), blender::geometry::subdivide_bezier_positions(), blender::draw::detail::PassBase< DrawCommandBufType >::subpass_transition(), blender::gpu::GLFrameBuffer::subpass_transition_impl(), blender::gpu::MTLFrameBuffer::subpass_transition_impl(), blender::ed::sculpt_paint::smooth::surface_smooth_displace_step(), blender::ui::template_breadcrumbs(), blender::bke::greasepencil::tests::TEST(), blender::bke::greasepencil::tests::TEST(), blender::bke::greasepencil::tests::TEST(), blender::bke::tests::TEST(), blender::bke::tests::TEST(), blender::bke::tests::TEST(), blender::bke::tests::TEST(), blender::ed::curves::tests::TEST(), blender::ed::curves::tests::TEST(), blender::bke::pbvh::test_frustum_aabb(), blender::bke::tests::GreasePencilInterpolate::test_sample_curve(), blender::length_parameterize::tests::test_uniform_lengths(), blender::geometry::toposort_connected_curves(), blender::math::transform_normals(), blender::math::transform_points(), blender::math::transform_points_no_threading(), blender::ed::sculpt_paint::translations_from_new_positions(), blender::ed::sculpt_paint::translations_from_offset_and_factors(), blender::ed::curves::transverts_from_curves_positions_create(), blender::bke::try_capture_fields_on_geometry(), blender::ed::curves::convert_to_particle_system::try_convert_single_object(), blender::ed::space_node::ui_node_link_items(), blender::nodes::node_geo_distribute_points_on_faces_cc::update_elimination_mask_based_on_density_factors(), blender::nodes::node_geo_distribute_points_on_faces_cc::update_elimination_mask_for_close_points(), blender::nodes::update_input_properties_from_node_tree(), blender::nodes::update_output_properties_from_node_tree(), blender::bke::compare_geometry::update_set_ids(), blender::bke::compare_geometry::update_set_ids_with_id_maps(), blender::ed::transform::update_transdata_bezt_pointers(), blender::bke::update_zone_per_node(), uv_select_linked_multi(), uvedit_pack_islands_multi(), blender::ed::curves::tests::validate_positions(), VoronoiVertexWeight::VoronoiVertexWeight(), blender::geometry::weld_edge_ctx_alloc_and_find_collapsed(), blender::geometry::weld_edge_find_doubles(), blender::io::grease_pencil::SVGExporter::write_bezier_path(), blender::io::obj::OBJWriter::write_edges_indices(), blender::io::grease_pencil::SVGExporter::write_path(), blender::io::grease_pencil::SVGExporter::write_polygon(), blender::io::grease_pencil::SVGExporter::write_polyline(), blender::io::grease_pencil::PDFExporter::write_stroke_to_polyline(), and blender::write_weights_for_drawing().

◆ intersects__linear_search()

template<typename T>
bool blender::Span< T >::intersects__linear_search ( Span< T > other) const
inlineconstexpr

Returns true when this and the other array have an element in common. This should only be called on small arrays, because it has a running time of O(n*m) where n and m are the sizes of the arrays.

Definition at line 358 of file BLI_span.hh.

References BLI_assert, contains(), data_, i, size_, Span(), and T.

◆ is_empty()

template<typename T>
bool blender::Span< T >::is_empty ( ) const
inlineconstexpr

Returns true if the size is zero.

Definition at line 260 of file BLI_span.hh.

References size_.

Referenced by blender::draw::accumululate_material_counts_mesh(), blender::bke::action_blend_write_make_legacy_channel_groups_listbase(), blender::bke::action_blend_write_make_legacy_fcurves_listbase(), blender::fn::multi_function::ProcedureBuilder::add_call(), blender::bke::mesh::add_corner_to_edge(), blender::bke::add_orco_mesh(), blender::nodes::GeometryNodesLazyFunctionLogger::add_thread_id_debug_message(), blender::ed::sculpt_paint::append_neighbors_to_vector(), blender::ed::object::arithmetic_mean(), attr_create_pointiness(), attr_create_random_per_island(), blender::io::grease_pencil::average_gradient_color(), blender::ed::object::bake_objects_check(), BKE_crazyspace_set_quats_editmesh(), BKE_crazyspace_set_quats_mesh(), BKE_defvert_normalize_ex(), BKE_editmesh_orco_tangents_calc(), BKE_editmesh_uv_tangents_calc(), BKE_mesh_foreach_mapped_loop(), BKE_report_path_template_errors(), BLI_lasso_is_edge_inside(), BLI_lasso_is_point_inside(), bm_edge_tag_from_smooth(), bm_edge_tag_from_smooth_and_set_sharp(), BM_mesh_bm_from_me(), bm_mesh_edges_sharp_tag(), bm_mesh_loops_calc_normals__multi_threaded(), bm_mesh_loops_calc_normals__single_threaded(), bm_mesh_loops_calc_normals_for_loop(), bm_mesh_loops_calc_normals_no_autosmooth(), BM_mesh_uvselect_set_elem_from_mesh(), bm_mesh_verts_calc_normals(), build_edge_mats(), blender::bke::build_mesh_positions(), blender::draw::calc_adjacency_mesh(), blender::ed::sculpt_paint::calc_area_normal_and_center_node_mesh(), blender::bke::mesh::calc_connecting_edge_info(), blender::geometry::ngon::calc_corner_tris(), blender::draw::calc_face_tri_starts_mesh(), blender::ed::sculpt_paint::auto_mask::calc_grids_factors(), blender::bke::mesh::calc_orco_tangents(), calc_ortho_extent(), blender::ed::sculpt_paint::islands::calc_topology_islands_mesh(), blender::draw::pbvh::calc_use_flat_layout(), blender::bke::mesh::calc_uv_tangents(), blender::ed::transform::calcEdgeSlide_mval_range(), blender::bke::curves::nurbs::calculate_evaluated_num(), blender::bke::calculate_evaluated_offsets(), blender::bke::curves::poly::calculate_tangents(), calculate_weld(), blender::ed::object::catalog_assets_draw(), blender::bke::idprop::tests::check_container_value(), blender::nodes::GeoNodeExecParams::check_input_geometry_set(), blender::ed::sculpt_paint::face_set::check_single_face_set(), cloth_apply_vgroup(), blender::ed::sculpt_paint::expand::colors_update_task(), blender::bke::id_hash::compute_linked_id_deep_hashes(), blender::ed::space_node::connect_nodes_to_aovs(), blender::LinearAllocator< Allocator >::construct_array_copy(), contarget_get_mesh_mat(), blender::ed::sculpt_paint::mask::copy_old_hidden_mask_mesh(), blender::io::hydra::copy_submesh(), blender::bke::mesh::corner_fan_space_define(), blender::bke::mesh::corner_tris_calc_impl(), blender::bke::mesh::corner_tris_calc_with_normals(), blender::draw::pbvh::create_lines_index_faces(), create_mesh(), blender::ed::sculpt_paint::face_set::create_op_exec(), blender::bke::create_orco_mesh(), blender::geometry::create_result_ids(), create_subd_mesh(), blender::bke::tests::GreasePencilInterpolate::create_test_curves(), blender::geometry::tests::create_test_curves(), blender::geometry::tests::create_test_curves(), blender::draw::pbvh::create_tri_index_mesh(), blender::ed::curves::curve_offsets_from_selection(), curve_point_as_float4(), curve_rename_fcurves(), blender::ed::sculpt_paint::face_set::delete_geometry(), blender::index_mask::difference_index_mask_segments(), blender::ed::sculpt_paint::geodesic::distances_create(), blender::ed::sculpt_paint::brushes::do_layer_brush(), do_versions_after_linking_450(), do_vpaint_brush_blur_loops(), do_vpaint_brush_blur_verts(), do_vpaint_brush_smear(), blender::ed::spreadsheet::SpreadsheetLayoutDrawer::draw_float_vector(), blender::ed::spreadsheet::SpreadsheetLayoutDrawer::draw_int_vector(), blender::ed::space_node::draw_link_errors(), blender::draw::drw_debug_polygon(), blender::draw::DRW_subdivide_loose_geom(), DRW_text_edit_mesh_measure_stats(), dynamicPaint_createUVSurface(), dynamicPaint_setInitialColor(), EDBM_preselect_edgering_update_from_edge(), EDBM_preselect_elem_update_from_single(), EDBM_unified_findnearest_from_raycast(), edgering_vcos_get(), edgering_vcos_get_pair(), blender::ed::sculpt_paint::boundary::edit_data_init_mesh(), blender::ed::sculpt_paint::face_set::edit_grow_shrink(), blender::ed::sculpt_paint::expand::enabled_state_to_bitmap(), blender::ed::sculpt_paint::cloth::ensure_nodes_constraints(), blender::draw::pbvh::DrawCacheImpl::ensure_tris_batches(), blender::bke::subdiv::eval_refine_from_mesh(), blender::index_mask::evaluate_coarse_difference(), blender::index_mask::evaluate_coarse_intersection(), blender::index_mask::evaluate_coarse_union(), blender::fn::evaluate_fields(), blender::bke::CurvesGeometry::evaluated_length_total_for_curve(), blender::bke::CurvesGeometry::evaluated_normals(), blender::ed::sculpt_paint::AddOperationExecutor::execute(), blender::ed::sculpt_paint::DensityAddOperationExecutor::execute(), blender::nodes::LazyFunctionForSimulationInputsUsage::execute_impl(), blender::geometry::execute_instances_tasks(), blender::geometry::execute_realize_curve_tasks(), blender::geometry::execute_realize_edit_data_tasks(), blender::geometry::execute_realize_grease_pencil_tasks(), blender::geometry::execute_realize_mesh_tasks(), blender::geometry::execute_realize_pointcloud_tasks(), export_hair_curves(), export_pointcloud(), export_pointcloud_motion(), blender::ed::curves::extend_range_by_1_within_bounds(), blender::draw::extract_edge_idx_loose_geom_subdiv(), blender::draw::extract_edituv_lines_mesh(), blender::draw::extract_edituv_points_mesh(), blender::draw::extract_lines_loose_geom_subdiv(), blender::draw::extract_lines_paint_mask_subdiv(), blender::draw::extract_loose_positions_subdiv(), blender::draw::extract_paint_overlay_flags(), blender::draw::extract_points_subdiv_mesh(), blender::draw::extract_vert_idx_loose_geom_subdiv(), blender::draw::extract_weights_mesh(), face_dupli_from_editmesh(), blender::ed::sculpt_paint::expand::face_state_get(), blender::ed::sculpt_paint::fake_neighbor_search_mesh(), blender::ed::sculpt_paint::fill_factor_from_hide(), blender::ed::sculpt_paint::fill_factor_from_hide_and_mask(), blender::draw::pbvh::fill_masks_grids(), blender::ed::sculpt_paint::fill_mesh_face_or_corner_attribute(), blender::bke::fill_mesh_positions(), blender::draw::pbvh::fill_normals_grids(), blender::fill_scene_range_chain(), blender::array_utils::find_all_ranges(), blender::find_closest_point(), blender::geometry::fit_poly_to_bezier_curves(), blender::index_mask::IndexMask::foreach_range(), blender::index_mask::IndexMask::foreach_segment_zipped(), blender::bke::pbvh::Tree::from_grids(), blender::bke::pbvh::Tree::from_mesh(), blender::index_mask::IndexMask::from_segments(), blender::ed::sculpt_paint::face_set::gather_hidden_face_sets(), blender::geometry::gather_realize_tasks_for_instances(), blender::geometry::gather_vert_attributes(), blender::geometry::gaussian_blur_1D(), blender::io::ply::generate_vertex_map(), blender::ed::sculpt_paint::face_set::gesture_apply_mesh(), blender::io::grease_pencil::get_average(), blender::io::grease_pencil::get_average(), blender::ed::sculpt_paint::boundary::get_closest_boundary_vert_mesh(), blender::nodes::get_compositor_group_output_extra_info(), blender::io::obj::OBJMesh::get_face_deform_group_index(), blender::bke::MeshVertexGroupsAttributeProvider::get_for_vertex_group_index(), blender::ed::sculpt_paint::mask::get_hidden_verts(), blender::nodes::ClosureIntermediateGraphSideEffectProvider::get_nodes_with_side_effects(), blender::nodes::node_geo_mesh_topology_edges_of_vertex_cc::EdgesOfVertInput::get_varray_for_context(), blender::nodes::node_geo_tool_selection_cc::SculptSelectionFieldInput::get_varray_for_context(), blender::ed::object::get_vert_def_nr(), blender::ed::greasepencil::get_visible_frames_for_layer(), blender::bke::mesh::SGLSLMeshToTangent::GetNormal(), blender::ed::sculpt_paint::pose::grow_factors_bmesh(), blender::ed::sculpt_paint::pose::grow_factors_grids(), blender::ed::sculpt_paint::pose::grow_factors_mesh(), blender::bke::mesh::handle_fan_result_and_custom_normals(), harmonic_ray_callback(), blender::bke::mesh::SGLSLMeshToTangent::has_uv(), imapaint_pick_uv(), blender::ed::sculpt_paint::auto_mask::init_face_sets_masking(), blender::ed::sculpt_paint::face_set::init_flood_fill(), blender::ed::transform::init_TransDataContainers(), blender::bke::curves::bezier::interpolate_to_evaluated(), blender::index_mask::intersect_index_mask_segments(), blender::nodes::Bundle::is_empty(), blender::animrig::Action::is_slot_animated(), blender::ed::sculpt_paint::boundary::is_vert_in_editable_boundary_mesh(), blender::ed::mesh::join_face_sets(), blender::geometry::join_geometries(), blender::ed::mesh::join_vertex_groups(), blender::nodes::node_geo_curve_to_points_cc::layer_pointclouds_to_instances(), blender::bke::pbvh::leaf_needs_material_split(), lineart_identify_corner_tri_feature_edges(), lineart_load_tri_task(), blender::bke::curves::nurbs::load_curve_knots(), blender::nodes::GeometryNodesLazyFunctionLogger::log_socket_value(), blender::nodes::Bundle::lookup_path(), make_child_duplis_faces_from_editmesh(), make_child_duplis_verts_from_editmesh(), make_duplis_faces(), make_duplis_verts(), blender::geometry::merge_layers(), blender::geometry::boolean::mesh_boolean_float(), blender::draw::mesh_buffer_cache_create_requested(), blender::draw::mesh_buffer_cache_create_requested_subdiv(), mesh_calc_islands_loop_face_uv(), mesh_calc_smoothgroups(), mesh_calc_tri_tessface(), blender::bke::mesh::mesh_edges_sharp_tag(), blender::geometry::mesh_merge_by_distance_connected(), blender::bke::mesh::mesh_normals_corner_custom_set(), blender::ed::sculpt_paint::hide::mesh_show_all(), blender::workbench::Instance::mesh_sync(), mesh_to_softbody(), blender::bounds::min_max(), blender::bounds::min_max(), blender::bounds::min_max_with_radii(), MOD_lineart_gpencil_generate_v3(), MOD_solidify_extrude_modifyMesh(), MOD_solidify_nonmanifold_modifyMesh(), blender::modify_drawing(), modify_mesh(), blender::modifyGeometry(), motionpath_check_can_use_keyframe_range(), blender::ed::object::multiresbake_check(), blender::ed::sculpt_paint::nearest_vert_calc_mesh(), blender::ed::sculpt_paint::smooth::neighbor_data_average_mesh_check_loose(), blender::ed::sculpt_paint::smooth::neighbor_position_average_interior_bmesh_impl(), blender::ed::space_node::node_add_error_message_button(), blender::ed::space_node::node_catalog_assets_draw(), blender::ed::space_node::node_draw_extra_info_panel(), blender::nodes::node_geo_deform_curves_on_surface_cc::node_geo_exec(), blender::bke::pbvh::node_raycast_grids(), blender::bke::pbvh::node_raycast_mesh(), blender::bke::pbvh::node_update_visibility_mesh(), blender::ed::sculpt_paint::hide::node_visible_verts(), blender::bke::mesh::normals_calc_corners(), object_mouse_select_menu(), blender::bits::or_bytes_into_bits(), blender::geometry::pack_islands(), blender::io::ply::parse_row_ascii(), blender::ed::sculpt_paint::hide::partialvis_masked_update_grids(), blender::bke::pbvh::pbvh_faces_node_nearest_to_ray(), blender::bke::pbvh::pbvh_grids_node_nearest_to_ray(), blender::ed::greasepencil::polyline_detect_corners(), blender::ed::greasepencil::polyline_fit_curve(), poselib_blend_poll(), proj_paint_add_slot(), blender::Stack< T, InlineBufferCapacity, RawAllocator >< RawVector< FunctionRef< void()>, 0 >, 0 >::push_multiple(), blender::seq::query_right_side_strips(), RE_bake_pixels_populate(), blender::io::usd::USDNurbsReader::read_curve_sample(), blender::io::ply::read_header(), blender::bke::curves::reader_for_vertex_group_index(), blender::geometry::reinsert_modified_geometry_recursive(), blender::geometry::resample_to_uniform(), blender::bke::mesh::reverse_indices_in_groups(), blender::nodes::node_geo_scale_elements_cc::reverse_indices_in_groups(), blender::geometry::ReverseUVSampler::ReverseUVSampler(), blender::geometry::sample_curve_uniform(), blender::nodes::node_geo_distribute_points_on_faces_cc::sample_mesh_surface(), blender::draw::sculpt_batches_get_ex(), blender::index_mask::segments_from_indices(), blender::ed::vse::sequencer_add_catalog_assets_draw(), blender::ed::vse::sequencer_retiming_keys_draw(), shrinkwrapParams_deform(), blender::ed::curves::snap_curves_to_surface::snap_curves_to_surface_exec_object(), blender::bke::greasepencil::Layer::sorted_keys_iterator_at(), blender::unique_sorted_indices::split_to_ranges_and_spans(), blender::ed::sculpt_paint::undo::store_face_sets(), blender::ed::sculpt_paint::undo::store_face_visibility(), blender::io::obj::OBJMesh::store_uv_coords_and_indices(), blender::ed::sculpt_paint::undo::store_vert_visibility_mesh(), blender::eevee::SyncModule::sync_mesh(), blender::tests::TEST(), blender::tests::TEST(), blender::tests::TEST(), timeline_cache_draw_geometry_nodes(), blender::seq::transform_seqbase_shuffle_time(), blender::bke::crazyspace::GeometryDeformation::translation_from_deformed_to_original(), blender::ed::curves::convert_to_particle_system::try_convert_single_object(), blender::io::grease_pencil::GreasePencilExporter::try_get_uniform_point_width(), ui_litem_grid_flow_compute(), blender::index_mask::union_index_mask_segments(), blender::bke::Instances::unique_ids(), blender::bke::node_tree_runtime::update_dangling_reroute_nodes(), blender::draw::pbvh::update_face_sets_mesh(), blender::bke::node_tree_runtime::update_group_output_node(), blender::draw::pbvh::update_normals_mesh(), blender::bke::NodeTreeMainUpdater::update_rooted(), blender::geometry::update_unselected_edges(), blender::bke::pbvh::update_visibility_faces(), vcos_get(), vcos_get_pair(), blender::ed::sculpt_paint::hide::vert_all_faces_visible_get(), blender::ed::sculpt_paint::face_set::vert_has_face_set(), blender::ed::sculpt_paint::face_set::vert_has_face_set(), blender::ed::sculpt_paint::face_set::vert_has_unique_face_set(), blender::ed::sculpt_paint::face_set::vert_has_unique_face_set(), blender::ed::sculpt_paint::vert_neighbors_get_mesh(), blender::ed::object::vgroup_grease_pencil_select_verts(), blender::ed::object::vgroup_select_verts(), waveModifier_do(), weight_paint_set(), blender::geometry::weld_edge_find_doubles(), and WM_drag_create_path_data().

◆ last()

template<typename T>
const T & blender::Span< T >::last ( const int64_t n = 0) const
inlineconstexpr

Returns a reference to the nth last element. This invokes undefined behavior when the span is too short.

Definition at line 325 of file BLI_span.hh.

References BLI_assert, data_, size_, and T.

Referenced by blender::length_parameterize::accumulate_lengths(), blender::bke::action_blend_write_make_legacy_channel_groups_listbase(), BLI_lasso_is_edge_inside(), blender::geometry::build_point_to_sample_map(), blender::geometry::calculate_angles(), blender::bke::curves::bezier::calculate_auto_handles(), blender::geometry::calculate_directions(), blender::bke::curves::bezier::calculate_evaluated_positions(), blender::bke::curves::poly::calculate_normals_minimum(), blender::bke::curves::poly::calculate_tangents(), blender::geometry::catmull_rom_to_bezier_handles(), blender::ed::sculpt_paint::greasepencil::compute_auto_flip(), blender::geometry::compute_curve_trim_parameters(), blender::ed::space_node::connect_nodes_to_aovs(), blender::bke::curves::nurbs::copy_custom_knots(), blender::ed::curves::copy_data_to_geometry(), blender::ed::greasepencil::create_drawing_data(), blender::bke::tests::GreasePencilInterpolate::create_test_curves(), blender::geometry::tests::create_test_curves(), blender::geometry::tests::create_test_curves(), blender::ed::curves::curve_offsets_from_selection(), blender::io::obj::detect_clamped_endpoint(), blender::io::obj::detect_knot_mode_bezier_clamped(), blender::io::obj::detect_knot_mode_cyclic(), blender::io::obj::detect_knot_mode_uniform(), blender::draw::drw_debug_polygon(), blender::bke::CurvesGeometry::evaluated_length_total_for_curve(), blender::ed::curves::extend_range_by_1_within_bounds(), blender::index_mask::IndexMask::from_segments(), blender::ed::space_node::get_margin_to_bottom(), blender::ed::greasepencil::get_visible_frames_for_layer(), blender::bke::mesh::handle_fan_result_and_custom_normals(), blender::bke::curves::catmull_rom::interpolate_to_evaluated(), blender::length_parameterize::interpolate_to_masked(), blender::ed::curves::invert_ranges(), blender::bke::curves::bezier::last_cyclic_segment_is_vector(), blender::geometry::limit_radii(), blender::geometry::lookup_point_bezier(), blender::geometry::lookup_point_polygonal(), blender::geometry::lookup_point_uniform_spacing(), blender::bke::mesh::mesh_normals_corner_custom_set(), blender::ed::sculpt_paint::greasepencil::morph_points_to_curve(), blender::ed::space_node::node_errors_tooltip_fn(), blender::bke::mesh::normal_calc_ngon(), blender::geometry::nurbs_to_bezier_assign(), operator<<(), blender::ed::viewer_path::parse_geometry_nodes_viewer(), blender::ed::greasepencil::primitive_calulate_curve_positions(), blender::length_parameterize::sample_at_length(), blender::nodes::node_geo_curve_sample_cc::sample_indices_and_factors_to_compressed(), blender::nodes::node_geo_curve_sample_cc::sample_indices_and_lengths(), blender::length_parameterize::sample_uniform(), blender::length_parameterize::sample_uniform_reverse(), blender::tests::TEST(), blender::tests::TEST(), blender::length_parameterize::tests::test_uniform_lengths(), blender::geometry::trim_sample_length(), ui_layout_introspect_items(), blender::io::grease_pencil::SVGExporter::write_bezier_path(), blender::io::obj::OBJWriter::write_nurbs_curve(), and blender::write_stroke_transforms().

◆ operator[]()

template<typename T>
const T & blender::Span< T >::operator[] ( int64_t index) const
inlineconstexpr

Access an element in the array. This invokes undefined behavior when the index is out of bounds.

Definition at line 242 of file BLI_span.hh.

References BLI_assert, data_, size_, and T.

◆ rbegin()

template<typename T>
std::reverse_iterator< const T * > blender::Span< T >::rbegin ( ) const
inlineconstexpr

Definition at line 229 of file BLI_span.hh.

References end().

Referenced by blender::tests::TEST().

◆ rend()

template<typename T>
std::reverse_iterator< const T * > blender::Span< T >::rend ( ) const
inlineconstexpr

Definition at line 233 of file BLI_span.hh.

References begin().

Referenced by blender::tests::TEST().

◆ size()

template<typename T>
int64_t blender::Span< T >::size ( ) const
inlineconstexpr

Returns the number of elements in the referenced array.

Definition at line 252 of file BLI_span.hh.

References size_.

Referenced by blender::bke::mesh::accumulate_fan_normal(), blender::length_parameterize::accumulate_lengths(), blender::ed::sculpt_paint::accumulate_weighted_average_position(), blender::bke::action_blend_write_make_legacy_channel_groups_listbase(), blender::bke::action_blend_write_make_legacy_fcurves_listbase(), blender::ed::sculpt_paint::greasepencil::PaintOperationExecutor::active_smoothing(), blender::io::alembic::add_bezier_control_point(), blender::io::usd::add_bezier_control_point(), blender::ed::curves::add_curves(), blender::meshintersect::add_face_constraints(), blender::nodes::node_geo_instance_on_points_cc::add_instances_from_component(), add_interp_verts_copy_edges_to_new_mesh(), add_interpolated_faces_to_new_mesh(), blender::add_missing_data_block_mappings(), blender::geometry::PackIsland::add_polygon(), animsys_blend_fcurves_quaternion(), animsys_quaternion_evaluate_fcurves(), animviz_depsgraph_build(), blender::ed::curves::append_point_knots(), blender::ed::sculpt_paint::cloth::apply_filter_forces_grids(), blender::ed::sculpt_paint::mask::apply_mask_grids(), blender::ed::sculpt_paint::apply_translations(), blender::ed::sculpt_paint::apply_translations(), blender::ed::sculpt_paint::apply_translations(), apply_weights_vertex_normal(), blender::ed::object::arithmetic_mean(), blender::ed::sculpt_paint::greasepencil::arithmetic_mean(), arrayModifier_doArray(), blender::ed::asset::asset_operation_get_id_vec_stats_from_ids(), attr_create_pointiness(), blender::ed::sculpt_paint::smooth::average_data_bmesh(), blender::ed::sculpt_paint::smooth::average_data_grids(), blender::io::grease_pencil::average_gradient_color(), blender::ed::sculpt_paint::smooth::average_positions(), blender::gpu::ShaderCompiler::batch_compile(), BKE_armature_deform_coords_with_curves(), BKE_armature_deform_coords_with_mesh(), BKE_brush_calc_curve_factors(), BKE_defvert_extract_vgroup_to_edgeweights(), BKE_defvert_extract_vgroup_to_loopweights(), BKE_editmesh_uv_tangents_calc(), BKE_fcurve_pathcache_create(), BKE_mesh_calc_islands_loop_face_edgeseam(), BKE_mesh_is_valid(), BKE_mesh_legacy_bevel_weight_to_layers(), BKE_mesh_legacy_convert_polys_to_offsets(), BKE_mesh_legacy_edge_crease_to_layers(), BKE_mesh_orco_verts_get(), BKE_mesh_remap_calc_difference_from_mesh(), BKE_mesh_remap_calc_edges_from_mesh(), BKE_mesh_remap_calc_loops_from_mesh(), BKE_mesh_remap_calc_verts_from_mesh(), BKE_mesh_runtime_is_valid(), BKE_mesh_to_curve_nurblist(), BKE_mesh_validate(), BKE_object_as_kdtree(), BKE_object_data_transfer_ex(), BLI_convexhull_2d(), BLI_convexhull_aabb_fit_points_2d(), BLI_lasso_is_point_inside(), blender::ed::sculpt_paint::smooth::blur_geometry_data_array(), bm_face_create_from_mpoly(), blender::animrig::bonecolls_copy_expanded_flag(), blender::ed::greasepencil::build_curves_2d_bvh_from_visible(), build_edge_mats(), blender::nodes::node_geo_blur_attribute_cc::build_edge_to_edge_by_vert_map(), blender::nodes::node_geo_distribute_points_on_faces_cc::build_kdtree(), blender::nodes::node_geo_interpolate_curves_cc::build_kdtrees_for_root_positions(), blender::bke::build_mesh_positions(), blender::fn::build_multi_function_procedure_for_fields(), blender::nodes::node_geo_extrude_mesh_cc::build_vert_to_edge_map(), C_BVHTree_FromObject(), blender::ed::sculpt_paint::calc_area_normal_and_center_node_bmesh(), blender::ed::sculpt_paint::calc_area_normal_and_center_node_grids(), blender::ed::sculpt_paint::boundary::calc_average_position(), blender::ed::sculpt_paint::boundary::calc_average_position(), blender::ed::sculpt_paint::boundary::calc_bend_grids(), blender::ed::sculpt_paint::boundary::calc_bend_position(), blender::ed::sculpt_paint::calc_brush_cube_distances(), blender::ed::sculpt_paint::calc_brush_distances_squared(), blender::ed::sculpt_paint::cloth::calc_brush_simulation_falloff(), blender::ed::sculpt_paint::calc_brush_texture_factors(), blender::ed::sculpt_paint::cloth::calc_constraint_factors(), blender::geometry::calc_corner_groups_for_vertex(), blender::geometry::ngon::calc_corner_tris(), blender::geometry::quad::calc_corner_tris(), blender::io::usd::calc_curve_offsets(), calc_deltas(), blender::ed::sculpt_paint::brushes::calc_distances(), blender::ed::sculpt_paint::filter::calc_enhance_details_filter(), blender::ed::sculpt_paint::filter::calc_erase_displacement_filter(), blender::bke::mesh::calc_face_as_quad_map(), blender::bke::pbvh::calc_face_bounds(), blender::ed::sculpt_paint::auto_mask::calc_face_factors(), blender::io::obj::OBJMesh::calc_face_order(), blender::ed::sculpt_paint::calc_factors_common_from_orig_data_grids(), blender::ed::sculpt_paint::calc_factors_common_grids(), blender::ed::sculpt_paint::calc_front_face(), blender::ed::sculpt_paint::boundary::calc_grab_grids(), blender::ed::sculpt_paint::boundary::calc_grab_position(), blender::ed::sculpt_paint::pose::calc_grids(), blender::ed::sculpt_paint::filter::calc_inflate_filter(), blender::ed::sculpt_paint::boundary::calc_inflate_grids(), blender::ed::sculpt_paint::boundary::calc_inflate_position(), blender::geometry::calc_new_edges(), blender::bke::node_structure_type_inferencing::calc_node_interface(), blender::bke::mesh::calc_orco_tangents(), blender::ed::sculpt_paint::pose::calc_pose_origin_and_factor_grids(), blender::ed::sculpt_paint::pose::calc_pose_origin_and_factor_mesh(), blender::geometry::calc_position_with_interpolation(), blender::geometry::calc_position_without_interpolation(), blender::calc_radius_limit(), blender::geometry::calc_radius_with_interpolation(), blender::ed::sculpt_paint::filter::calc_random_filter(), blender::ed::sculpt_paint::filter::calc_relax_face_sets_filter(), blender::ed::sculpt_paint::filter::calc_relax_filter(), blender::ed::sculpt_paint::smooth::calc_relaxed_translations_bmesh(), blender::ed::sculpt_paint::smooth::calc_relaxed_translations_faces(), blender::ed::sculpt_paint::filter::calc_scale_filter(), blender::ed::sculpt_paint::pose::calc_segment_translations(), blender::ed::sculpt_paint::filter::calc_sharpen_filter(), blender::ed::sculpt_paint::boundary::calc_slide_grids(), blender::ed::sculpt_paint::boundary::calc_slide_position(), blender::ed::sculpt_paint::filter::calc_smooth_filter(), blender::ed::sculpt_paint::boundary::calc_smooth_grids(), blender::ed::sculpt_paint::boundary::calc_smooth_position(), blender::bke::node_field_inferencing::calc_socket_states(), blender::ed::sculpt_paint::filter::calc_sphere_filter(), blender::ed::sculpt_paint::filter::calc_surface_smooth_filter(), blender::ed::sculpt_paint::boundary::calc_twist_grids(), blender::ed::sculpt_paint::boundary::calc_twist_position(), blender::nodes::node_geo_uv_tangent_cc::calc_uv_tangents_simple(), blender::ed::sculpt_paint::cloth::calc_vert_indices_grids(), blender::ed::sculpt_paint::calc_vert_neighbors(), blender::ed::sculpt_paint::calc_vert_neighbors(), blender::ed::sculpt_paint::calc_vert_neighbors_interior(), blender::ed::sculpt_paint::calc_vert_neighbors_interior_impl(), blender::draw::calc_visible_loose_edge_indices(), blender::ed::sculpt_paint::cloth::calc_visible_vert_indices_grids(), blender::bke::curves::bezier::calculate_auto_handles(), blender::bke::curves::nurbs::calculate_basis_for_point(), blender::bke::curves::bezier::calculate_evaluated_offsets(), blender::bke::curves::bezier::calculate_evaluated_positions(), blender::length_parameterize::tests::calculate_lengths(), blender::bke::curves::nurbs::calculate_multiplicity_sequence(), blender::bke::curves::poly::calculate_normals_minimum(), blender::bke::curves::poly::calculate_normals_z_up(), blender::bke::curves::poly::calculate_tangents(), blender::geometry::catmull_rom_to_bezier_handles(), blender::geometry::catmull_rom_to_nurbs_positions(), blender::bke::idprop::tests::check_container_value(), blender::draw::detail::PassBase< DrawCommandBufType >::clear_multi(), blender::ed::sculpt_paint::clip_and_lock_translations(), cloth_from_mesh(), blender::ed::sculpt_paint::greasepencil::compute_auto_flip(), blender::geometry::compute_curve_trim_parameters(), compute_interpolated_faces(), compute_masked_verts(), blender::ed::sculpt_paint::ScaleCurvesEffect::compute_poly_curve_length(), computed_masked_faces(), blender::ed::space_node::connect_nested_node_to_node(), blender::LinearAllocator< Allocator >::construct_array_copy(), blender::nodes::node_geo_input_mesh_edge_vertices_cc::construct_edge_positions_gvarray(), blender::nodes::node_geo_input_mesh_edge_vertices_cc::construct_edge_verts_gvarray(), construct_param_handle_subsurfed(), blender::nodes::node_geo_uv_unwrap_cc::construct_uv_gvarray(), blender::bke::compare_geometry::construct_vert_mapping(), blender::gpu::convert(), convexhull_2d_as_array(), convexhull_points_from_map(), blender::array_utils::copy(), blender::array_utils::copy(), blender::bke::bake::copy_bake_items_to_socket_values(), blender::bke::curves::nurbs::copy_custom_knots(), blender::ed::curves::copy_data_to_geometry(), blender::bke::greasepencil::copy_drawing_array(), blender::MutableSpan< T >::copy_from(), copy_masked_edges_to_new_mesh(), copy_masked_verts_to_new_mesh(), blender::bke::copy_profile_point_data_to_mesh_verts(), blender::io::hydra::copy_submesh(), correctivesmooth_modifier_do(), count_fcurves_hidden_by_filter(), blender::bke::pbvh::count_grid_quads(), blender::ed::transform::curves::create_aligned_handles_masks(), blender::bke::idprop::create_array(), blender::geometry::create_curve_from_vert_indices(), blender::io::obj::OBJCurvesTest::create_curves(), blender::ed::greasepencil::create_curves_outline(), blender::ed::greasepencil::create_drawing_data(), blender::draw::create_edit_points_position(), blender::draw::create_edit_points_position_vbo(), blender::geometry::create_id_index_map(), blender::draw::pbvh::create_lines_index_grids(), blender::geometry::create_merged_mesh(), create_mesh(), blender::geometry::create_nurbs_to_bezier_handles(), blender::bke::tests::GreasePencilInterpolate::create_test_curves(), blender::geometry::tests::create_test_curves(), blender::geometry::tests::create_test_curves(), blender::bke::create_tree_from_tris(), blender::draw::pbvh::create_tri_index_grids(), blender::draw::pbvh::create_tri_index_mesh(), blender::geometry::create_value_to_first_index_map(), blender::ed::transform::curves::createTransCurvesVerts(), blender::ed::transform::greasepencil::createTransGreasePencilVerts(), blender::ed::transform::curves::curve_connected_point_distances(), blender::ed::curves::curve_offsets_from_selection(), blender::ed::transform::curves::curve_populate_trans_data_structs(), blender::ed::sculpt_paint::greasepencil::EraseOperationExecutor::curves_intersections_and_points_sides(), blender::geometry::curves_merge_endpoints(), blender::ed::transform::curves::cyclic_curve_connected_point_distances(), blender::gpu::ShaderInterface::debug_print(), blender::ed::sculpt_paint::mask::decrease_contrast_mask_grids(), deform_verts(), blender::io::obj::detect_knot_mode_bezier_clamped(), blender::io::obj::detect_knot_mode_uniform(), blender::io::usd::determine_knots_mode(), blender::index_mask::difference_index_mask_segments(), blender::draw::discard_buffers(), blender::bke::discover_tree_zones(), blender::ed::sculpt_paint::geodesic::distances_create(), blender::nodes::node_geo_curve_fill_cc::do_cdt(), blender::ed::sculpt_paint::cloth::do_simulation_step(), blender::io::usd::USDPointInstancerWriter::do_write(), blender::ed::spreadsheet::SpreadsheetLayoutDrawer::draw_byte_color(), blender::ed::spreadsheet::SpreadsheetLayoutDrawer::draw_float_vector(), blender::ed::spreadsheet::SpreadsheetLayoutDrawer::draw_int_vector(), blender::ed::space_node::draw_link_errors(), blender::draw::draw_subdiv_init_origindex_buffer(), blender::draw::DRW_mesh_batch_cache_get_surface_shaded(), DRW_select_buffer_context_create(), blender::draw::DRW_subdivide_loose_geom(), blender::nodes::node_geo_duplicate_elements_cc::duplicate_edges(), dynamicPaint_createUVSurface(), dynamicPaint_setInitialColor(), EDBM_edge_find_nearest_ex(), EDBM_face_find_nearest_ex(), edbm_selectmode_sync_multi_ex(), EDBM_vert_find_nearest_ex(), blender::bke::calc_edges::edge_map_offsets(), blender::geometry::edges_to_curve_point_indices(), blender::ed::sculpt_paint::boundary::edit_data_init_grids(), blender::ed::sculpt_paint::boundary::edit_data_init_mesh(), blender::ed::sculpt_paint::face_set::edit_fairing(), blender::fn::evaluate_fields(), blender::index_mask::evaluate_short_unknown_segments_exactly(), blender::draw::ParticleDrawSource::evaluated_points_by_curve(), blender::geometry::execute_instances_tasks(), blender::nodes::execute_multi_function_on_value_variant__list(), blender::geometry::execute_realize_curve_tasks(), blender::geometry::execute_realize_grease_pencil_task(), blender::geometry::execute_realize_grease_pencil_tasks(), blender::geometry::execute_realize_mesh_task(), blender::geometry::execute_realize_mesh_tasks(), blender::geometry::execute_realize_pointcloud_tasks(), blender::io::usd::export_deform_verts(), export_hair_curves(), export_pointcloud(), export_pointcloud_motion(), blender::draw::extract_edge_idx_loose_geom_subdiv(), blender::draw::extract_edituv_tris_bm(), blender::draw::extract_edituv_tris_mesh(), blender::draw::extract_lines_bm(), blender::draw::extract_points_subdiv_bm(), blender::draw::extract_points_subdiv_mesh(), blender::draw::extract_sculpt_data_subdiv(), blender::draw::extract_tris_mesh(), blender::draw::extract_vert_idx_loose_geom_subdiv(), blender::draw::extract_vert_normals(), blender::draw::extract_vert_normals_mesh(), blender::draw::extract_weights_mesh(), blender::nodes::node_geo_extrude_mesh_cc::extrude_individual_mesh_faces(), blender::ed::curves::extrude_knots(), blender::nodes::node_geo_extrude_mesh_cc::extrude_mesh_edges(), blender::nodes::node_geo_extrude_mesh_cc::extrude_mesh_face_regions(), blender::bke::mesh::face_angles_calc(), blender::bke::mesh::face_area_calc(), blender::bke::mesh::face_area_centroid_calc(), blender::bke::mesh::face_center_calc(), blender::bke::mesh::face_center_calc_ngon(), face_dupli_from_mesh(), face_edge_loop_islands_calc(), blender::bke::mesh::face_normal_calc(), blender::animrig::Channelbag::fcurve_create_many(), blender::csv_parse::CsvRecord::field_str(), blender::ed::sculpt_paint::fill_factor_from_hide(), blender::ed::sculpt_paint::fill_factor_from_hide_and_mask(), blender::draw::pbvh::fill_masks_grids(), blender::draw::pbvh::fill_positions_grids(), blender::ed::sculpt_paint::auto_mask::fill_topology_automasking_factors_grids(), blender::ed::sculpt_paint::auto_mask::fill_topology_automasking_factors_mesh(), blender::ed::sculpt_paint::undo::compression::filter_compress(), blender::ed::sculpt_paint::undo::compression::filter_decompress(), blender::ed::sculpt_paint::brushes::filter_plane_side_factors(), blender::ed::sculpt_paint::filter_region_clip_factors(), blender::ed::sculpt_paint::boundary::filter_uninitialized_verts(), blender::ed::sculpt_paint::filter_verts_outside_symmetry_area(), blender::ed::sculpt_paint::face_set::filter_verts_with_unique_face_sets_grids(), blender::array_utils::find_all_ranges(), find_all_ranges_test(), blender::geometry::find_connected_ranges(), blender::geometry::find_curve_neighbors(), blender::bke::subdiv::find_edge_neighbors(), blender::csv_parse::detail::find_end_of_quoted_field(), blender::csv_parse::detail::find_end_of_simple_field(), blender::ed::greasepencil::find_lowest_common_ancestor(), blender::ed::curves::convert_to_particle_system::find_mface_for_root_position(), blender::io::obj::find_rightmost_span(), blender::geometry::fit_poly_to_bezier_curves(), blender::io::obj::fixup_invalid_face(), blender::io::csv::flatten_valid_attribute_chunks(), blender::ed::sculpt_paint::hide::flush_face_changes_node(), blender::index_mask::IndexMask::foreach_segment_zipped(), blender::index_mask::IndexMask::from_bools(), blender::VArray< T >::from_derived_span(), blender::nodes::node_geo_scale_elements_cc::from_indices_large_groups(), blender::index_mask::IndexMask::from_segments(), blender::geometry::gather_attribute_propagation_components_with_custom_depths(), blender::ed::sculpt_paint::gather_data_grids(), blender::ed::sculpt_paint::gather_data_grids(), blender::ed::sculpt_paint::gather_grids_positions(), blender::nodes::node_geo_scale_elements_cc::gather_groups(), blender::geometry::gaussian_blur_1D(), blender::render::texturemargin::generate_margin(), blender::bke::generate_unique_instance_ids(), blender::io::ply::generate_vertex_map(), blender::ed::sculpt_paint::expand::geodesic_falloff_create(), blender::ed::sculpt_paint::geometry_preview_lines_update(), blender::nodes::DOutputSocket::get_active_corresponding_group_output_socket(), blender::io::grease_pencil::get_average(), blender::io::grease_pencil::get_average(), blender::ed::sculpt_paint::boundary::get_closest_boundary_vert_grids(), blender::ed::sculpt_paint::boundary::get_closest_boundary_vert_mesh(), blender::ed::spreadsheet::ClosureSignatureDataSource::get_column_values(), blender::nodes::get_compositor_group_output_extra_info(), get_dupliface_transform_from_coords(), blender::ed::spreadsheet::get_geometry_set_for_instance_ids(), blender::get_legacy_stroke_matrix(), blender::bke::greasepencil::get_local_to_stroke_matrix(), blender::bke::node_field_inferencing::get_node_field_inferencing_interface(), blender::io::alembic::get_topology(), blender::nodes::node_geo_input_instance_bounds_cc::InstanceBoundsField::get_varray_for_context(), blender::nodes::node_geo_mesh_topology_corners_of_edge_cc::CornersOfEdgeInput::get_varray_for_context(), blender::nodes::node_geo_mesh_topology_edges_of_corner_cc::CornerPreviousEdgeFieldInput::get_varray_for_context(), blender::nodes::node_geo_mesh_topology_edges_of_vertex_cc::EdgesOfVertInput::get_varray_for_context(), blender::nodes::node_geo_uv_tangent_cc::TangentFieldInput::get_varray_for_context(), blender::bke::mesh::SGLSLMeshToTangent::GetNumFaces(), gpu_select_query_end(), BlenderDisplayDriver::graphics_interop_get_device(), blender::ed::greasepencil::grease_pencil_delete_breakdown_frames_exec(), blender::ed::sculpt_paint::hide::grid_hide_update(), blender::csv_parse::guess_next_record_start(), blender::bke::mesh::handle_fan_result_and_custom_normals(), blender::nodes::id_property_int_update_enum_items(), blender::ed::sculpt_paint::pose::ik_chain_init_face_sets_mesh(), blender::io::usd::import_blendshapes(), blender::io::fbx::import_edges(), blender::ed::sculpt_paint::mask::increase_contrast_mask_grids(), blender::array_utils::indexed_data_equal(), blender::ed::sculpt_paint::boundary::indices_init_grids(), blender::ed::sculpt_paint::boundary::indices_init_mesh(), blender::nodes::socket_usage_inference::infer_all_sockets_usage(), blender::nodes::socket_usage_inference::infer_group_interface_inputs_usage(), blender::ed::sculpt_paint::auto_mask::init_boundary_masking_grids(), blender::ed::sculpt_paint::face_set::init_flood_fill(), blender::ed::curves::init_selectable_foreach(), blender::ed::transform::init_TransDataContainers(), blender::ed::sculpt_paint::paint::image::init_uv_primitives_brush_test(), blender::ed::sculpt_paint::greasepencil::WeightPaintOperation::init_weight_data_for_drawings(), initSystem(), blender::animrig::insert_keyframes(), blender::insert_keys_reverse(), blender::draw::interpolate(), blender::draw::interpolate(), blender::geometry::interpolate_catmull_rom(), blender::geometry::interpolate_curves_with_samples(), blender::bke::curves::bezier::interpolate_to_evaluated(), blender::bke::curves::catmull_rom::interpolate_to_evaluated(), blender::bke::curves::catmull_rom::interpolate_to_evaluated(), blender::length_parameterize::interpolate_to_masked(), blender::index_mask::intersect_index_mask_segments(), blender::memory_cache::invalidate_outdated_caches_if_necessary(), blender::geometry::invert_permutation(), blender::nodes::node_geo_sort_elements_cc::invert_permutation(), blender::ed::curves::invert_ranges(), blender::offset_indices::GroupedSpan< T >::is_empty(), blender::ed::greasepencil::join_curves(), blender::geometry::join_curves(), blender::ed::greasepencil::join_geometries_with_transform(), blender::ed::greasepencil::join_geometries_with_transforms(), blender::geometry::join_instances(), blender::eevee::LightBake::LightBake(), blender::io::obj::linked_sockets_to_dest_id(), list_of_lists_from_arrays(), blender::io::ply::load_custom_attributes(), blender::io::ply::load_face_element(), blender::io::ply::load_plydata(), blender::gpu::FrameBuffer::load_store_config_array(), blender::io::ply::load_tristrips_element(), blender::nodes::Bundle::lookup_path(), blender::geometry::lookup_point_uniform_spacing(), blender::nodes::node_geo_bake_cc::make_bake_socket_config(), blender::nodes::node_geo_simulation_cc::make_bake_socket_config(), blender::bke::node_tree_reference_lifetimes::make_reference_lifetimes_info(), blender::ed::sculpt_paint::mask::mask_equals_array_bmesh(), blender::ed::sculpt_paint::mask::mask_equals_array_grids(), blender::string_search::match_word_initials(), blender::geometry::merge_customdata_all(), blender::geometry::merge_groups_create(), blender::ed::greasepencil::merge_layers(), blender::geometry::merge_layers(), merge_uvs_for_vertex(), blender::geometry::boolean::mesh_bm_concat(), blender::geometry::boolean::mesh_boolean(), blender::geometry::boolean::mesh_boolean_float(), mesh_calc_eigen_matrix(), blender::bke::mesh::mesh_calc_face_volume_centroid_with_reference_center(), mesh_calc_hq_normal(), mesh_calc_islands_loop_face_uv(), blender::geometry::mesh_copy_selection(), blender::geometry::mesh_copy_selection_keep_verts(), blender::ed::object::mesh_data_to_grease_pencil(), blender::geometry::mesh_edges_to_curves_convert(), blender::ed::sculpt_paint::filter::mesh_filter_sharpen_init(), mesh_get_boundaries(), blender::bke::mesh::mesh_normals_corner_custom_set(), blender::bke::mesh_remesh_reproject_attributes(), blender::ed::transform::mesh_uv_group_is_inner(), blender::bounds::min_max(), blender::bounds::min_max_with_radii(), blender::ed::sculpt_paint::mask::mix_new_masks(), blender::ed::sculpt_paint::mask::mix_new_masks(), mix_normals(), MOD_lineart_gpencil_generate_v3(), modify_mesh(), blender::ed::sculpt_paint::greasepencil::morph_points_to_curve(), blender::bke::bake::move_bake_items_to_socket_values(), blender::fn::multi_function::procedure_optimization::move_destructs_up(), blender::ed::sculpt_paint::smooth::neighbor_color_average(), blender::ed::sculpt_paint::smooth::neighbor_position_average_interior_bmesh_impl(), blender::ed::sculpt_paint::smooth::neighbor_position_average_interior_grids_impl(), blender::nodes::node_geo_index_switch_cc::node_declare(), blender::ed::space_node::node_draw_extra_info_panel(), blender::ed::space_node::node_draw_zones_and_frames(), blender::nodes::node_geo_grease_pencil_to_curves_cc::node_geo_exec(), node_group_output_extra_info(), normalEditModifier_do_directional(), normalEditModifier_do_radial(), blender::ed::greasepencil::normalize_vertex_weights(), blender::bke::mesh::normals_calc_corners(), blender::geometry::nurbs_to_bezier_assign(), blender::ed::object::object_origin_set_exec(), operator<<(), blender::gpu::GLSources::operator=(), operator==, blender::bits::or_bytes_into_bits(), blender::geometry::pack_islands(), blender::geometry::pack_islands_margin_fraction(), blender::geometry::pack_islands_scale_margin(), blender::bke::node_interface::item_types::panel_init(), blender::csv_parse::detail::parse_record_fields(), blender::csv_parse::parse_records(), blender::io::ply::parse_row_ascii(), blender::interface::internal::paste_property_drivers(), blender::bke::pbvh::uv_islands::Fan::path_between(), blender::geometry::point_merge_by_distance(), blender::draw::pointcloud_extract_position_and_radius(), blender::ed::transform::points_build_sources_preview_origin(), blender::draw::ParticleDrawSource::points_by_curve(), blender::geometry::poly_find_doubles(), blender::ed::greasepencil::polyline_detect_corners(), blender::ed::greasepencil::polyline_fit_curve(), blender::gpu::ShaderCompiler::precompile_specializations(), blender::ed::sculpt_paint::DensityAddOperationExecutor::prepare_curve_roots_kdtrees(), blender::bke::node_tree_reference_lifetimes::prepare_required_data_for_closure_outputs(), blender::bke::node_tree_reference_lifetimes::prepare_required_data_for_group_outputs(), blender::gpu::Shader::print_log(), blender::geometry::propagate_edge_attributes(), blender::geometry::propagate_vert_attributes(), property_search_all_tabs(), property_search_move_to_next_tab_with_results(), blender::Stack< T, InlineBufferCapacity, RawAllocator >< RawVector< FunctionRef< void()>, 0 >, 0 >::push_multiple(), PyC_Tuple_Pack_Bool(), PyC_Tuple_Pack_F32(), PyC_Tuple_Pack_F64(), PyC_Tuple_Pack_I32(), PyC_Tuple_Pack_I32FromBool(), blender::ed::sculpt_paint::filter::randomize_factors(), RE_engine_get_current_tiles(), blender::io::usd::USDNurbsReader::read_curve_sample(), blender::io::alembic::read_edge_creases(), blender::io::usd::USDPointsReader::read_geometry(), blender::io::ply::read_header(), blender::bke::remember_deformed_grease_pencil_if_necessary(), blender::geometry::reorder_attribute_domain(), reorder_attribute_domain(), blender::geometry::reorder_attribute_groups(), blender::geometry::reorder_customdata(), blender::geometry::reorder_customdata_groups(), blender::reorder_cyclic_curve_points(), reorder_layer_data(), blender::ed::sculpt_paint::reset_translations_to_original(), blender::ed::curves::resize_curves(), blender::bke::curves::bezier::retrieve_all_positions(), blender::bke::mesh::reverse_indices_in_groups(), blender::nodes::node_geo_scale_elements_cc::reverse_indices_in_groups(), blender::geometry::ReverseUVSampler::ReverseUVSampler(), blender::io::obj::OBJCurvesTest::run_nurbs_test(), blender::length_parameterize::sample_at_length(), blender::length_parameterize::sample_at_lengths(), blender::geometry::sample_bezier_curve_positions_handles(), blender::ed::sculpt_paint::greasepencil::sample_curve_2d(), blender::geometry::sample_curve_attribute(), blender::geometry::sample_curve_padded(), blender::geometry::sample_curve_positions_and_handles(), blender::geometry::ReverseUVSampler::sample_many(), blender::length_parameterize::sample_uniform(), blender::length_parameterize::sample_uniform_reverse(), blender::ed::sculpt_paint::scale_factors(), blender::array_utils::scatter(), blender::array_utils::scatter(), blender::ed::sculpt_paint::scatter_data_bmesh(), blender::ed::sculpt_paint::scatter_data_grids(), blender::ed::sculpt_paint::scatter_data_mesh(), blender::bke::pbvh::uv_islands::Fan::score(), blender::ed::sculpt_paint::face_set::sculpt_check_unique_face_set_for_edge_in_base_mesh(), blender::index_mask::segments_from_indices(), selection_array_from_vertex_group(), blender::ed::curves::selection_attribute_writer_by_name(), blender::VMutableArray< T >::set_all(), blender::fn::multi_function::CallInstruction::set_params(), blender::io::obj::set_property_of_socket(), blender::ed::sculpt_paint::mask::sharpen_mask_grids(), blender::bke::shrinkwrap::shrinkwrap_build_boundary_data(), blender::geometry::simplify_curve_attribute(), slice(), slice_safe(), blender::ed::sculpt_paint::mask::smooth_mask_grids(), blender::geometry::curve_constraints::solve_length_constraints(), blender::bke::compare_geometry::sort_edges(), blender::bke::compare_geometry::sort_per_set_based_on_attributes(), Span(), Span(), Span(), Span(), Span(), blender::geometry::split_edges(), blender::csv_parse::split_into_aligned_chunks(), blender::ed::geometry::store_attributes_to_shape_keys(), blender::io::obj::OBJMesh::store_normal_coords_and_indices(), blender::io::obj::OBJMesh::store_uv_coords_and_indices(), blender::ed::sculpt_paint::undo::store_vert_visibility_grids(), blender::gpu::FrameBuffer::subpass_transition(), blender::gpu::VKFrameBuffer::subpass_transition_impl(), blender::ed::sculpt_paint::smooth::surface_smooth_displace_step(), blender::ed::sculpt_paint::smooth::surface_smooth_laplacian_step(), blender::ed::space_node::tag_final_panel(), blender::bke::greasepencil::tests::TEST(), blender::bke::greasepencil::tests::TEST(), blender::bke::tests::TEST(), blender::tests::TEST(), blender::tests::TEST(), blender::tests::TEST(), blender::tests::TEST(), blender::tests::TEST(), blender::tests::TEST(), blender::tests::TEST(), blender::tests::TEST(), blender::tests::TEST(), blender::tests::TEST(), blender::tests::TEST(), blender::tests::TEST(), blender::tests::TEST(), blender::tests::TEST(), blender::bke::idprop::tests::test_array_to_value(), blender::draw::test_eevee_lut_gen(), blender::io::obj::TEST_F(), blender::io::obj::TEST_F(), blender::io::obj::TEST_F(), blender::io::obj::TEST_F(), blender::io::obj::TEST_F(), blender::io::obj::TEST_F(), blender::io::obj::TEST_F(), blender::bke::idprop::tests::test_idprop(), blender::bke::idprop::tests::test_idprop(), blender::bke::idprop::tests::test_idprop(), blender::tests::test_ref_from_initializer_list(), blender::bke::tests::GreasePencilInterpolate::test_sample_curve(), blender::length_parameterize::tests::test_uniform_lengths(), blender::geometry::toposort_connected_curves(), blender::bke::node_tree_runtime::toposort_from_start_node(), blender::ed::sculpt_paint::transform_node_grids(), blender::ed::sculpt_paint::translations_from_new_positions(), blender::ed::sculpt_paint::translations_from_new_positions(), blender::ed::sculpt_paint::translations_from_offset_and_factors(), blender::ed::curves::transverts_from_curves_positions_create(), blender::bke::try_capture_fields_on_geometry(), blender::io::grease_pencil::GreasePencilExporter::try_get_uniform_point_width(), blender::io::ply::type_from_string(), blender::index_mask::union_index_mask_segments(), blender::bke::node_tree_runtime::update_dangling_reroute_nodes(), blender::bke::node_tree_runtime::update_group_output_node(), blender::bke::pbvh::update_normals_mesh(), blender::bke::NodeTreeMainUpdater::update_rooted(), blender::bke::compare_geometry::update_set_sizes(), blender::io::obj::valid_nurb_control_point_range(), version_nodes_find_valid_insert_position_for_item(), blender::nodes::node_geo_extrude_mesh_cc::vert_indices_from_edges(), view3d_lasso_select(), blender::geometry::weld_edge_ctx_alloc_and_find_collapsed(), blender::geometry::weld_edge_find_doubles(), blender::geometry::weld_mesh_context_create(), blender::geometry::weld_poly_find_doubles(), blender::geometry::weld_poly_loop_ctx_alloc(), wn_corner_angle(), wn_face_with_angle(), blender::io::grease_pencil::SVGExporter::write_bezier_path(), blender::io::ply::FileBuffer::write_bytes(), blender::bke::write_channelbag(), blender::bke::write_layers(), blender::io::obj::OBJWriter::write_normals(), blender::io::obj::OBJWriter::write_nurbs_curve(), blender::bke::write_slots(), blender::bke::write_strip_keyframe_data_array(), blender::bke::write_strips(), and blender::io::obj::OBJWriter::write_uv_coords().

◆ size_in_bytes()

template<typename T>
int64_t blender::Span< T >::size_in_bytes ( ) const
inlineconstexpr

◆ slice() [1/2]

template<typename T>
Span blender::Span< T >::slice ( IndexRange range) const
inlineconstexpr

◆ slice() [2/2]

template<typename T>
Span blender::Span< T >::slice ( int64_t start,
int64_t size ) const
inlineconstexpr

Returns a contiguous part of the array. This invokes undefined behavior when the start or size is negative.

Definition at line 137 of file BLI_span.hh.

References BLI_assert, data_, size(), size_, and Span().

Referenced by blender::bke::adapt_mesh_domain_face_to_edge_impl(), blender::ed::sculpt_paint::pose::add_fake_neighbors(), add_interpolated_faces_to_new_mesh(), blender::ed::curves::append_point_knots(), blender::ed::sculpt_paint::mask::apply_new_mask_bmesh(), blender::ed::sculpt_paint::mask::apply_new_mask_grids(), blender::ed::sculpt_paint::mask::apply_new_mask_mesh(), blender::ed::sculpt_paint::apply_translations(), BKE_mesh_calc_area(), BKE_mesh_center_median_from_faces(), BKE_mesh_center_of_surface(), BKE_mesh_center_of_volume(), BKE_mesh_foreach_mapped_face_center(), BKE_mesh_foreach_mapped_subdiv_face_center(), BKE_mesh_remap_calc_faces_from_mesh(), BKE_mesh_remap_calc_loops_from_mesh(), BKE_mesh_to_curve_nurblist(), BKE_sculpt_mask_layers_ensure(), BM_mesh_bm_from_me(), blender::array_utils::booleans_mix_calc(), blender::bke::build_mesh_positions(), buildAdjacencyMap(), blender::draw::calc_adjacency_mesh(), blender::nodes::node_geo_dual_mesh_cc::calc_boundaries(), blender::geometry::ngon::calc_corner_tris(), blender::bke::pbvh::calc_face_bounds(), blender::bke::calc_face_centers(), blender::ed::sculpt_paint::auto_mask::calc_face_factors(), blender::bke::pbvh::calc_face_grid_bounds(), blender::ed::sculpt_paint::hide::calc_face_hide(), blender::draw::calc_face_visibility_mesh(), blender::geometry::quad::calc_quad_directions(), blender::ed::sculpt_paint::islands::calc_topology_islands_mesh(), blender::bke::CurvesGeometry::calculate_bezier_auto_handles(), blender::bke::calculate_evaluated_offsets(), blender::ed::sculpt_paint::color::color_vert_set(), compute_interpolated_faces(), blender::bke::compute_local_mesh_groups(), computed_masked_faces(), blender::nodes::node_geo_input_mesh_face_area_cc::construct_face_area_varray(), construct_param_handle_subsurfed(), blender::gpu::convert_buffer(), blender::geometry::convert_curves_to_bezier(), blender::geometry::convert_curves_to_nurbs(), blender::ed::sculpt_paint::mask::copy_old_hidden_mask_grids(), blender::geometry::copy_point_data_between_endpoints(), blender::bke::copy_point_selection_custom_knots(), blender::nodes::node_geo_duplicate_elements_cc::copy_stable_id_curves(), blender::nodes::node_geo_input_mesh_edge_angle_cc::create_edge_map(), blender::ed::sculpt_paint::face_set::create_op_exec(), blender::draw::pbvh::create_tri_index_mesh(), blender::ed::sculpt_paint::expand::delete_face_set_id(), blender::ed::sculpt_paint::expand::diagonals_falloff_create(), blender::nodes::node_geo_dual_mesh_cc::dissolve_redundant_verts(), blender::ed::sculpt_paint::geodesic::distances_create(), blender::ed::sculpt_paint::cloth::do_simulation_step(), do_vpaint_brush_blur_verts(), do_wpaint_brush_blur(), do_wpaint_brush_smear(), blender::geometry::duplicate_fillet_point_data(), dynamicPaint_initAdjacencyData(), blender::ed::sculpt_paint::face_set::edit_grow_shrink(), blender::bke::CurvesGeometry::evaluated_normals(), blender::bke::CurvesGeometry::evaluated_positions(), blender::ed::sculpt_paint::CombOperationExecutor::execute(), blender::draw::pbvh::extract_data_vert_mesh(), blender::draw::extract_edituv_face_dots_mesh(), blender::draw::extract_loose_positions_subdiv(), blender::ed::curves::extrude_knots(), blender::nodes::node_geo_extrude_mesh_cc::extrude_mesh_face_regions(), blender::bke::mesh::face_find_corner_from_vert(), blender::geometry::face_selection_from_mapped_corner(), blender::ed::sculpt_paint::fill_factor_from_hide_and_mask(), blender::draw::pbvh::fill_masks_grids(), blender::draw::pbvh::fill_normals_grids(), blender::draw::pbvh::fill_positions_grids(), blender::fill_scene_range_fixed(), blender::fill_scene_range_forward(), blender::fill_scene_range_ping_pong(), blender::fill_scene_range_reverse(), blender::geometry::fillet_curves(), blender::ed::curves::find_closest_curve(), blender::geometry::fit_poly_to_bezier_curves(), blender::index_mask::IndexMask::foreach_segment_zipped(), blender::io::grease_pencil::GreasePencilExporter::foreach_stroke_in_layer(), blender::index_mask::IndexMask::from_bools(), blender::bke::pbvh::Tree::from_mesh(), blender::ed::sculpt_paint::gather_data_grids(), blender::array_utils::gather_group_to_group(), blender::geometry::gather_or_reference(), blender::ed::greasepencil::generate_stroke_perimeter(), blender::ed::sculpt_paint::face_set::gesture_apply_mesh(), get_opposing_edge_index(), blender::nodes::node_geo_input_mesh_edge_angle_cc::AngleFieldInput::get_varray_for_context(), blender::nodes::node_geo_input_mesh_edge_angle_cc::SignedAngleFieldInput::get_varray_for_context(), blender::nodes::node_geo_input_mesh_face_is_planar_cc::PlanarFieldInput::get_varray_for_context(), blender::draw::grease_pencil_geom_batch_ensure(), blender::ed::sculpt_paint::mask::grow_mask_grids(), heat_bone_weighting(), blender::ed::sculpt_paint::face_set::init_flood_fill(), blender::draw::interpolate(), blender::ed::sculpt_paint::greasepencil::interpolate_between_curves(), blender::ed::sculpt_paint::greasepencil::PaintOperation::interpolate_stroke_depth(), blender::bke::curves::nurbs::load_curve_knots(), blender::bke::loose_edges_no_hidden_mask_get(), blender::geometry::mapped_corner_selection_from_face(), mesh_calc_hq_normal(), mesh_calc_tri_tessface(), mesh_get_boundaries(), blender::bke::mesh_init_origspace(), mesh_island_to_astar_graph(), mesh_island_to_astar_graph_edge_process(), MOD_solidify_nonmanifold_modifyMesh(), blender::modify_drawing(), multires_subdivide_create_object_space_linear_grids(), blender::bke::pbvh::node_raycast_grids(), blender::bke::pbvh::node_update_mask_grids(), blender::bke::pbvh::normals_calc_faces(), blender::offset_indices::GroupedSpan< T >::operator[](), blender::csv_parse::detail::parse_record_fields(), blender::ed::sculpt_paint::hide::partialvis_gesture_update_grids(), blender::ed::sculpt_paint::hide::partialvis_masked_update_grids(), blender::bke::pbvh::pbvh_grids_node_nearest_to_ray(), blender::bke::bake::MemoryBlobReader::read(), blender::io::usd::USDBasisCurvesReader::read_curve_sample(), blender::io::usd::USDNurbsReader::read_curve_sample(), blender::io::alembic::AbcCurveReader::read_curves_sample(), blender::io::obj::repeating_cyclic_point_num(), blender::geometry::resample_to_evaluated(), blender::geometry::resample_to_uniform(), blender::geometry::sample_bezier_curve_positions_handles(), blender::geometry::sample_curve_attribute(), blender::geometry::sample_curve_positions_and_handles(), blender::geometry::sample_interval_bezier(), blender::ed::sculpt_paint::scatter_data_grids(), blender::index_mask::segments_from_batch_predicate(), blender::index_mask::detail::segments_from_predicate_filter(), blender::bke::greasepencil::Drawing::set_texture_matrices(), blender::ed::sculpt_paint::mask::shrink_mask_grids(), slice(), blender::geometry::smooth_curve_attribute(), blender::ed::sculpt_paint::expand::snap_init_from_enabled(), blender::geometry::curve_constraints::solve_length_and_collision_constraints(), blender::csv_parse::split_into_aligned_chunks(), blender::geometry::subdivide_attribute_catmull_rom(), blender::geometry::subdivide_attribute_linear(), blender::geometry::subdivide_curves(), blender::tests::TEST(), blender::tests::TEST(), blender::tests::TEST(), blender::tests::TEST(), blender::draw::test_draw_curves_interpolate_attributes(), blender::io::obj::TEST_F(), blender::io::obj::TEST_F(), blender::io::obj::TEST_F(), blender::io::obj::TEST_F(), blender::io::obj::TEST_F(), blender::io::obj::TEST_F(), blender::io::obj::TEST_F(), blender::io::obj::TEST_F(), blender::io::obj::TEST_F(), blender::gpu::tests::test_storage_buffer_copy_from_vertex_buffer(), blender::geometry::trim_bezier_curves(), blender::geometry::trim_catmull_rom_curves(), blender::geometry::trim_evaluated_curves(), blender::geometry::trim_polygonal_curves(), update_custom_knots(), blender::draw::pbvh::update_masks_mesh(), blender::bke::pbvh::update_node_bounds_grids(), blender::bke::pbvh::update_normals_mesh(), blender::draw::pbvh::update_normals_mesh(), blender::gpu::GLTexture::update_sub(), blender::gpu::MTLTexture::update_sub(), blender::io::obj::valid_nurb_control_point_range(), weight_paint_set(), weight_sample_group_invoke(), wn_corner_angle(), wn_face_area(), wn_face_with_angle(), blender::write_fill_transforms(), and blender::bke::write_sharp_bezier_edges().

◆ slice_safe() [1/2]

template<typename T>
Span blender::Span< T >::slice_safe ( const int64_t start,
const int64_t size ) const
inlineconstexpr

Returns a contiguous part of the array. This invokes undefined behavior when the start or size is negative. Clamps the size of the new span so it fits in the current one.

Definition at line 154 of file BLI_span.hh.

References BLI_assert, data_, size(), size_, and Span().

Referenced by animsys_blend_in_fcurves(), blender::io::grease_pencil::GreasePencilExporter::foreach_stroke_in_layer(), slice_safe(), and blender::tests::TEST().

◆ slice_safe() [2/2]

template<typename T>
Span blender::Span< T >::slice_safe ( IndexRange range) const
inlineconstexpr

◆ take_back()

template<typename T>
Span blender::Span< T >::take_back ( int64_t n) const
inlineconstexpr

Returns a new Span that only contains the last n elements. This invokes undefined behavior when n is negative.

Definition at line 204 of file BLI_span.hh.

References BLI_assert, data_, size_, and Span().

Referenced by blender::io::usd::calc_curve_offsets(), blender::io::obj::detect_knot_mode_cyclic(), blender::tests::TEST(), and blender::tests::TEST().

◆ take_front()

◆ operator!=

template<typename T>
bool operator!= ( const Span< T > a,
const Span< T > b )
friend

Definition at line 433 of file BLI_span.hh.

References b, and Span().

◆ operator==

template<typename T>
bool operator== ( const Span< T > a,
const Span< T > b )
friend

Definition at line 425 of file BLI_span.hh.

References b, begin(), end(), size(), and Span().

Member Data Documentation

◆ data_

◆ size_


The documentation for this class was generated from the following files: