Blender  V2.93
Functions
task_range.cc File Reference
#include <cstdlib>
#include "MEM_guardedalloc.h"
#include "DNA_listBase.h"
#include "BLI_task.h"
#include "BLI_threads.h"
#include "atomic_ops.h"

Go to the source code of this file.

Functions

void BLI_task_parallel_range (const int start, const int stop, void *userdata, TaskParallelRangeFunc func, const TaskParallelSettings *settings)
 
int BLI_task_parallel_thread_id (const TaskParallelTLS *UNUSED(tls))
 

Detailed Description

Task parallel range functions.

Definition in file task_range.cc.

Function Documentation

◆ BLI_task_parallel_range()

void BLI_task_parallel_range ( const int  start,
const int  stop,
void *  userdata,
TaskParallelRangeFunc  func,
const TaskParallelSettings settings 
)

Definition at line 110 of file task_range.cc.

References BLI_task_scheduler_num_threads(), TaskParallelSettings::func_free, TaskParallelSettings::func_reduce, MAX2, TaskParallelSettings::min_iter_per_thread, blender::parallel_for(), blender::compositor::task, TaskParallelSettings::use_threading, TaskParallelTLS::userdata_chunk, TaskParallelSettings::userdata_chunk, and TaskParallelSettings::userdata_chunk_size.

Referenced by armature_deform_coords_impl(), BKE_autotrack_context_step(), BKE_maskrasterize_buffer(), BKE_mesh_calc_normals_poly(), BKE_scopes_update(), BKE_subdiv_ccg_average_grids(), BKE_subdiv_ccg_average_stitch_faces(), BKE_subdiv_foreach_subdiv_geometry(), BKE_tracking_stabilize_frame(), BLI_bvhtree_overlap_ex(), BLI_covariance_m_vn_ex(), BM_loop_interp_multires_ex(), bmesh_topology_rake(), brush_add(), calc_area_center(), calc_area_normal_and_center(), calculate_average_color(), calculate_average_weight(), ccgDM_copyFinalLoopArray(), ccgSubSurf__calcSubdivLevel(), ccgSubSurf__calcVertNormals(), cloth_brush_apply_brush_foces(), cloth_bvh_objcollisions_nearcheck(), cloth_bvh_selfcollisions_nearcheck(), displaceModifier_do(), do_brush_action(), do_clay_brush(), do_clay_strips_brush(), do_clay_thumb_brush(), do_crease_brush(), do_displacement_eraser_brush(), do_displacement_smear_brush(), do_draw_brush(), do_draw_sharp_brush(), do_elastic_deform_brush(), do_fill_brush(), do_flatten_brush(), do_grab_brush(), do_gravity(), do_inflate_brush(), do_layer_brush(), do_mask_brush_draw(), do_nudge_brush(), do_pinch_brush(), do_rotate_brush(), do_scrape_brush(), do_slide_relax_brush(), do_snake_hook_brush(), do_thumb_brush(), dynamicPaint_applySurfaceDisplace(), dynamicPaint_brushMeshCalculateVelocity(), dynamicPaint_createUVSurface(), dynamicPaint_doBorderStep(), dynamicPaint_doEffectStep(), dynamicPaint_doStep(), dynamicPaint_doWaveStep(), dynamicPaint_generateBakeData(), dynamicPaint_Modifier_apply(), dynamicPaint_outputSurfaceImage(), dynamicPaint_paintMesh(), dynamicPaint_paintParticles(), dynamicPaint_paintSinglePoint(), dynamicPaint_prepareAdjacencyData(), dynamicPaint_prepareEffectStep(), dynamicPaint_setInitialColor(), dynamics_step(), foreach_grid_coordinate(), foreach_mouse_hit_key(), foreach_toplevel_grid_coord(), get_vert2geom_distance(), lattice_deform_coords_impl(), load_tex(), load_tex_cursor(), make_histogram_view_from_ibuf_byte(), make_histogram_view_from_ibuf_float(), mask_flood_fill_exec(), meshdeformModifier_do(), modifyMesh(), multiresModifier_disp_run(), non_recursive_bvh_div_nodes(), paint_2d_op(), paint_mesh_restore_co(), pbvh_faces_update_normals(), pbvh_update_BB_redraw(), pbvh_update_draw_buffers(), pbvh_update_mask_redraw(), pbvh_update_visibility(), pbvh_update_visibility_redraw(), PE_apply_lengths(), pe_deflect_emitter(), pe_iterate_lengths(), precompute_weight_values(), psys_cache_edit_paths(), RE_point_density_sample(), SCULPT_cloth_brush_do_simulation_step(), SCULPT_cloth_brush_ensure_nodes_constraints(), sculpt_cloth_filter_modal(), sculpt_color_filter_modal(), sculpt_combine_proxies(), sculpt_dirty_mask_exec(), SCULPT_do_boundary_brush(), SCULPT_do_draw_face_sets_brush(), SCULPT_do_multiplane_scrape_brush(), SCULPT_do_paint_brush(), SCULPT_do_pose_brush(), SCULPT_do_smear_brush(), SCULPT_do_surface_smooth_brush(), SCULPT_enhance_details_brush(), sculpt_expand_update_for_vertex(), SCULPT_fake_neighbor_search(), SCULPT_filter_cache_init(), SCULPT_flush_stroke_deform(), sculpt_gesture_face_set_apply_for_symmetry_pass(), sculpt_gesture_mask_apply_for_symmetry_pass(), sculpt_gesture_project_apply_for_symmetry_pass(), sculpt_mask_by_color_contiguous(), sculpt_mask_by_color_full_mesh(), sculpt_mask_expand_invoke(), sculpt_mask_expand_modal(), sculpt_mask_filter_exec(), SCULPT_mask_filter_smooth_apply(), sculpt_mask_init_exec(), sculpt_mesh_filter_modal(), SCULPT_nearest_vertex_get(), SCULPT_pbvh_calc_area_normal(), SCULPT_pose_brush_init(), sculpt_pose_grow_pose_factor(), SCULPT_smooth(), sculpt_transform_all_vertices(), sculpt_undo_bmesh_restore_generic(), shrinkwrap_calc_nearest_surface_point(), shrinkwrap_calc_nearest_vertex(), shrinkwrap_calc_normal_projection(), subdiv_ccg_average_all_boundaries(), subdiv_ccg_average_all_corners(), subdiv_ccg_evaluate_grids(), subdiv_ccg_recalc_inner_grid_normals(), subdiv_ccg_recalc_modified_inner_grid_normals(), surfacedeformBind(), surfacedeformModifier_do(), surfaceGenerateGrid(), TEST(), vpaint_paint_leaves(), and wpaint_paint_leaves().

◆ BLI_task_parallel_thread_id()

int BLI_task_parallel_thread_id ( const TaskParallelTLS UNUSEDtls)

Definition at line 148 of file task_range.cc.

References atomic_fetch_and_add_int32(), BLENDER_MAX_THREADS, and BLI_assert.