Blender  V3.3
Classes | Typedefs | Enumerations
DEG_depsgraph.h File Reference
#include "DNA_ID.h"

Go to the source code of this file.

Classes

struct  DEGEditorUpdateContext
 

Typedefs

typedef struct Depsgraph Depsgraph
 
typedef enum eEvaluationMode eEvaluationMode
 

Enumerations

enum  eEvaluationMode { DAG_EVAL_VIEWPORT = 0 , DAG_EVAL_RENDER = 1 }
 
enum  { DAG_EVAL_NEED_CURVE_PATH = (1 << 0) , DAG_EVAL_NEED_SHRINKWRAP_BOUNDARY = (1 << 1) }
 

Functions

CRUD
DepsgraphDEG_graph_new (struct Main *bmain, struct Scene *scene, struct ViewLayer *view_layer, eEvaluationMode mode)
 
void DEG_graph_replace_owners (struct Depsgraph *depsgraph, struct Main *bmain, struct Scene *scene, struct ViewLayer *view_layer)
 
void DEG_graph_free (Depsgraph *graph)
 
Node Types Registry
void DEG_register_node_types (void)
 
void DEG_free_node_types (void)
 
Update Tagging
void DEG_graph_tag_on_visible_update (Depsgraph *depsgraph, bool do_time)
 
void DEG_tag_on_visible_update (struct Main *bmain, bool do_time)
 
const char * DEG_update_tag_as_string (IDRecalcFlag flag)
 
void DEG_id_tag_update (struct ID *id, int flag)
 
void DEG_id_tag_update_ex (struct Main *bmain, struct ID *id, int flag)
 
void DEG_graph_id_tag_update (struct Main *bmain, struct Depsgraph *depsgraph, struct ID *id, int flag)
 
void DEG_time_tag_update (struct Main *bmain)
 
void DEG_graph_time_tag_update (struct Depsgraph *depsgraph)
 
void DEG_graph_id_type_tag (struct Depsgraph *depsgraph, short id_type)
 
void DEG_id_type_tag (struct Main *bmain, short id_type)
 
void DEG_enable_editors_update (struct Depsgraph *depsgraph)
 
void DEG_editors_update (struct Depsgraph *depsgraph, bool time)
 
void DEG_ids_clear_recalc (Depsgraph *depsgraph, bool backup)
 
void DEG_ids_restore_recalc (Depsgraph *depsgraph)
 
Graph Evaluation
void DEG_evaluate_on_framechange (Depsgraph *graph, float frame)
 
void DEG_evaluate_on_refresh (Depsgraph *graph)
 
Evaluation
bool DEG_is_evaluating (const struct Depsgraph *depsgraph)
 
bool DEG_is_active (const struct Depsgraph *depsgraph)
 
void DEG_make_active (struct Depsgraph *depsgraph)
 
void DEG_make_inactive (struct Depsgraph *depsgraph)
 
Evaluation Debug
void DEG_debug_print_begin (struct Depsgraph *depsgraph)
 
void DEG_debug_print_eval (struct Depsgraph *depsgraph, const char *function_name, const char *object_name, const void *object_address)
 
void DEG_debug_print_eval_subdata (struct Depsgraph *depsgraph, const char *function_name, const char *object_name, const void *object_address, const char *subdata_comment, const char *subdata_name, const void *subdata_address)
 
void DEG_debug_print_eval_subdata_index (struct Depsgraph *depsgraph, const char *function_name, const char *object_name, const void *object_address, const char *subdata_comment, const char *subdata_name, const void *subdata_address, int subdata_index)
 
void DEG_debug_print_eval_parent_typed (struct Depsgraph *depsgraph, const char *function_name, const char *object_name, const void *object_address, const char *parent_comment, const char *parent_name, const void *parent_address)
 
void DEG_debug_print_eval_time (struct Depsgraph *depsgraph, const char *function_name, const char *object_name, const void *object_address, float time)
 

Editors Integration

Mechanism to allow editors to be informed of depsgraph updates, to do their own updates based on changes.

typedef struct DEGEditorUpdateContext DEGEditorUpdateContext
 
typedef void(* DEG_EditorUpdateIDCb) (const DEGEditorUpdateContext *update_ctx, struct ID *id)
 
typedef void(* DEG_EditorUpdateSceneCb) (const DEGEditorUpdateContext *update_ctx, bool updated)
 
void DEG_editors_set_update_cb (DEG_EditorUpdateIDCb id_func, DEG_EditorUpdateSceneCb scene_func)
 

Detailed Description

Public API for Depsgraph

Dependency Graph

The dependency graph tracks relations between various pieces of data in a Blender file, but mainly just those which make up scene data. It is used to determine the set of operations need to ensure that all data has been correctly evaluated in response to changes, based on dependencies and visibility of affected data.

Evaluation Engine

The evaluation takes the operation-nodes the Depsgraph has tagged for updating, and schedules them up for being evaluated/executed such that the all dependency relationship constraints are satisfied.

Definition in file DEG_depsgraph.h.

Typedef Documentation

◆ DEG_EditorUpdateIDCb

typedef void(* DEG_EditorUpdateIDCb) (const DEGEditorUpdateContext *update_ctx, struct ID *id)

Definition at line 206 of file DEG_depsgraph.h.

◆ DEG_EditorUpdateSceneCb

typedef void(* DEG_EditorUpdateSceneCb) (const DEGEditorUpdateContext *update_ctx, bool updated)

Definition at line 207 of file DEG_depsgraph.h.

◆ DEGEditorUpdateContext

◆ Depsgraph

typedef struct Depsgraph Depsgraph

Definition at line 1 of file DEG_depsgraph.h.

◆ eEvaluationMode

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
DAG_EVAL_NEED_CURVE_PATH 
DAG_EVAL_NEED_SHRINKWRAP_BOUNDARY 

Definition at line 50 of file DEG_depsgraph.h.

◆ eEvaluationMode

Enumerator
DAG_EVAL_VIEWPORT 
DAG_EVAL_RENDER 

Definition at line 44 of file DEG_depsgraph.h.

Function Documentation

◆ DEG_debug_print_begin()

