Blender
V3.3
|
#include "BLI_iterator.h"
#include "DEG_depsgraph.h"
#include "DEG_depsgraph_build.h"
#include "DNA_object_types.h"
Go to the source code of this file.
Classes | |
struct | DEGObjectIterData |
struct | DEGIDIterData |
DEG object iterators | |
#define | DEG_OBJECT_ITER_BEGIN(graph_, instance_, flag_) |
#define | DEG_OBJECT_ITER_END |
#define | DEG_OBJECT_ITER_FOR_RENDER_ENGINE_BEGIN(graph_, instance_) |
#define | DEG_OBJECT_ITER_FOR_RENDER_ENGINE_END DEG_OBJECT_ITER_END |
enum | { DEG_ITER_OBJECT_FLAG_LINKED_DIRECTLY = (1 << 0) , DEG_ITER_OBJECT_FLAG_LINKED_INDIRECTLY = (1 << 1) , DEG_ITER_OBJECT_FLAG_LINKED_VIA_SET = (1 << 2) , DEG_ITER_OBJECT_FLAG_VISIBLE = (1 << 3) , DEG_ITER_OBJECT_FLAG_DUPLI = (1 << 4) } |
typedef struct DEGObjectIterData | DEGObjectIterData |
void | DEG_iterator_objects_begin (struct BLI_Iterator *iter, DEGObjectIterData *data) |
void | DEG_iterator_objects_next (struct BLI_Iterator *iter) |
void | DEG_iterator_objects_end (struct BLI_Iterator *iter) |
DEG traversal | |
enum | { DEG_FOREACH_COMPONENT_IGNORE_TRANSFORM_SOLVERS = (1 << 0) } |
typedef void(* | DEGForeachIDCallback) (ID *id, void *user_data) |
typedef void(* | DEGForeachIDComponentCallback) (ID *id, eDepsObjectComponentType component, void *user_data) |
void | DEG_foreach_ancestor_ID (const Depsgraph *depsgraph, const ID *id, DEGForeachIDCallback callback, void *user_data) |
void | DEG_foreach_dependent_ID (const Depsgraph *depsgraph, const ID *id, DEGForeachIDCallback callback, void *user_data) |
void | DEG_foreach_dependent_ID_component (const Depsgraph *depsgraph, const ID *id, eDepsObjectComponentType source_component_type, int flags, DEGForeachIDComponentCallback callback, void *user_data) |
void | DEG_foreach_ID (const Depsgraph *depsgraph, DEGForeachIDCallback callback, void *user_data) |
DEG ID iterators | |
typedef struct DEGIDIterData | DEGIDIterData |
void | DEG_iterator_ids_begin (struct BLI_Iterator *iter, DEGIDIterData *data) |
void | DEG_iterator_ids_next (struct BLI_Iterator *iter) |
void | DEG_iterator_ids_end (struct BLI_Iterator *iter) |
Public API for Querying Depsgraph.
Definition in file DEG_depsgraph_query.h.
#define DEG_OBJECT_ITER_BEGIN | ( | graph_, | |
instance_, | |||
flag_ | |||
) |
NOTE: Be careful with DEG_ITER_OBJECT_FLAG_LINKED_INDIRECTLY objects. Although they are available they have no overrides (collection_properties) and will crash if you try to access it.
Definition at line 182 of file DEG_depsgraph_query.h.
#define DEG_OBJECT_ITER_END |
Definition at line 196 of file DEG_depsgraph_query.h.
#define DEG_OBJECT_ITER_FOR_RENDER_ENGINE_BEGIN | ( | graph_, | |
instance_ | |||
) |
Depsgraph objects iterator for draw manager and final render
Definition at line 204 of file DEG_depsgraph_query.h.
#define DEG_OBJECT_ITER_FOR_RENDER_ENGINE_END DEG_OBJECT_ITER_END |
Definition at line 211 of file DEG_depsgraph_query.h.
Definition at line 237 of file DEG_depsgraph_query.h.
typedef void(* DEGForeachIDComponentCallback) (ID *id, eDepsObjectComponentType component, void *user_data) |
Definition at line 238 of file DEG_depsgraph_query.h.
typedef struct DEGIDIterData DEGIDIterData |
typedef struct DEGObjectIterData DEGObjectIterData |
anonymous enum |
Enumerator | |
---|---|
DEG_ITER_OBJECT_FLAG_LINKED_DIRECTLY | |
DEG_ITER_OBJECT_FLAG_LINKED_INDIRECTLY | |
DEG_ITER_OBJECT_FLAG_LINKED_VIA_SET | |
DEG_ITER_OBJECT_FLAG_VISIBLE | |
DEG_ITER_OBJECT_FLAG_DUPLI |
Definition at line 135 of file DEG_depsgraph_query.h.
anonymous enum |
Starts traversal from given component of the given ID, invokes callback for every other component which is directly on indirectly dependent on the source one.
Enumerator | |
---|---|
DEG_FOREACH_COMPONENT_IGNORE_TRANSFORM_SOLVERS |
Definition at line 259 of file DEG_depsgraph_query.h.
void DEG_foreach_ancestor_ID | ( | const Depsgraph * | depsgraph, |
const ID * | id, | ||
DEGForeachIDCallback | callback, | ||
void * | user_data | ||
) |
Definition at line 278 of file depsgraph_query_foreach.cc.
void DEG_foreach_dependent_ID | ( | const Depsgraph * | depsgraph, |
const ID * | id, | ||
DEGForeachIDCallback | callback, | ||
void * | user_data | ||
) |
Definition at line 259 of file depsgraph_query_foreach.cc.
void DEG_foreach_dependent_ID_component | ( | const Depsgraph * | depsgraph, |
const ID * | id, | ||
eDepsObjectComponentType | source_component_type, | ||
int | flags, | ||
DEGForeachIDComponentCallback | callback, | ||
void * | user_data | ||
) |
Definition at line 267 of file depsgraph_query_foreach.cc.
References callback, depsgraph, and user_data.
Referenced by flush_trans_object_base_deps_flag().
void DEG_foreach_ID | ( | const Depsgraph * | depsgraph, |
DEGForeachIDCallback | callback, | ||
void * | user_data | ||
) |
Definition at line 286 of file depsgraph_query_foreach.cc.
Get bmain that depsgraph was built for.
Definition at line 93 of file depsgraph_query.cc.
References blender::deg::Depsgraph::bmain, and graph.
Referenced by BKE_scene_graph_update_for_newframe_ex(), DEG_editors_update(), displace_volume(), ED_render_view3d_update(), engine_depsgraph_init(), find_sockets_to_preview(), modifier_apply_obdata(), modifyMesh(), and blender::nodes::transform_volume().
Get time that depsgraph is being evaluated or was last evaluated at.
Definition at line 105 of file depsgraph_query.cc.
References blender::deg::Depsgraph::ctime, and graph.
Referenced by applyLength(), bakeModifier(), BKE_animsys_eval_animdata(), BKE_animsys_eval_driver(), BKE_gpencil_frame_active_set(), BKE_mask_eval_animation(), BKE_mask_eval_update(), BKE_object_where_is_calc(), BKE_object_where_is_calc_ex(), BKE_rigidbody_eval_simulation(), BKE_rigidbody_object_sync_transforms(), BKE_rigidbody_rebuild_sim(), camera_view3d_reconstruction(), camerasolver_evaluate(), clothModifier_do(), deformStroke(), deformVerts(), blender::io::alembic::ABCPointsWriter::do_write(), DRW_cache_gpencil_face_wireframe_get(), drw_particle_update_ptcache_edit(), followtrack_context_init(), generate_geometry(), generic_bake_deform_stroke(), get_effector_data(), gpencil_bake_grease_pencil_animation_exec(), GPENCIL_cache_init(), gpencil_remap_time_get(), gpencil_strokes_reproject_exec(), blender::eevee::gpIterData::gpIterData(), image_camera_background_texture_get(), image_user_id_eval_animation(), make_duplis_particle_system(), MOD_init_texture(), modifyMesh(), motion_path_cache(), objectsolver_evaluate(), OVERLAY_engine_init(), OVERLAY_gpencil_color_names(), OVERLAY_relationship_lines(), particle_batch_cache_ensure_pos(), particle_system_update(), precalculate_effector(), psys_get_particle_state(), transformcache_evaluate(), volume_sequence_frame(), and waveModifier_do().
void DEG_get_customdata_mask_for_object | ( | const struct Depsgraph * | graph, |
struct Object * | object, | ||
struct CustomData_MeshMasks * | r_mask | ||
) |
Get additional mesh CustomData_MeshMasks flags for the given object.
Referenced by object_get_datamask().
Get additional evaluation flags for the given ID.
Referenced by evaluate_curve_type_object(), and mesh_build_extra_data().
Get evaluated version of given ID data-block.
Referenced by BKE_cachefile_reload(), BKE_collider_cache_create(), BKE_collision_objects_create(), BKE_effectors_create(), box_select_exec(), circle_select_exec(), blender::ed::space_node::compo_initjob(), do_lasso_select_mask(), ED_gpencil_sbuffer_vertex_color_set(), ED_mask_draw_region(), ED_mask_feather_find_nearest(), ED_mask_find_nearest_diff_point(), ED_mask_point_find_nearest(), ED_mask_selected_minmax(), ED_screen_exit(), EDBM_unified_findnearest_from_raycast(), editbmesh_get_eval_cage_from_orig(), gizmo_preselect_edgering_test_select(), gizmo_preselect_elem_test_select(), gpencil_sculpt_brush_apply_standard(), gpencil_vertexpaint_brush_apply_to_layers(), gpencil_weightpaint_brush_apply_to_layers(), knifeproject_poly_from_object(), knifetool_init_obinfo(), object_convert_exec(), OVERLAY_edit_uv_init(), ringsel_find_edge(), blender::io::gpencil::GpencilIO::selected_objects_boundbox_calc(), spline_under_mouse_get(), transform_convert_mesh_crazyspace_detect(), uiTemplateCacheFileProcedural(), and view3d_stereo3d_setup().
struct Object* DEG_get_evaluated_object | ( | const struct Depsgraph * | depsgraph, |
struct Object * | object | ||
) |
Get evaluated version of object for given original one.
Referenced by add_hook_object(), add_verts_to_dgroups(), animviz_calc_motionpaths(), apply_armature_pose2bones_exec(), apply_objects_internal(), axis_set_view(), bake(), bakeModifier(), BKE_camera_params_from_view3d(), BKE_camera_view_frame_fit_to_coords(), BKE_constraint_apply_for_object(), BKE_constraint_apply_for_pose(), BKE_crazyspace_get_mapped_editverts(), BKE_editmesh_vert_coords_when_deformed(), BKE_gpencil_cache_data_init(), BKE_gpencil_convert_mesh(), BKE_gpencil_layer_transform_matrix_get(), BKE_gpencil_update_layer_transforms(), BKE_mesh_to_curve(), BKE_mesh_to_pointcloud(), BKE_modifier_get_evaluated(), BKE_multires_create_deformed_base_mesh_vert_coords(), BKE_multires_create_mesh(), BKE_object_workob_calc_parent(), BKE_pointcloud_to_mesh(), BKE_ptcache_bake(), BKE_sculpt_object_pbvh_ensure(), BKE_sculpt_update_object_for_edit(), bpy_bmesh_from_object(), bvh_get_mesh(), crazyspace_init_object_for_eval(), curve_from_curve_object(), curve_from_font_object(), blender::ed::curves::convert_from_particle_system::curves_convert_from_particle_system_exec(), data_transfer_exec(), datalayout_transfer_exec(), disconnect_hair(), do_render_full_pipeline(), DRW_draw_select_id(), DRW_select_buffer_context_offset_for_object_elem(), dt_layers_select_src_itemf(), dynamicpaint_bake_exec(), ED_draw_object_facemap(), ED_gpencil_data_get_active_evaluated(), ED_mesh_pick_face_vert(), ED_mesh_pick_vert(), ED_mesh_shapes_join_objects_exec(), ED_object_data_xform_container_update_all(), ED_object_modifier_apply(), ED_object_parent_set(), ED_object_particle_edit_mode_enter_ex(), ED_object_xform_skip_child_container_update_all(), ED_view3d_camera_lock_init_ex(), ED_view3d_camera_lock_sync(), ED_view3d_camera_to_view_selected_with_set_clipping(), ED_view3d_depth_override(), ED_view3d_draw_offscreen_imbuf(), ED_view3d_draw_offscreen_imbuf_simple(), ED_view3d_persp_switch_from_camera(), ED_view3d_radius_to_dist(), ED_view3d_smooth_view_ex(), ED_view3d_to_object(), EEVEE_render_modules_init(), EEVEE_render_view_sync(), blender::ed::sculpt_paint::AddOperationExecutor::execute(), blender::ed::sculpt_paint::DensityAddOperationExecutor::execute(), blender::ed::sculpt_paint::DensitySubtractOperationExecutor::execute(), blender::ed::sculpt_paint::SlideOperationExecutor::execute(), FRS_do_stroke_rendering(), blender::bke::crazyspace::get_evaluated_curves_deformation(), gizmo_preselect_edgering_test_select(), gpencil_bake_grease_pencil_animation_exec(), gpencil_generate_weights_exec(), gpencil_primitive_init(), GPENCIL_render_init(), GPENCIL_render_to_image(), gpencil_session_initdata(), ignore_parent_tx(), blender::io::obj::obj_importer_test::import_and_check(), Freestyle::BlenderFileLoader::insertShapeNode(), iter_snap_objects(), knifeproject_poly_from_object(), lineart_gpencil_generate(), lineart_main_load_geometries(), lineart_object_load_single_instance(), make_duplis_font(), make_object_duplilist_real(), match_texture_space_exec(), meshobject_foreachScreenVert(), blender::ed::sculpt_paint::min_distance_edit::min_distance_edit_invoke(), MOD_lineart_compute_feature_lines(), modifier_apply_create_mesh_for_modifier(), modifier_apply_obdata(), modifier_skin_armature_create(), move_cursor(), moveCloserToDistanceFromPlane(), multires_mark_as_modified(), multires_reshape_create_subdiv(), multiresModifier_reshapeFromObject(), blender::io::obj::OBJCurve::OBJCurve(), object_convert_exec(), object_data_convert_curve_to_mesh(), object_force_modifier_update_for_bind(), object_origin_set_exec(), object_overlay_mode_transfer_animation_start(), object_preview_render(), ObjectToTransData(), blender::io::obj::OBJMesh::OBJMesh(), OVERLAY_camera_cache_populate(), OVERLAY_edit_uv_cache_init(), OVERLAY_grid_init(), paint_sample_color(), paint_weight_gradient_exec(), paintface_flush_flags(), particle_intersect_mesh(), PE_create_particle_edit(), PE_create_shape_tree(), pose_clear_transform_generic_exec(), pose_foreachScreenBone(), proj_paint_state_mesh_eval_init(), proj_paint_state_viewport_init(), psys_eval_get(), remap_hair_emitter(), renderresult_stampinfo(), rigidbody_objects_calc_mass_exec(), ringsel_find_edge(), blender::ed::sculpt_paint::sample_curves_3d_brush(), seq_render_scene_strip(), set_plane_exec(), shrinkwrapModifier_deform(), snap_curs_to_sel_ex(), snap_selected_to_location(), spreadsheet_get_object_eval(), text_update_edited(), blender::ed::sculpt_paint::use_add_density_mode(), uv_select_tag_update_for_object(), uv_shortest_path_pick_ex(), validate_object_select_id(), vgroup_fix(), view3d_camera_border(), view3d_camera_to_view_selected_impl(), view3d_viewmatrix_set(), view_lock_to_active_exec(), visual_transform_apply_exec(), vpaint_proj_dm_map_cosnos_init(), vpaint_proj_dm_map_cosnos_update(), workbench_render(), and workbench_render_matrices_init().
void DEG_get_evaluated_rna_pointer | ( | const struct Depsgraph * | depsgraph, |
struct PointerRNA * | ptr, | ||
struct PointerRNA * | r_ptr_eval | ||
) |
Get evaluated version of data pointed to by RNA pointer
Get scene at its evaluated state.
Technically, this is a copied-on-written and fully evaluated version of the input scene. This function will check that the data-block has been expanded (and copied) from the original one. Assert will happen if it's not.
Referenced by action_preview_render(), add_hook_object(), add_verts_to_dgroups(), bakeModifier(), BKE_cachefile_filepath_get(), BKE_camera_view_frame_fit_to_coords(), BKE_constraint_apply_for_object(), BKE_constraint_apply_for_pose(), BKE_crazyspace_get_mapped_editverts(), BKE_effectors_create(), BKE_mesh_to_curve(), BKE_mesh_to_pointcloud(), BKE_multires_create_deformed_base_mesh_vert_coords(), BKE_multires_create_mesh(), BKE_scene_update_sound(), bpy_bmesh_from_object(), C_BVHTree_FromObject(), data_transfer_exec(), datalayout_transfer_exec(), deformVerts(), deformVertsEM(), DEG_iterator_objects_begin(), displaceModifier_do(), blender::io::alembic::ABCHairWriter::do_write(), blender::io::alembic::ABCPointsWriter::do_write(), blender::io::usd::USDCameraWriter::do_write(), DRW_custom_pipeline(), DRW_draw_depth_loop(), DRW_draw_render_loop(), DRW_draw_render_loop_2d_ex(), DRW_draw_render_loop_ex(), DRW_draw_select_id(), DRW_draw_select_loop(), DRW_draw_view(), drw_notify_view_update_offscreen(), DRW_render_gpencil(), DRW_render_set_time(), DRW_render_to_image(), dt_layers_select_src_itemf(), dynamicpaint_bake_exec(), ED_mesh_pick_face_vert(), ED_mesh_pick_vert(), ED_mesh_shapes_join_objects_exec(), ED_screen_animation_play(), ED_view3d_depth_override(), EEVEE_bloom_init(), eevee_cache_finish(), EEVEE_depth_of_field_init(), eevee_lightbake_cache_create(), eevee_lightbake_create_resources(), eevee_lightbake_gather_probes(), eevee_lightbake_render_grid_sample(), eevee_lightbake_render_probe_sample(), eevee_lightbake_render_world_sample(), EEVEE_lightprobes_cache_finish(), EEVEE_lightprobes_cache_init(), EEVEE_lightprobes_init(), EEVEE_lightprobes_refresh(), EEVEE_lookdev_cache_init(), EEVEE_occlusion_init(), EEVEE_render_cache(), EEVEE_render_init(), eevee_render_to_image(), EEVEE_screen_raytrace_init(), EEVEE_shadows_init(), EEVEE_subsurface_cache_init(), EEVEE_temporal_sampling_init(), EEVEE_volumes_init(), force_evaluation_if_constraint_disabled(), FRS_do_stroke_rendering(), generateStrokes(), generic_bake_deform_stroke(), GPENCIL_render_init(), ignore_parent_tx(), mesh_new_from_mesh_object_with_layers(), meshobject_foreachScreenVert(), MOD_lineart_compute_feature_lines(), modifier_apply_create_mesh_for_modifier(), modifier_skin_armature_create(), modifyMesh(), moveCloserToDistanceFromPlane(), multires_as_mesh(), multires_ccg_settings_init(), multires_reshape_context_create_from_base_mesh(), multires_reshape_context_create_from_object(), multires_reshape_create_subdiv(), multiresModifier_reshapeFromObject(), object_force_modifier_update_for_bind(), object_preview_render(), paint_weight_gradient_exec(), particle_intersect_mesh(), proj_paint_state_mesh_eval_init(), RE_point_density_cache(), RE_point_density_minmax(), render_init_depsgraph(), screen_animation_step_invoke(), screen_opengl_render_anim_init(), seq_prefetch_init_depsgraph(), set_plane_exec(), SIM_cloth_solve(), sound_jack_sync_callback(), sound_mixdown_exec(), subdiv_levels_for_modifier_get(), vgroup_fix(), vpaint_proj_dm_map_cosnos_init(), vpaint_proj_dm_map_cosnos_update(), warpModifier_do(), waveModifier_do(), and wm_event_do_handlers().
Get view layer at its evaluated state. This is a shortcut for accessing active view layer from evaluated scene.
Referenced by BKE_object_eval_eval_base_flags(), BKE_scene_base_iter_next(), DRW_custom_pipeline(), DRW_draw_depth_loop(), DRW_draw_render_loop_2d_ex(), DRW_draw_render_loop_ex(), DRW_draw_select_id(), DRW_draw_select_loop(), drw_notify_view_update_offscreen(), DRW_render_gpencil(), DRW_render_set_time(), DRW_render_to_image(), EEVEE_lightbake_job(), object_get_datamask(), snap_curs_to_sel_ex(), snap_sel_to_grid_exec(), view3d_all_exec(), view3d_orbit_calc_center(), and viewselected_exec().
Get scene that depsgraph was built for.
Definition at line 81 of file depsgraph_query.cc.
References graph, and blender::deg::Depsgraph::scene.
Referenced by action_preview_render(), BKE_crazyspace_get_mapped_editverts(), BKE_scene_graph_update_for_newframe_ex(), BKE_volume_simplify_factor(), BKE_volume_simplify_level(), curve_from_curve_object(), DEG_editors_update(), DEG_evaluate_on_framechange(), DEG_evaluate_on_refresh(), blender::io::alembic::SubdivModifierDisabler::disable_modifiers(), DRW_draw_callbacks_post_scene(), dynamicPaint_bakeImageSequence(), ED_preview_icon_job(), ED_render_view3d_update(), ED_update_for_newframe(), ED_view3d_cursor_snap_data_update(), EEVEE_lightprobes_cache_finish(), engine_depsgraph_init(), blender::io::alembic::export_startjob(), blender::io::usd::export_startjob(), blender::io::obj::exporter_main(), blender::io::alembic::ABCMetaballWriter::is_supported(), blender::io::usd::USDMetaballWriter::is_supported(), modifyMesh(), blender::nodes::node_geo_input_scene_time_cc::node_exec(), scene_graph_update_tagged(), sculpt_update_object(), v3d_cursor_snap_draw_fn(), and view3d_ruler_item_mousemove().
Get view layer that depsgraph was built for.
Definition at line 87 of file depsgraph_query.cc.
References graph, and blender::deg::Depsgraph::view_layer.
Referenced by BKE_collision_relations_create(), DEG_editors_update(), blender::io::alembic::SubdivModifierDisabler::disable_modifiers(), ED_render_view3d_update(), engine_depsgraph_init(), iter_snap_objects(), modifier_skin_armature_create(), psys_in_edit_mode(), scene_graph_update_tagged(), and view3d_ruler_item_mousemove().
eEvaluationMode DEG_get_mode | ( | const Depsgraph * | graph | ) |
Get evaluation mode that depsgraph was built for.
Definition at line 99 of file depsgraph_query.cc.
References graph, and blender::deg::Depsgraph::mode.
Referenced by BKE_collision_relations_create(), BKE_effector_relations_create(), BKE_gpencil_modifiers_calc(), BKE_mball_polygonize(), BKE_multires_create_deformed_base_mesh_vert_coords(), BKE_object_eval_eval_base_flags(), BKE_object_handle_data_update(), BKE_volume_simplify_factor(), BKE_volume_simplify_level(), bpy_bmesh_from_object(), bvh_get_mesh(), curve_from_curve_object(), curves_evaluate_modifiers(), DEG_debug_graph_relations_validate(), DEG_iterator_objects_begin(), distribute_invalid(), drw_particle_update_ptcache_edit(), dynamicPaint_doStep(), editbmesh_calc_modifiers(), get_dupli_generator(), gpencil_remap_time_get(), image_user_id_eval_animation(), init_meta(), lineart_main_load_geometries(), Freestyle::BlenderFileLoader::Load(), make_child_duplis(), make_duplis_collection(), make_duplis_geometry_set_impl(), make_duplis_particle_system(), mesh_calc_modifiers(), blender::nodes::node_geo_is_viewport_cc::node_geo_exec(), pointcloud_evaluate_modifiers(), pointdensity_cache_psys(), psys_in_edit_mode(), psys_sim_data_init(), psys_thread_context_init_distribute(), psys_update_path_cache(), and volume_evaluate_modifiers().
Get original version of given evaluated ID data-block.
Definition at line 283 of file depsgraph_query.cc.
References blender::deg::get_original_id().
Referenced by BKE_armature_refresh_layer_used(), BKE_cachefile_eval(), BKE_curve_eval_geometry(), BKE_gpencil_boundbox_get(), BKE_gpencil_frame_active_set(), BKE_gpencil_prepare_eval_data(), BKE_mask_eval_update(), BKE_mesh_eval_geometry(), BKE_object_material_from_eval_data(), BKE_volume_eval_geometry(), constraint_find_original(), DEG_get_collision_relations(), DEG_get_customdata_mask_for_object(), DEG_get_effector_relations(), DEG_get_original_object(), drw_particle_update_ptcache(), drw_particle_update_ptcache_edit(), DRW_shader_from_material(), DRW_shader_from_world(), foreach_libblock_make_original_callback(), is_stroke_affected_by_modifier(), movieclip_eval_update_generic(), movieclip_eval_update_reload(), OVERLAY_edit_particle_cache_populate(), pyrna_struct_repr(), pyrna_struct_str(), and blender::eevee::World::sync().
Get original version of object for given evaluated one.
Definition at line 278 of file depsgraph_query.cc.
References DEG_get_original_id(), and Object::id.
Referenced by blender::ed::spreadsheet::GeometryDataSource::apply_selection_filter(), BKE_curves_data_update(), BKE_modifier_get_original(), BKE_object_is_deform_modified(), BKE_object_is_modified(), BKE_object_sync_to_original(), BKE_sculpt_update_object_after_eval(), BKE_sculpt_update_object_before_eval(), BKE_sculpt_update_object_for_edit(), deformVerts(), draw_armature_edit(), draw_armature_pose(), drw_particle_get_hair_source(), drw_particle_update_ptcache(), drw_particle_update_ptcache_edit(), DRW_select_buffer_elem_get(), drw_select_filter_object_mode_lock_for_weight_paint(), find_sockets_to_preview_for_spreadsheet(), getOriginalModifierData(), blender::ed::spreadsheet::GeometryDataSource::has_selection_filter(), make_object_duplilist_real(), nearest_world_object_fn(), blender::nodes::node_geo_deform_curves_on_surface_cc::node_geo_exec(), object_get_datamask(), object_transfer_mode_to_base(), object_update_from_subsurf_ccg(), OVERLAY_edit_particle_cache_populate(), OVERLAY_paint_texture_cache_populate(), OVERLAY_paint_vertex_cache_populate(), raycast_obj_fn(), sbStoreLastFrame(), select_id_get_object_select_mode(), snap_curs_to_sel_ex(), snap_obj_fn(), snap_object_data_editmesh_treedata_get(), snap_sel_to_grid_exec(), blender::ed::spreadsheet::spreadsheet_get_display_geometry_set(), view3d_all_exec(), view3d_orbit_calc_center(), and viewselected_exec().
Check if given ID type is present in the depsgraph
Referenced by drw_gpencil_engine_needed().
Referenced by DEG_editors_update(), DEG_ids_clear_recalc(), DEG_iterator_ids_begin(), and scene_graph_update_tagged().
Check if given ID type was tagged for update.
Referenced by BKE_scene_update_tag_audio_volume(), make_duplis_font(), and mesh_build_data().
Check whether depsgraph is fully evaluated. This includes the following checks:
Definition at line 328 of file depsgraph_query.cc.
References depsgraph, blender::deg::Depsgraph::entry_tags, and blender::deg::Depsgraph::need_update_relations.
Referenced by BKE_scene_graph_update_for_newframe_ex(), and scene_graph_update_tagged().
Check whether given ID is an original,
Original IDs are considered all the IDs which are not covered by copy-on-write system and are not out-of-main localized data-blocks.
Referenced by BKE_object_get_editmesh_eval_cage(), BKE_object_get_editmesh_eval_final(), BM_mesh_bm_from_me(), and mesh_new_from_mesh_object_with_layers().
void DEG_iterator_ids_begin | ( | struct BLI_Iterator * | iter, |
DEGIDIterData * | data | ||
) |
Definition at line 367 of file depsgraph_query_iter.cc.
References BLI_Iterator::data, data, DEG_id_type_any_updated(), DEG_iterator_ids_next(), DEG_iterator_ids_step(), depsgraph, id_node, blender::deg::Depsgraph::id_nodes, blender::Vector< T, InlineBufferCapacity, Allocator >::size(), BLI_Iterator::skip, and BLI_Iterator::valid.
void DEG_iterator_ids_end | ( | struct BLI_Iterator * | iter | ) |
void DEG_iterator_ids_next | ( | struct BLI_Iterator * | iter | ) |
Definition at line 391 of file depsgraph_query_iter.cc.
References BLI_Iterator::data, data, DEG_iterator_ids_step(), depsgraph, id_node, BLI_Iterator::skip, and BLI_Iterator::valid.
Referenced by DEG_iterator_ids_begin().
void DEG_iterator_objects_begin | ( | struct BLI_Iterator * | iter, |
DEGObjectIterData * | data | ||
) |
Definition at line 280 of file depsgraph_query_iter.cc.
References BLI_Iterator::data, data, DEG_get_evaluated_scene(), DEG_get_mode(), DEG_iterator_objects_next(), depsgraph, blender::deg::Depsgraph::id_nodes, blender::Vector< T, InlineBufferCapacity, Allocator >::size(), and BLI_Iterator::valid.
void DEG_iterator_objects_end | ( | struct BLI_Iterator * | iter | ) |
Definition at line 327 of file depsgraph_query_iter.cc.
References BLI_Iterator::data, data, and if().
void DEG_iterator_objects_next | ( | struct BLI_Iterator * | iter | ) |
Definition at line 307 of file depsgraph_query_iter.cc.
References BLI_Iterator::current, BLI_Iterator::data, data, and BLI_Iterator::valid.
Referenced by DEG_iterator_objects_begin().