void DEG_debug_print_begin ( struct Depsgraph depsgraph)

Definition at line 235 of file depsgraph_debug.cc.

References depsgraph, and depsgraph_name_for_logging().

◆ DEG_debug_print_eval()

void DEG_debug_print_eval ( struct Depsgraph depsgraph,
const char *  function_name,
const char *  object_name,
const void object_address 
)

◆ DEG_debug_print_eval_parent_typed()

void DEG_debug_print_eval_parent_typed ( struct Depsgraph depsgraph,
const char *  function_name,
const char *  object_name,
const void object_address,
const char *  parent_comment,
const char *  parent_name,
const void parent_address 
)

◆ DEG_debug_print_eval_subdata()

void DEG_debug_print_eval_subdata ( struct Depsgraph depsgraph,
const char *  function_name,
const char *  object_name,
const void object_address,
const char *  subdata_comment,
const char *  subdata_name,
const void subdata_address 
)

◆ DEG_debug_print_eval_subdata_index()

void DEG_debug_print_eval_subdata_index ( struct Depsgraph depsgraph,
const char *  function_name,
const char *  object_name,
const void object_address,
const char *  subdata_comment,
const char *  subdata_name,
const void subdata_address,
int  subdata_index 
)

◆ DEG_debug_print_eval_time()

void DEG_debug_print_eval_time ( struct Depsgraph depsgraph,
const char *  function_name,
const char *  object_name,
const void object_address,
float  time 
)

◆ DEG_editors_set_update_cb()

void DEG_editors_set_update_cb ( DEG_EditorUpdateIDCb  id_func,
DEG_EditorUpdateSceneCb  scene_func 
)

Set callbacks which are being called when depsgraph changes.

Definition at line 37 of file depsgraph_update.cc.

References blender::deg::deg_editor_update_id_cb, and blender::deg::deg_editor_update_scene_cb.

Referenced by WM_init().

◆ DEG_editors_update()

void DEG_editors_update ( struct Depsgraph depsgraph,
bool  time 
)

◆ DEG_enable_editors_update()

void DEG_enable_editors_update ( struct Depsgraph depsgraph)

Set a depsgraph to flush updates to editors. This would be done for viewport depsgraphs, but not render or export depsgraph for example.

Definition at line 823 of file depsgraph_tag.cc.

References depsgraph, and graph.

Referenced by scene_ensure_depsgraph_p().

◆ DEG_evaluate_on_framechange()

void DEG_evaluate_on_framechange ( Depsgraph graph,
float  frame 
)

◆ DEG_evaluate_on_refresh()

void DEG_evaluate_on_refresh ( Depsgraph graph)

◆ DEG_free_node_types()

void DEG_free_node_types ( void  )

◆ DEG_graph_free()

void DEG_graph_free ( Depsgraph graph)

◆ DEG_graph_id_tag_update()

void DEG_graph_id_tag_update ( struct Main bmain,
struct Depsgraph depsgraph,
struct ID id,
int  flag 
)

◆ DEG_graph_id_type_tag()

void DEG_graph_id_type_tag ( struct Depsgraph depsgraph,
short  id_type 
)

Mark a particular data-block type as having changing. This does not cause any updates but is used by external render engines to detect if for example a data-block was removed.

Definition at line 786 of file depsgraph_tag.cc.

References BKE_idtype_idcode_to_index(), DEG_graph_id_type_tag(), depsgraph, ID_LA, ID_MA, ID_NT, ID_SCE, ID_SIM, ID_TE, blender::deg::Depsgraph::id_type_updated, and ID_WO.

Referenced by DEG_graph_id_type_tag(), DEG_id_type_tag(), and blender::deg::graph_id_tag_update().

◆ DEG_graph_new()

Depsgraph* DEG_graph_new ( struct Main bmain,
struct Scene scene,
struct ViewLayer view_layer,
eEvaluationMode  mode 
)

◆ DEG_graph_replace_owners()

void DEG_graph_replace_owners ( struct Depsgraph depsgraph,
struct Main bmain,
struct Scene scene,
struct ViewLayer view_layer 
)

Replace the "owner" pointers (currently Main/Scene/ViewLayer) of this depsgraph. Used for:

  • Undo steps when we do want to re-use the old depsgraph data as much as possible.
  • Rendering where we want to re-use objects between different view layers.

Definition at line 274 of file depsgraph.cc.

References blender::deg::Depsgraph::bmain, depsgraph, blender::deg::register_graph(), blender::deg::Depsgraph::scene, scene, blender::deg::unregister_graph(), and blender::deg::Depsgraph::view_layer.

Referenced by BKE_scene_undo_depsgraphs_restore(), and engine_depsgraph_init().

◆ DEG_graph_tag_on_visible_update()

void DEG_graph_tag_on_visible_update ( Depsgraph depsgraph,
bool  do_time 
)

Tag dependency graph for updates when visible scenes/layers changes.

Definition at line 810 of file depsgraph_tag.cc.

References depsgraph, and graph.

Referenced by blender::deg::AbstractBuilderPipeline::build_step_finalize(), and wm_event_do_depsgraph().

◆ DEG_graph_time_tag_update()

void DEG_graph_time_tag_update ( struct Depsgraph depsgraph)

Tag a dependency graph when time has changed.

Definition at line 780 of file depsgraph_tag.cc.

References depsgraph, and blender::deg::Depsgraph::tag_time_source().

Referenced by DEG_time_tag_update().

◆ DEG_id_tag_update()

void DEG_id_tag_update ( struct ID id,
int  flag 
)

Tag given ID for an update in all the dependency graphs.

Definition at line 750 of file depsgraph_tag.cc.

References DEG_id_tag_update_ex(), and G.

Referenced by achannel_nlatrack_solo_widget_cb(), achannel_setting_flush_widget_cb(), achannel_setting_slider_cb(), action_preview_render_cleanup(), action_preview_render_prepare(), add_driver_button_invoke(), add_feather_vertex_exec(), add_simple_uvs_exec(), add_vertex_exec(), add_vertex_handle_cyclic_at_point(), ANIM_apply_keyingset(), ANIM_list_elem_update(), animchannels_rearrange_exec(), apply_armature_pose2bones_exec(), apply_objects_internal(), arg_handle_engine_set(), arg_handle_extension_set(), arg_handle_frame_end_set(), arg_handle_frame_skip_set(), arg_handle_frame_start_set(), arg_handle_image_type_set(), arg_handle_output_set(), armature_align_bones_exec(), armature_autoside_names_exec(), armature_bone_layers_exec(), armature_bone_primitive_add_exec(), armature_calc_roll_exec(), armature_click_extrude_exec(), armature_de_select_all_exec(), armature_de_select_less_exec(), armature_de_select_more_exec(), armature_delete_selected_exec(), armature_dissolve_selected_exec(), armature_duplicate_selected_exec(), armature_extrude_exec(), armature_fill_bones_exec(), armature_flip_names_exec(), armature_hide_exec(), armature_layers_exec(), armature_parent_set_exec(), armature_reveal_exec(), armature_roll_clear_exec(), armature_select_hierarchy_exec(), armature_select_linked_impl(), armature_select_mirror_exec(), armature_shortest_path_pick_invoke(), armature_split_exec(), armature_subdivide_exec(), armature_switch_direction_exec(), armature_symmetrize_exec(), armature_undosys_step_decode(), average_islands_scale_exec(), average_tracks_exec(), background_image_add_invoke(), background_image_remove_exec(), bake_targets_output_vertex_colors(), bake_targets_refresh(), bc_add_object(), BKE_action_fcurves_clear(), BKE_action_flip_with_pose(), BKE_animdata_fix_paths_rename(), BKE_animdata_transfer_by_basepath(), BKE_cachefile_reload(), BKE_collection_object_add_notest(), BKE_collection_object_remove(), BKE_curve_material_index_validate(), BKE_gpencil_batch_cache_dirty_tag(), BKE_gpencil_convert_curve(), BKE_gpencil_convert_mesh(), BKE_gpencil_tag(), BKE_gpencil_vgroup_remove(), BKE_id_material_append(), BKE_id_material_clear(), BKE_id_material_pop(), BKE_id_material_resize(), BKE_id_materials_copy(), BKE_lib_override_library_proxy_convert(), BKE_main_lib_objects_recalc_all(), BKE_mball_deselect_all_multi_ex(), BKE_mesh_validate(), BKE_mesh_validate_material_indices(), BKE_object_duplicate(), BKE_object_free_caches(), BKE_object_groups_clear(), BKE_object_material_resize(), BKE_scene_camera_switch_update(), BKE_sculpt_color_layer_create_if_needed(), BKE_sculpt_ensure_orig_mesh_data(), BKE_sculptsession_bm_to_me(), BKE_texpaint_slot_refresh_cache(), BKE_view_layer_rename(), bone_select_menu_exec(), box_select_exec(), bpy_bmesh_to_mesh(), brush_edit_apply(), cachefile_open_exec(), change_frame_apply(), circle_select_exec(), clean_tracks_exec(), clear_anim_v3d_exec(), clear_animdata_fn(), clear_edited_exec(), clear_override_library_exec(), clear_render_border_exec(), clear_solution_exec(), clear_tilt_exec(), cleardrivers_animdata_fn(), click_select_channel_gplayer(), clip_delete_plane_track(), clip_delete_track(), collection_add_exec(), collection_create_exec(), collection_drop_exec(), collection_drop_invoke(), collection_flag_exec(), collection_hierarchy_delete_exec(), collection_isolate_exec(), collection_link_exec(), collection_new_exec(), collection_objects_remove_exec(), collection_objects_select_exec(), collection_remove_exec(), collection_visibility_exec(), connect_hair_exec(), constraint_add_exec(), constraint_apply_exec(), constraint_copy_to_selected_exec(), constraint_find_original_for_update(), copy_particle_dupliob_exec(), copy_particle_systems_to_object(), correctivesmooth_bind_exec(), DocumentImporter::create_instance_node(), create_plane_track_tracks_exec(), create_primitive_from_points(), cube_project_exec(), curve_decimate_exec(), curve_delete_exec(), curve_dissolve_exec(), curve_draw_exec(), curve_extrude_exec(), curve_normals_make_consistent_exec(), curve_pen_modal(), curve_select_less_exec(), curve_select_more_exec(), curve_select_random_exec(), curve_select_similar_exec(), curve_smooth_radius_exec(), curve_smooth_tilt_exec(), curve_smooth_weight_exec(), curve_split_exec(), curve_undosys_step_decode(), blender::ed::curves::disable_selection::curves_disable_selection_exec(), blender::ed::sculpt_paint::curves_sculptmode_enter(), blender::ed::sculpt_paint::curves_sculptmode_toggle_exec(), blender::ed::curves::set_selection_domain::curves_set_selection_domain_exec(), curvesurf_prim_add(), cyclic_toggle_exec(), cylinder_project_exec(), dash_segment_add_exec(), dash_segment_move_exec(), dash_segment_remove_exec(), data_transfer_exec(), datalayout_transfer_exec(), de_select_all_exec(), de_select_first_exec(), de_select_last_exec(), delete_exec(), delete_fmodifier_cb(), delete_key_v3d_without_keying_set(), delete_metaelems_exec(), disable_markers_exec(), blender::io::alembic::SubdivModifierDisabler::disable_modifiers(), disconnect_hair_exec(), do_lasso_select_marker(), do_lasso_select_mask(), do_lasso_select_objects(), do_lasso_select_pose(), do_object_box_select(), do_outliner_item_activate_tree_element(), do_outliner_item_editmode_toggle(), do_outliner_item_mode_toggle_generic(), do_outliner_item_posemode_toggle(), do_pose_box_select(), do_set_scale(), do_uvedit_vertex(), do_view3d_region_buttons(), do_view3d_vgroup_buttons(), driverdropper_sample(), drop_named_material_invoke(), drop_world_exec(), duplibase_for_convert(), duplicate_exec(), duplicate_metaelems_exec(), dupliob_move_down_exec(), dupliob_move_up_exec(), dupliob_refresh_exec(), ED_armature_bone_rename(), ED_armature_edit_select_pick_bone(), ED_armature_from_edit(), ED_armature_join_objects_exec(), ED_armature_pose_select_pick_bone(), ED_curve_deselect_all_multi_ex(), ED_curve_editfont_select_pick(), ED_curve_editnurb_select_pick(), ED_curve_join_objects_exec(), ED_curve_updateAnimPaths(), ED_editors_exit(), ED_editors_init(), ED_gpencil_add_armature(), ED_gpencil_add_lattice_modifier(), ED_gpencil_anim_copybuf_paste(), ED_gpencil_create_blank(), ED_gpencil_create_lineart(), ED_gpencil_create_monkey(), ED_gpencil_create_stroke(), ED_gpencil_join_objects_exec(), ED_gpencil_tag_scene_gpencil(), ED_gpencil_update_color_uv(), ED_id_action_ensure(), ED_imapaint_bucket_fill(), ED_lattice_deselect_all_multi_ex(), ED_lattice_select_pick(), ED_mask_deselect_all(), ED_mball_select_pick(), ED_mesh_color_add(), ED_mesh_color_ensure(), ED_mesh_color_remove_index(), ED_mesh_join_objects_exec(), ED_mesh_sculpt_color_add(), ED_mesh_sculpt_color_ensure(), ED_mesh_sculpt_color_remove_index(), ED_mesh_shapes_join_objects_exec(), ED_mesh_update(), ED_mesh_uv_add(), ED_mesh_uv_loop_reset_ex(), ED_mesh_uv_remove_index(), ED_node_tag_update_id(), ED_node_tree_propagate_change(), ED_object_add_type_with_obdata(), ED_object_base_active_refresh(), ED_object_constraint_tag_update(), ED_object_constraint_update(), ED_object_data_xform_container_update_all(), ED_object_data_xform_tag_update(), ED_object_editmode_enter_ex(), ED_object_editmode_exit_ex(), ED_object_gpencil_modifier_add(), ED_object_gpencil_modifier_clear(), ED_object_gpencil_modifier_copy_to_object(), ED_object_gpencil_modifier_move_to_index(), ED_object_gpencil_modifier_remove(), ED_object_modifier_add(), ED_object_modifier_clear(), ED_object_modifier_copy_to_object(), ED_object_modifier_link(), ED_object_modifier_move_to_index(), ED_object_modifier_remove(), ED_object_multires_update_totlevels_cb(), ED_object_parent_clear(), ED_object_parent_set(), ED_object_particle_edit_mode_enter_ex(), ED_object_particle_edit_mode_exit_ex(), ED_object_sculptmode_enter_ex(), ED_object_sculptmode_exit_ex(), ED_object_select_linked_by_id(), ed_object_select_pick(), ed_object_select_pick_camera_track(), ED_object_shaderfx_add(), ED_object_shaderfx_clear(), ED_object_shaderfx_copy(), ED_object_shaderfx_link(), ED_object_shaderfx_move_to_index(), ED_object_shaderfx_remove(), ED_object_texture_paint_mode_enter_ex(), ED_object_texture_paint_mode_exit_ex(), ED_object_xform_array_m4(), ED_object_xform_skip_child_container_update_all(), ED_objects_recalculate_paths(), ED_outliner_select_sync_from_outliner(), ED_pose_bone_select_tag_update(), ED_pose_clear_paths(), ED_pose_recalculate_paths(), ED_render_engine_changed(), ED_rigidbody_constraint_add(), ED_rigidbody_constraint_remove(), ED_rigidbody_object_remove(), ED_scene_sequencer_add(), ED_scene_view_layer_delete(), ED_screen_animation_timer(), ED_transverts_update_obedit(), ED_undo_gpencil_step(), ED_update_for_newframe(), ED_uvedit_pack_islands_multi(), ED_view3d_camera_lock_sync(), ED_view3d_cameracontrol_release(), ED_view3d_cameracontrol_update(), ED_view3d_cursor3d_update(), ED_view3d_local_collections_reset(), ed_vwpaintmode_enter_generic(), ed_vwpaintmode_exit_generic(), edbm_delete_exec(), edbm_faces_select_interior_exec(), edbm_fill_grid_exec(), edbm_flag_disable_all_multi(), edbm_loop_multiselect_exec(), edbm_loop_to_region_exec(), EDBM_mesh_deselect_all_multi_ex(), edbm_region_to_loop_exec(), edbm_select_all_exec(), edbm_select_axis_exec(), edbm_select_face_by_sides_exec(), edbm_select_less_exec(), edbm_select_linked_exec(), edbm_select_linked_flat_faces_exec(), edbm_select_linked_pick_exec(), edbm_select_linked_pick_invoke(), edbm_select_loose_exec(), edbm_select_mirror_exec(), edbm_select_more_exec(), edbm_select_non_manifold_exec(), EDBM_select_pick(), edbm_select_random_exec(), edbm_select_sharp_edges_exec(), edbm_select_similar_region_exec(), edbm_select_ungrouped_exec(), EDBM_selectmode_set_multi(), EDBM_selectmode_toggle_multi(), edbm_separate_exec(), edbm_shortest_path_pick_ex(), EDBM_update(), edcu_shortest_path_pick_invoke(), edgering_select(), EEVEE_lightbake_update(), empty_drop_named_image_invoke(), blender::ed::sculpt_paint::AddOperationExecutor::execute(), blender::ed::sculpt_paint::CombOperationExecutor::execute(), blender::ed::sculpt_paint::CurvesEffectOperationExecutor::execute(), blender::ed::sculpt_paint::DeleteOperationExecutor::execute(), blender::ed::sculpt_paint::DensitySubtractOperationExecutor::execute(), blender::ed::sculpt_paint::PinchOperationExecutor::execute(), blender::ed::sculpt_paint::PuffOperationExecutor::execute(), blender::ed::sculpt_paint::SelectionPaintOperationExecutor::execute(), blender::ed::sculpt_paint::SlideOperationExecutor::execute(), blender::ed::sculpt_paint::SmoothOperationExecutor::execute(), blender::ed::sculpt_paint::SnakeHookOperatorExecutor::execute(), explode_refresh_exec(), face_map_add_exec(), face_map_assign_exec(), face_map_deselect_exec(), face_map_move_exec(), face_map_remove_exec(), face_map_remove_from_exec(), face_map_select_exec(), DocumentImporter::finish(), finish_images(), fluid_bake_endjob(), fluid_bake_startjob(), fluid_free_endjob(), flushTransParticles(), fmodifier_reorder(), font_undosys_step_decode(), forcefield_toggle_exec(), frame_jump_exec(), frame_offset_exec(), freeSeqData(), blender::ed::geometry::geometry_attribute_add_exec(), blender::ed::geometry::geometry_attribute_convert_exec(), blender::ed::geometry::geometry_attribute_remove_exec(), blender::ed::geometry::geometry_color_attribute_add_exec(), blender::ed::geometry::geometry_color_attribute_duplicate_exec(), blender::ed::geometry::geometry_color_attribute_remove_exec(), blender::ed::geometry::geometry_color_attribute_set_render_exec(), geometry_extract_apply(), geometry_nodes_input_attribute_toggle_exec(), blender::io::obj::geometry_to_blender_objects(), gizmo_area_light_prop_matrix_set(), gizmo_empty_image_prop_matrix_set(), gizmo_render_border_prop_matrix_set(), gpencil_actframe_delete_all_exec(), gpencil_actframe_delete_exec(), gpencil_bake_grease_pencil_animation_exec(), gpencil_blank_frame_add_exec(), gpencil_circle_select_exec(), gpencil_convert_layer_exec(), gpencil_cutter_lasso_select(), gpencil_delete_selected_points(), gpencil_delete_selected_strokes(), gpencil_dissolve_selected_points(), gpencil_draw_modal(), gpencil_duplicate_exec(), gpencil_editcurve_set_handle_type_exec(), gpencil_editmode_toggle_exec(), gpencil_extrude_exec(), gpencil_fill_exit(), gpencil_fill_invoke(), gpencil_frame_clean_duplicate_exec(), gpencil_frame_clean_fill_exec(), gpencil_frame_clean_loose_exec(), gpencil_frame_duplicate_exec(), gpencil_generate_weights_exec(), gpencil_generic_select_exec(), gpencil_hide_exec(), gpencil_init_drawing_brush(), gpencil_interpolate_exit(), gpencil_interpolate_invoke(), gpencil_interpolate_reverse_exec(), gpencil_interpolate_seq_exec(), gpencil_interpolate_update_strokes(), gpencil_isolate_layer_exec(), gpencil_layer_active_exec(), gpencil_layer_add_exec(), gpencil_layer_change_exec(), gpencil_layer_copy_exec(), gpencil_layer_duplicate_object_exec(), gpencil_layer_mask_add_exec(), gpencil_layer_mask_move_exec(), gpencil_layer_mask_remove_exec(), gpencil_layer_move_exec(), gpencil_layer_remove_exec(), gpencil_layer_to_curve(), gpencil_lock_all_exec(), gpencil_lock_layer_exec(), gpencil_material_hide_exec(), gpencil_material_isolate_exec(), gpencil_material_lock_all_exec(), gpencil_material_lock_unsused_exec(), gpencil_material_reveal_exec(), gpencil_material_select_exec(), gpencil_material_to_vertex_exec(), gpencil_material_unlock_all_exec(), gpencil_materials_copy_to_object_exec(), gpencil_merge_by_distance_exec(), gpencil_merge_layer_exec(), gpencil_modifier_apply_exec(), gpencil_modifier_apply_obdata(), gpencil_modifier_copy_exec(), gpencil_modifier_copy_to_selected_exec(), gpencil_modifier_move_down_exec(), gpencil_modifier_move_up_exec(), gpencil_paint_initstroke(), gpencil_paintmode_toggle_exec(), gpencil_primitive_exit(), gpencil_primitive_interaction_end(), gpencil_primitive_invoke(), gpencil_primitive_set_initdata(), gpencil_primitive_update_strokes(), gpencil_recalc_geometry_exec(), gpencil_reset_transform_fill_exec(), gpencil_reveal_exec(), gpencil_sculpt_brush_apply(), gpencil_sculpt_brush_init_stroke(), gpencil_sculpt_brush_modal(), gpencil_sculptmode_toggle_exec(), gpencil_select_all_exec(), gpencil_select_alternate_exec(), gpencil_select_exec(), gpencil_select_first_exec(), gpencil_select_grouped_exec(), gpencil_select_last_exec(), gpencil_select_less_exec(), gpencil_select_linked_exec(), gpencil_select_more_exec(), gpencil_select_random_exec(), gpencil_select_vertex_color_exec(), gpencil_selectmode_toggle_exec(), gpencil_snap_cursor_to_sel(), gpencil_snap_to_cursor(), gpencil_snap_to_grid(), gpencil_stroke_apply_thickness_exec(), gpencil_stroke_arrange_exec(), gpencil_stroke_caps_set_exec(), gpencil_stroke_change_color_exec(), gpencil_stroke_cyclical_set_exec(), gpencil_stroke_enter_editcurve_mode_exec(), gpencil_stroke_flip_exec(), gpencil_stroke_join_exec(), gpencil_stroke_merge_exec(), gpencil_stroke_merge_material_exec(), gpencil_stroke_normalize_exec(), gpencil_stroke_path_animation(), gpencil_stroke_reset_vertex_color_exec(), gpencil_stroke_sample_exec(), gpencil_stroke_separate_exec(), gpencil_stroke_simplify_exec(), gpencil_stroke_simplify_fixed_exec(), gpencil_stroke_smooth_exec(), gpencil_stroke_split_exec(), gpencil_stroke_subdivide_exec(), gpencil_stroke_trim_exec(), gpencil_strokes_paste_exec(), gpencil_strokes_reproject_exec(), gpencil_unlock_all_exec(), gpencil_update_cache(), gpencil_update_geometry(), gpencil_uv_transform_calc(), gpencil_vertex_group_assign_exec(), gpencil_vertex_group_deselect_exec(), gpencil_vertex_group_invert_exec(), gpencil_vertex_group_normalize_all_exec(), gpencil_vertex_group_normalize_exec(), gpencil_vertex_group_remove_from_exec(), gpencil_vertex_group_select_exec(), gpencil_vertex_group_smooth_exec(), gpencil_vertexmode_toggle_exec(), gpencil_vertexpaint_brightness_contrast_exec(), gpencil_vertexpaint_brush_apply(), gpencil_vertexpaint_brush_modal(), gpencil_vertexpaint_hsv_exec(), gpencil_vertexpaint_invert_exec(), gpencil_vertexpaint_levels_exec(), gpencil_vertexpaint_set_exec(), gpencil_weightmode_toggle_exec(), gpencil_weightpaint_brush_apply(), gpencil_weightpaint_brush_modal(), graph_disable_markers_exec(), graphview_cursor_apply(), group_sort_exec(), hide_exec(), hide_metaelems_exec(), hide_show_exec(), id_override_library_clear_single_fn(), id_single_user(), ignore_parent_tx(), image_reload_exec(), image_scale_exec(), image_tag_frame_recalc(), image_tag_reload(), blender::io::usd::import_endjob(), import_endjob(), blender::io::usd::import_startjob(), blender::io::stl::importer_main(), insert_key_button_exec(), insert_keyframe(), join_tracks_exec(), keyframe_jump_exec(), laplaciandeform_bind_exec(), lattice_flip_exec(), lattice_select_all_exec(), lattice_select_mirror_exec(), lattice_select_more_less(), lattice_select_random_exec(), lattice_select_ungrouped_exec(), lattice_undosys_step_decode(), lib_override_library_create_post_process(), libblock_remap_data_postprocess_object_update(), light_cache_free_exec(), lineart_gpencil_bake_startjob(), lineart_gpencil_clear_strokes_exec_common(), SkinInfo::link_armature(), localview_exec(), localview_remove_from_exec(), loop_to_vertex_colors_exec(), make_links_data_exec(), make_local_all__instance_indirect_unused(), make_object_duplilist_real(), make_override_library_exec(), make_regular_exec(), make_segment_exec(), marker_block_handler(), marker_jump_exec(), mask_duplicate_exec(), mask_feather_weight_clear_exec(), mask_hide_view_clear_exec(), mask_hide_view_set_exec(), mask_layer_move_exec(), mask_layer_new_exec(), mask_layer_remove_exec(), mask_normals_make_consistent_exec(), mask_parent_clear_exec(), mask_parent_set_exec(), mask_select_linked_exec(), mask_select_linked_pick_invoke(), mask_select_more_less(), mask_shape_key_clear_exec(), mask_shape_key_feather_reset_exec(), mask_shape_key_insert_exec(), mask_shape_key_rekey_exec(), mask_switch_direction_exec(), match_texture_space_exec(), material_slot_assign_exec(), material_slot_copy_exec(), material_slot_de_select(), material_slot_move_exec(), material_slot_remove_exec(), material_slot_remove_unused_exec(), mball_data_properties_copy(), mball_select_all_exec(), mball_select_similar_exec(), mball_undosys_step_decode(), mesh_customdata_clear_exec__internal(), mesh_customdata_custom_splitnormals_add_exec(), mesh_customdata_skin_add_exec(), mesh_undosys_step_decode(), meshdeform_bind_exec(), minimize_stretch_exit(), minimize_stretch_iteration(), mirror_exec(), MOD_nodes_update_interface(), modifier_apply_exec_ex(), modifier_apply_obdata(), modifier_convert_exec(), modifier_copy_exec(), modifier_copy_to_selected_exec(), modifier_fn(), modifier_move_down_exec(), modifier_move_up_exec(), mouse_mesh_loop(), move_to_collection_exec(), multires_base_apply_exec(), multires_rebuild_subdiv_exec(), multires_reshape_exec(), multires_subdivide_exec(), multires_unsubdivide_exec(), namebutton_fn(), new_particle_settings_exec(), new_particle_target_exec(), blender::ed::space_node::node_mouse_select(), blender::ed::space_node::node_select_single(), obedit_circle_select(), object_add_duplicate_internal(), object_add_hook_newob_exec(), object_add_named_exec(), object_add_or_copy_particle_system(), object_armature_add_exec(), object_clear_mpath(), object_clear_transform_generic_exec(), object_constraint_copy_exec(), object_constraints_clear_exec(), object_convert_exec(), object_delete_exec(), object_gpencil_add_exec(), object_hide_collection_exec(), object_hide_view_clear_exec(), object_hide_view_set_exec(), object_hook_assign_exec(), object_hook_index_array(), object_hook_recenter_exec(), object_hook_remove_exec(), object_hook_reset_exec(), object_hook_select_exec(), object_metaball_add_exec(), object_origin_clear_exec(), object_origin_set_exec(), object_parent_inverse_apply_exec(), object_remove_particle_system(), object_select_all_exec(), object_select_by_type_exec(), object_select_grouped_exec(), object_select_less_exec(), object_select_linked_exec(), object_select_menu_exec(), object_select_mirror_exec(), object_select_more_exec(), object_select_random_exec(), object_select_same_collection_exec(), object_shape_key_mirror(), object_track_clear_exec(), object_transfer_mode_to_base(), object_transform_axis_target_cancel(), object_transform_axis_target_modal(), objects_add_active_exec(), objects_remove_active_exec(), ocean_bake_exec(), oceanbake_endjob(), outliner_action_set_exec(), outliner_box_select_exec(), outliner_collection_set_flag_recursive(), outliner_delete_exec(), outliner_hide_exec(), outliner_object_operation_exec(), outliner_object_set_flag_recursive_fn(), outliner_select_all_exec(), outliner_select_sync_to_edit_bone(), outliner_select_sync_to_pose_bone(), outliner_unhide_all_exec(), override_idtemplate_clear_exec(), override_idtemplate_make_exec(), paint_2d_redraw(), paint_mask_slice_exec(), paint_proj_stroke(), paint_weight_gradient_exec(), paint_weight_gradient_modal(), paintface_flush_flags(), paintvert_tag_select_update(), parent_noinv_set_exec(), particle_undosys_step_decode(), paste_driver_button_exec(), paste_material_exec(), paste_splines_exec(), PE_update_selection(), pose_armature_layers_showall_exec(), pose_autoside_names_exec(), pose_bone_layers_exec(), pose_bone_rotmode_exec(), pose_clear_transform_generic_exec(), pose_clear_user_transforms_exec(), pose_constraint_copy_exec(), pose_constraints_clear_exec(), pose_de_select_all_exec(), pose_flip_names_exec(), pose_flip_quats_exec(), pose_group_assign_exec(), pose_group_deselect_exec(), pose_group_remove_exec(), pose_group_select_exec(), pose_group_unassign_exec(), pose_hide_exec(), pose_ik_clear_exec(), pose_paste_exec(), pose_reveal_exec(), pose_select_mirror_exec(), pose_update_paths_range_exec(), pose_visual_transform_apply_exec(), poseAnim_mapping_refresh(), poselib_add_exec(), poselib_blend_apply(), poselib_blend_cleanup(), poselib_preview_apply(), poselib_preview_cleanup(), poselib_remove_exec(), posttrans_gpd_clean(), prepare_mesh_for_viewport_render(), proj_paint_add_slot(), project_paint_end(), proxy_endjob(), ptcache_add_new_exec(), ptcache_remove_exec(), quadriflow_end_job(), rearrange_gpencil_channels(), recalcData_cursor_2D_impl(), recalcData_cursor_view3d(), recalcData_curve(), recalcData_lattice(), recalcData_mask_common(), recalcData_mball(), recalcData_mesh(), recalcData_mesh_cdata(), recalcData_mesh_edge(), recalcData_mesh_skin(), recalcData_objects(), recalcData_pose(), recalcData_sequencer(), recalcData_texspace(), recalcData_tracking(), recalcData_uv(), refine_marker_exec(), remove_doubles_exec(), remove_particle_dupliob_exec(), remove_particle_target_exec(), render_border_exec(), reset_exec(), restrictbutton_gp_layer_flag_fn(), reveal_exec(), reveal_metaelems_exec(), rigidbody_objects_calc_mass_exec(), rigidbody_objects_shape_change_exec(), ringsel_finish(), rna_property_update(), rule_add_exec(), rule_del_exec(), rule_move_down_exec(), rule_move_up_exec(), scene_drop_invoke(), screen_animation_step_invoke(), SCULPT_dynamic_topology_disable_ex(), SCULPT_dynamic_topology_enable_ex(), sculpt_face_set_edit_modify_geometry(), SCULPT_flush_update_done(), SCULPT_flush_update_step(), sculpt_gesture_trim_end(), sculpt_mask_by_color_invoke(), SCULPT_pbvh_clear(), SCULPT_tag_update_overlays(), sculpt_undo_restore_list(), blender::ed::curves::select_all::select_all_exec(), select_all_exec(), blender::ed::sculpt_paint::select_end::select_end_exec(), select_exec(), select_grouped_exec(), blender::ed::sculpt_paint::select_grow::select_grow_modal(), blender::ed::sculpt_paint::select_grow::select_grow_update(), select_linked_exec(), select_linked_pick_invoke(), select_marker_camera_switch(), select_next_exec(), select_nth_exec(), select_previous_exec(), blender::ed::sculpt_paint::select_random::select_random_exec(), select_random_metaelems_exec(), select_row_exec(), select_similar_children(), select_similar_children_immediate(), select_similar_data_pchan(), select_similar_direction(), select_similar_layer(), select_similar_length(), select_similar_prefix(), select_similar_siblings(), select_similar_suffix(), separate_armature_exec(), separate_exec(), SEQ_offset_animdata(), sequence_invalidate_cache(), sequencer_add_effect_strip_exec(), sequencer_add_image_strip_exec(), sequencer_add_mask_strip_exec(), sequencer_add_movie_strip_exec(), sequencer_add_movieclip_strip_exec(), sequencer_add_scene_strip_exec(), sequencer_add_scene_strip_new_exec(), sequencer_add_sound_strip_exec(), sequencer_change_scene_exec(), sequencer_delete_exec(), sequencer_gap_remove_exec(), sequencer_meta_make_exec(), sequencer_meta_separate_exec(), sequencer_mute_exec(), sequencer_paste_exec(), sequencer_slip_exec(), sequencer_slip_modal(), sequencer_snap_exec(), sequencer_strip_jump_exec(), sequencer_unmute_exec(), set_active_group_exec(), set_axis_exec(), set_goal_weight_exec(), set_handle_type_exec(), set_origin_exec(), set_plane_exec(), set_radius_exec(), set_spline_type_exec(), set_style(), shade_smooth_exec(), shaderfx_copy_exec(), shaderfx_move_down_exec(), shaderfx_move_up_exec(), shape_cut_exec(), shape_key_add_exec(), shape_key_clear_exec(), shape_key_move_exec(), shape_key_remove_exec(), shape_key_retime_exec(), single_obdata_users(), single_object_action_users(), single_objectdata_action_users(), skin_armature_create_exec(), skin_loose_mark_clear_exec(), skin_radii_equalize_exec(), skin_root_mark_exec(), slide_marker_modal(), slide_plane_marker_modal(), slide_point_customdata(), slide_point_modal(), slide_spline_curvature_customdata(), slide_spline_curvature_modal(), smooth_exec(), snap_curs_to_active_exec(), snap_curs_to_center_exec(), snap_curs_to_grid_exec(), snap_curs_to_sel_exec(), snap_sel_to_grid_exec(), snap_selected_to_location(), solve_camera_freejob(), sort_bmelem_flag(), sound_update_animation_flags_exec(), special_aftertrans_update__actedit(), special_aftertrans_update__mask(), special_aftertrans_update__object(), special_aftertrans_update__pose(), sphere_project_exec(), spin_exec(), blender::ed::spreadsheet::spreadsheet_context_update_tag(), stabilize_2d_add_exec(), stabilize_2d_remove_exec(), stabilize_2d_rotation_add_exec(), stabilize_2d_rotation_remove_exec(), state_del_exec(), state_move_down_exec(), stitch_exit(), subdivide_exec(), blender::ed::curves::surface_set::surface_set_exec(), surface_slot_remove_exec(), surfacedeform_bind_exec(), switch_direction_exec(), tag_object_after_update(), tag_update_animation_element(), target_move_down_exec(), target_move_up_exec(), text_refresh_pyconstraints_exec(), text_update_edited(), textbox_add_exec(), textbox_remove_exec(), texture_slot_move_exec(), toggle_cyclic_exec(), toggle_matcap_flip(), trace_end_job(), track_copy_color_exec(), track_markers_endjob(), track_set_exec(), tracking_object_new_exec(), tracking_object_remove_exec(), tree_element_camera_activate(), tree_element_defgroup_activate(), tree_element_gplayer_activate(), tree_element_material_activate(), tree_element_object_activate(), tree_element_posechannel_activate(), blender::ed::curves::convert_to_particle_system::try_convert_single_object(), type_toggle_exec(), uhandle_restore_list(), ui_drop_material_exec(), unify_length_exec(), unlink_action_fn(), unlink_collection_fn(), unlink_object_fn(), unlinkact_animdata_fn(), updateDuplicateActionConstraintSettings(), uv_from_view_exec(), uv_hide_exec(), uv_mark_seam_exec(), uv_pin_exec(), uv_remove_doubles_to_selected(), uv_remove_doubles_to_unselected(), uv_reveal_exec(), uv_rip_exec(), uv_sculpt_stroke_modal(), uv_seams_from_islands_exec(), uv_select_linked_internal(), uv_select_mode_exec(), uv_select_more_less(), uv_select_tag_update_for_object(), uv_shortest_path_pick_ex(), uv_snap_selection_exec(), uv_weld_align(), uvedit_pack_islands_multi(), uvedit_unwrap_multi(), vertex_color_set(), vertex_group_add_exec(), vertex_group_assign_exec(), vertex_group_clean_exec(), vertex_group_copy_exec(), vertex_group_copy_to_selected_exec(), vertex_group_deselect_exec(), vertex_group_fix_exec(), vertex_group_invert_exec(), vertex_group_levels_exec(), vertex_group_limit_total_exec(), vertex_group_mirror_exec(), vertex_group_normalize_all_exec(), vertex_group_normalize_exec(), vertex_group_quantize_exec(), vertex_group_remove_exec(), vertex_group_remove_from_exec(), vertex_group_select_exec(), vertex_group_smooth_exec(), vertex_group_sort_exec(), vertex_parent_set_exec(), vertex_to_loop_colors_exec(), vertex_weight_copy_exec(), vertex_weight_delete_exec(), vertex_weight_normalize_active_vertex_exec(), vertex_weight_paste_exec(), vertex_weight_set_active_exec(), vgroup_move_exec(), view3d_all_exec(), view3d_box_select_exec(), view3d_camera_to_view_exec(), view3d_circle_select_exec(), view3d_collection_drop_copy_external_asset(), view3d_lasso_select(), view3d_ob_drop_copy_external_asset(), view3d_setobjectascamera_exec(), view_camera_exec(), view_layer_add_aov_exec(), view_layer_add_exec(), view_layer_add_lightgroup_exec(), view_layer_add_used_lightgroups_exec(), view_layer_remove_aov_exec(), view_layer_remove_lightgroup_exec(), view_layer_remove_unused_lightgroups_exec(), viewRedrawForce(), visual_transform_apply_exec(), voxel_remesh_exec(), vpaint_mode_toggle_exec(), vpaint_stroke_update_step_intern(), weight_from_bones_exec(), weight_paint_set(), weight_sample_group_exec(), weight_set_exec(), wm_link_append_exec(), wpaint_mode_toggle_exec(), wpaint_stroke_done(), and wpaint_stroke_update_step().

◆ DEG_id_tag_update_ex()

void DEG_id_tag_update_ex ( struct Main bmain,
struct ID id,
int  flag 
)

◆ DEG_id_type_tag()

void DEG_id_type_tag ( struct Main bmain,
short  id_type 
)

◆ DEG_ids_clear_recalc()

void DEG_ids_clear_recalc ( Depsgraph depsgraph,
bool  backup 
)

◆ DEG_ids_restore_recalc()

void DEG_ids_restore_recalc ( Depsgraph depsgraph)

Restore recalc flags, backed up by a previous call to DEG_ids_clear_recalc. This also clears the backup.

Definition at line 886 of file depsgraph_tag.cc.

References depsgraph, id_node, and blender::deg::Depsgraph::id_nodes.

Referenced by BKE_scene_graph_update_for_newframe_ex(), and scene_graph_update_tagged().

◆ DEG_is_active()

bool DEG_is_active ( const struct Depsgraph depsgraph)

◆ DEG_is_evaluating()

bool DEG_is_evaluating ( const struct Depsgraph depsgraph)

Definition at line 306 of file depsgraph.cc.

References depsgraph, and blender::deg::Depsgraph::is_evaluating.

Referenced by mesh_get_eval_deform(), and mesh_get_eval_final().

◆ DEG_make_active()

void DEG_make_active ( struct Depsgraph depsgraph)

◆ DEG_make_inactive()

void DEG_make_inactive ( struct Depsgraph depsgraph)

Definition at line 332 of file depsgraph.cc.

References depsgraph, and blender::deg::Depsgraph::is_active.

Referenced by animviz_calc_motionpaths().

◆ DEG_register_node_types()

void DEG_register_node_types ( void  )

◆ DEG_tag_on_visible_update()

void DEG_tag_on_visible_update ( struct Main bmain,
bool  do_time 
)

Tag all dependency graphs for update when visible scenes/layers changes.

Definition at line 816 of file depsgraph_tag.cc.

References depsgraph, and blender::deg::get_all_registered_graphs().

Referenced by BKE_memfile_undo_decode(), ED_scene_change_update(), localview_remove_from_exec(), and render_endjob().

◆ DEG_time_tag_update()

void DEG_time_tag_update ( struct Main bmain)

Tag all dependency graphs when time has changed.

Definition at line 773 of file depsgraph_tag.cc.

References DEG_graph_time_tag_update(), depsgraph, and blender::deg::get_all_registered_graphs().

Referenced by ED_update_for_newframe().

◆ DEG_update_tag_as_string()

const char* DEG_update_tag_as_string ( IDRecalcFlag  flag)