Blender V5.0
ID Struct Reference

#include <DNA_ID.h>

Public Attributes

void * next
void * prev
struct IDnewid
struct Librarylib
struct AssetMetaDataasset_data
char name [258]
short flag
int tag
int us
int icon_id
unsigned int recalc
unsigned int recalc_up_to_undo_push
unsigned int recalc_after_undo_push
unsigned int session_uid
IDHash deep_hash
IDPropertyproperties
IDPropertysystem_properties
void * _pad1
IDOverrideLibraryoverride_library
struct IDorig_id
void * py_instance
struct LibraryWeakReferencelibrary_weak_reference
ID_RuntimeHandleruntime

Detailed Description

Definition at line 414 of file DNA_ID.h.

Member Data Documentation

◆ _pad1

void* ID::_pad1

Definition at line 491 of file DNA_ID.h.

◆ asset_data

◆ deep_hash

IDHash ID::deep_hash

This is only available on packed linked data-blocks. It is a hash of the contents the data-block including all its dependencies. It is computed when first packing the data-block and is not changed afterwards. It can be used to detect that packed data-blocks in two separate .blend files are the same.

Two data-blocks with the same deep hash are assumed to be interchangeable, but not necessarily exactly the same. For example, it's possible to change node positions on packed data-blocks without changing the deep hash.

Definition at line 474 of file DNA_ID.h.

Referenced by blender::ed::space_node::NodeClipboard::copy_add_node(), blender::bke::library::ensure_archive_library(), lib_id_copy_ensure_local(), library_link_begin(), mywrite_id_begin(), pack_linked_id(), blender::ed::space_node::NodeClipboard::paste_validate_id_references(), and read_libblock().

◆ flag

short ID::flag

ID_FLAG_... flags report on status of the data-block this ID belongs to (persistent, saved to and read from .blend).

Definition at line 438 of file DNA_ID.h.

Referenced by BKE_collection_blend_read_data(), BKE_collection_master_add(), BKE_id_copy_in_lib(), BKE_lib_override_library_make_local(), BKE_lib_override_library_update(), BKE_libblock_copy_in_lib(), blendfile_library_relocate_id_remap_finalize(), blendfile_relocate_postprocess_cleanup(), blo_do_versions_270(), blo_do_versions_280(), BLO_main_validate_embedded_flag(), BLO_main_validate_embedded_liboverrides(), BLO_Write_IDBuffer::BLO_Write_IDBuffer(), brush_make_local(), check_embedded_copy(), collection_copy_data(), blender::ed::outliner::collection_duplicate_exec(), collection_owner_pointer_get(), blender::ed::object::collection_unlink_exec(), blender::ed::object::collection_unlink_poll(), blender::bke::id_hash::compute_deep_hash_recursive(), blender::bke::idprop::create(), direct_link_id_common(), do_versions_after_setup(), blender::animrig::find_related_ids(), foreach_libblock_remap_callback(), blender::ed::space_node::gather_socket_link_operations(), blender::animrig::id_action_ensure(), blender::ed::outliner::id_override_library_create_hierarchy_pre_process(), IDP_AssignID(), idp_from_DatablockPointer(), blender::ed::object::iter_other(), lib_override_library_create_from(), lib_override_root_find(), lib_query_unused_ids_tag_recurse(), libblock_remap_data_update_tags(), library_foreach_ID_link(), mywrite_id_begin(), blender::ed::space_node::node_foreach_id(), blender::bke::node_tree_add_tree_do(), blender::bke::node_tree_blend_read_data(), blender::ed::outliner::outliner_collection_delete(), blender::ed::outliner::outliner_draw_userbuts(), pyrna_struct_repr(), read_libblock(), read_library_clear_weak_links(), read_library_linked_ids(), blender::ed::outliner::restrictbutton_id_user_toggle(), RNA_find_real_ID_and_path(), rna_property_override_property_real_id_owner(), RNA_property_pointer_set(), scene_blend_write(), template_id_cb(), blender::bke::tests::TEST(), TEST_F(), TEST_F(), and blender::deg::DepsgraphNodeBuilder::update_invalid_cow_pointers().

◆ icon_id

◆ lib

struct Library* ID::lib

Definition at line 420 of file DNA_ID.h.

Referenced by are_ids_from_different_mains_matching(), assert_sorted_ids(), blender::bke::asset_link_id(), BKE_blendfile_id_relocate(), BKE_blendfile_library_relocate(), BKE_blendfile_link(), BKE_blendfile_link_append_context_item_newid_set(), BKE_blendfile_link_pack(), BKE_collection_blend_read_data(), BKE_collection_master_add(), BKE_id_can_use_id(), BKE_id_copy_in_lib(), BKE_id_move_to_same_lib(), BKE_image_load_exists_in_lib(), BKE_lib_override_library_create_from_tag(), BKE_lib_override_library_proxy_convert(), BKE_lib_override_library_update(), BKE_libblock_copy_in_lib(), BKE_library_main_rebuild_hierarchy(), BKE_library_unused_linked_data_set_tag(), BKE_main_idmap_lookup_id(), BKE_pose_blend_read_after_liblink(), BKE_ptcache_id_clear(), blendfile_library_relocate_id_remap_finalize(), blendfile_relocate_postprocess_cleanup(), blo_do_versions_250(), blo_do_versions_pre250(), BLO_main_validate_libraries(), blo_read_file_internal(), BLO_Write_IDBuffer::BLO_Write_IDBuffer(), check_missing_files_foreach_path_cb(), blender::ed::space_node::NodeClipboard::copy_add_node(), create_placeholder(), blender::ed::transform::createTransObject(), direct_link_id_common(), do_version_collection_propagate_lib_to_children(), do_version_layers_to_collections(), do_versions_after_linking_280(), foreach_id_file_path_map(), foreach_libblock_append_ensure_reusable_local_id_callback(), foreach_libblock_remap_callback(), blender::compositor::CachedImageContainer::get(), blender::compositor::KeyingScreenContainer::get(), id_delete(), blender::ed::outliner::id_delete_tag(), blender::ed::outliner::id_override_library_create_hierarchy_pre_process(), id_sort_by_name(), image_file_browse_exec(), image_file_browse_invoke(), image_open_exec(), IMB_colormanagement_working_space_convert(), Freestyle::BlenderFileLoader::insertShapeNode(), blender::ed::object::is_smooth_by_angle_modifier(), blender::bke::greasepencil::convert::legacy_gpencil_object(), blender::bke::greasepencil::convert::legacy_gpencil_sanitize_annotations(), blender::bke::greasepencil::convert::legacy_gpencil_to_grease_pencil(), lib_id_copy_ensure_local(), lib_override_hierarchy_dependencies_skip_check(), lib_override_library_create_do(), lib_override_library_create_from(), lib_override_library_create_post_process(), lib_override_library_main_resync_on_library_indirect_level(), lib_override_library_remap(), lib_override_library_resync(), lib_override_linked_group_tag(), lib_override_linked_group_tag_clear_boneshapes_objects(), lib_override_overrides_group_tag_recursive(), lib_override_resync_tagging_finalize(), lib_override_resync_tagging_finalize_recurse(), lib_override_sort_libraries_func(), libblock_remap_foreach_idpair(), library_foreach_ID_link(), main_merge_add_id_to_move(), blender::ed::object::make_override_library_invoke(), blender::workbench::Material::Material(), blender::bke::node_tree_blend_read_data(), object_blend_read_after_liblink(), blender::ed::object::object_select_linked_exec(), pack_linked_id(), blender::bke::library::pack_linked_id_hierarchy(), UniqueName_Map::populate(), ptcache_file_open(), ptcache_path(), pyrna_prop_collection_subscript_str_lib_pair_ptr(), read_libblock_undo_restore_identical(), rebuild_hierarchy_best_parent_find(), reuse_editable_asset_bmain_data_for_blendfile(), RNA_path_full_ID_py(), rna_property_override_check_resync(), scene_blend_write(), scene_undo_depsgraph_gen_key(), setup_app_data(), template_id_liboverride_hierarchy_collection_root_find_recursive(), template_id_liboverride_hierarchy_collections_tag_recursive(), blender::animrig::tests::TEST_F(), blender::bke::tests::TEST_F(), ui_template_id_liboverride_hierarchy_make(), ui_tooltip_data_from_button_or_extra_icon(), ui_tooltip_data_from_search_item_tooltip_data(), undosys_id_ref_store(), wm_id_linked_relocate_exec(), wm_link_append_exec(), and write_libraries().

◆ library_weak_reference

◆ name

char ID::name[258]

Main identifier for this data-block. Must be unique within the ID name-space (defined by its type, and owning Library).

The first two bytes are always the ID_Type code of the data-block's type.

One critical usage is to reference external linked data.

Definition at line 432 of file DNA_ID.h.

Referenced by absolute_convert_foreach_path_cb(), acf_action_slot_name_prop(), acf_fcurve_name(), acf_generic_group_offset(), acf_generic_idblock_name(), acf_nlaaction_name(), acf_object_name(), achannel_is_part_of_disconnected_slot(), actcon_get_tarmat(), blender::bke::action_asset_metadata_ensure(), action_create_new(), blender::animrig::action_fcurve_attach(), action_idcode_patch_check(), blender::bke::action_init_data(), action_new_exec(), action_preview_render(), action_stash_create_exec(), blender::ed::viewer_path::activate_geometry_node(), blender::bke::id::IDRemapper::add(), blender::deg::DepsgraphRelationBuilder::add_depends_on_transform_relation(), add_driver_with_target(), blender::ed::outliner::AbstractTreeDisplay::add_element(), blender::nodes::GeometryNodesEvalDependencies::add_generic_id_full(), blender::ed::object::add_hook_object(), blender::deg::Depsgraph::add_id_node(), blender::deg::DepsgraphNodeBuilder::add_id_node(), add_nodes(), add_or_move_to_collection_bcoll(), blender::bke::id::IDRemapper::add_overwrite(), blender::ed::object::add_shapekey_layers(), after_liblink_id_embedded_id_process(), after_liblink_id_process(), ANIM_add_driver(), ANIM_add_driver_with_target(), ANIM_armature_bonecoll_insert_copy_after(), ANIM_channel_action_get(), ANIM_copy_as_driver(), ANIM_copy_driver(), ANIM_paste_driver(), animchan_sync_fcurve(), animchan_sync_fcurve_scene(), animchan_sync_group(), animdata_filter_dopesheet(), animdata_filter_ds_textures(), animviz_verify_motionpaths(), blender::nodes::LazyFunctionForGeometryNode::anonymous_attribute_name_for_output(), blender::ed::object::apply_objects_internal(), are_ids_from_different_mains_matching(), armature_undosys_step_decode(), assert_sorted_ids(), blender::bke::asset_link_id(), blender::io::usd::utils::assign_materials(), blender::ed::object::bake(), blender::ed::object::bake_object_check(), blender::ed::object::bake_objects_check(), blender::ed::object::bake_targets_init_internal(), blender::ed::object::bake_targets_output_external(), blender::ed::object::bake_targets_output_internal(), blender::ed::object::base_free_and_unlink(), BKE_add_template_variables_for_render_path(), BKE_animdata_action_ensure_idroot(), BKE_animdata_copy_id(), BKE_animdata_transfer_by_basepath(), BKE_animsys_eval_animdata(), BKE_animsys_eval_driver(), BKE_blendfile_append(), BKE_blendfile_id_relocate(), BKE_blendfile_library_relocate(), BKE_blendfile_link_pack(), BKE_collection_blend_read_data(), BKE_collection_new_name_get(), BKE_collection_ui_name_get(), BKE_curve_eval_geometry(), BKE_grease_pencil_object_material_index_get_by_name(), BKE_id_defgroup_list_get(), BKE_id_eval_properties_copy(), BKE_id_material_array_p(), BKE_id_material_len_p(), BKE_id_new_name_validate(), BKE_id_supports_vertex_groups(), BKE_idtype_get_info_from_id(), BKE_idtype_id_foreach_cache(), BKE_image_format_set(), BKE_image_print_memlist(), BKE_image_save_options_init(), BKE_imtype_valid_depths_with_video(), BKE_key_add(), BKE_key_evaluate_object_ex(), BKE_key_from_id_p(), BKE_keyingset_add_path(), BKE_lattice_active_point_get(), BKE_lib_override_library_create_from_tag(), BKE_lib_override_library_status_check_local(), BKE_lib_override_library_status_check_reference(), BKE_lib_override_library_update(), BKE_libblock_copy_in_lib(), BKE_libblock_relink_ex(), BKE_library_id_can_use_filter_id(), BKE_library_ID_test_usages(), BKE_light_eval(), BKE_light_linking_add_receiver_to_collection(), BKE_light_linking_add_receiver_to_collection_after(), BKE_light_linking_add_receiver_to_collection_before(), BKE_light_linking_unlink_id_from_collection(), BKE_main_idmap_insert_id(), BKE_main_idmap_lookup_id(), BKE_main_idmap_remove_id(), BKE_main_library_weak_reference_add_item(), BKE_main_library_weak_reference_create(), BKE_main_library_weak_reference_remove_item(), BKE_main_library_weak_reference_update_item(), BKE_main_merge(), BKE_mask_clipboard_copy_from_layer(), BKE_material_eval(), BKE_mball_basis_find(), BKE_mball_is_basis(), BKE_mball_is_same_group(), BKE_mball_properties_copy(), BKE_mesh_nomain_to_mesh(), BKE_mesh_runtime_is_valid(), BKE_mesh_to_curve(), BKE_mesh_to_pointcloud(), BKE_modifier_blend_read_data(), BKE_modifier_set_error(), BKE_movieclip_eval_update(), BKE_movieclip_get_gpu_texture(), BKE_nla_debug_print_flags(), BKE_nlastack_add_strip(), BKE_nlastrip_validate_name(), BKE_object_data_select_update(), BKE_object_defgroup_data_create(), BKE_object_eval_assign_data(), BKE_object_eval_constraints(), BKE_object_eval_eval_base_flags(), BKE_object_eval_light_linking(), BKE_object_eval_local_transform(), BKE_object_eval_parent(), BKE_object_eval_ptcache_reset(), BKE_object_eval_shading(), BKE_object_eval_transform_final(), BKE_object_eval_uber_data(), BKE_object_free_derived_caches(), BKE_object_get_evaluated_lattice(), BKE_object_get_evaluated_mesh_no_subsurf_unchecked(), BKE_object_handle_data_update(), BKE_object_handle_update_ex(), BKE_object_material_slot_used(), BKE_object_select_update(), BKE_packedfile_id_check(), BKE_packedfile_id_unpack(), BKE_packedfile_pack_all(), BKE_particle_settings_eval_reset(), BKE_particle_system_eval_init(), BKE_pointcloud_to_mesh(), BKE_pose_bone_done(), BKE_pose_constraints_evaluate(), BKE_pose_ensure(), BKE_pose_eval_bbone_segments(), BKE_pose_eval_bone(), BKE_pose_eval_cleanup(), BKE_pose_eval_done(), BKE_pose_eval_init(), BKE_pose_eval_init_ik(), BKE_pose_iktree_evaluate(), BKE_pose_splineik_evaluate(), BKE_previewimg_id_get_p(), BKE_previewimg_id_supports_jobs(), BKE_ptcache_bake(), BKE_rigidbody_eval_simulation(), BKE_rigidbody_object_sync_transforms(), BKE_rigidbody_rebuild_sim(), BKE_scene_duplicate(), BKE_screen_blend_read_data(), BKE_sound_evaluate(), BKE_volume_load(), BKE_volume_new_for_eval(), BKE_volume_unload(), BKE_workspace_layout_find(), BKE_world_eval(), Freestyle::BlenderStrokeRenderer::BlenderStrokeRenderer(), blendfile_library_relocate_id_remap_finalize(), blendfile_library_relocate_id_remap_prepare(), blendfile_relocate_postprocess_cleanup(), blo_do_versions_300(), blo_do_versions_pre250(), blo_find_main_for_library_and_idname(), BLO_main_validate_embedded_flag(), BLO_main_validate_embedded_liboverrides(), BLO_main_validate_libraries(), BLO_main_validate_shapekeys(), BLO_readfile_id_runtime_data_free_all(), blo_split_main(), BLO_update_defaults_startup_blend(), BLO_update_defaults_workspace(), blo_write_id_struct(), BLO_Write_IDBuffer::BLO_Write_IDBuffer(), BM_mesh_bm_from_me(), blender::animrig::internal::bonecolls_debug_list(), bpy_bmesh_from_object(), bpy_bmesh_to_mesh(), BPy_GeometrySet_static_from_evaluated_object(), BPy_InlineShaderNodes_static_from_light(), BPy_InlineShaderNodes_static_from_material(), BPy_InlineShaderNodes_static_from_world(), BPY_modules_load_user(), BPY_rna_exit(), bpy_text_filepath_get(), blender::ed::sculpt_paint::brush_asset_save_as_exec(), blender::deg::DepsgraphNodeBuilder::build_animation_images(), blender::deg::DepsgraphRelationBuilder::build_animation_images(), blender::deg::DepsgraphRelationBuilder::build_animdata_force(), blender::deg::DepsgraphRelationBuilder::build_copy_on_write_relations(), blender::deg::DepsgraphRelationBuilder::build_driver_data(), blender::deg::DepsgraphRelationBuilder::build_driver_rna_path_variable(), blender::deg::DepsgraphRelationBuilder::build_driver_variables(), blender::deg::DepsgraphNodeBuilder::build_id(), blender::deg::DepsgraphRelationBuilder::build_id(), blender::deg::DepsgraphNodeBuilder::build_nodetree(), blender::deg::DepsgraphRelationBuilder::build_nodetree(), blender::deg::DepsgraphNodeBuilder::build_object_data_geometry_datablock(), blender::deg::DepsgraphRelationBuilder::build_object_data_geometry_datablock(), blender::deg::DepsgraphNodeBuilder::build_parameters(), blender::ed::outliner::TreeDisplayIDOrphans::build_tree(), buttons_context_path_texture(), buttons_texture_context_compute(), buttons_texture_users_from_context(), bvh_get_mesh(), blender::io::hydra::cache_image_file(), blender::io::hydra::cache_or_get_image_file(), camera_background_image_remove_exec(), camera_multiview_advanced(), can_delete_key(), can_delete_scene_key(), check_embedded_copy(), check_id_and_name(), check_missing_files_foreach_path_cb(), check_valid_camera_multiview(), check_valid_compositing_camera(), blender::ed::object::childof_set_inverse_exec(), blender::animrig::clear_keyframe(), click_select_channel_action_slot(), click_select_channel_group(), blender::ed::outliner::collection_drop_init(), blender::ed::outliner::collection_drop_tooltip(), blender::ed::outliner::collection_duplicate_exec(), blender::ed::object::collection_exporter_export(), blender::ed::outliner::collection_instance_exec(), blender::ed::object::collection_io_export_all_exec(), blender::ed::object::collection_object_active_itemf(), collection_owner_pointer_get(), blender::ed::outliner::collection_parent_from_ID(), blender::nodes::materialx::GroupNodeParser::compute(), blender::deg::DepsgraphNodeBuilder::constraint_walk(), blender::deg::RNANodeQuery::construct_node_identifier(), convert_action_exec(), blender::ed::object::convert_curves_component_to_curves(), blender::ed::object::convert_curves_to_grease_pencil(), blender::ed::object::convert_curves_to_mesh(), blender::ed::object::convert_grease_pencil_component_to_curves(), blender::ed::object::convert_grease_pencil_to_mesh(), blender::animrig::versioning::convert_legacy_action_assignments(), blender::animrig::convert_to_layered_action(), convert_tree(), blender::ed::space_node::NodeClipboard::copy_add_node(), copy_dupli_context(), blender::ed::object::copy_object_set_idnew(), blender::io::fbx::create_camera_curves(), blender::io::fbx::create_material_curves(), create_placeholder(), blender::ed::transform::createObjectSpace(), blender::ed::transform::createTransTexspace(), blender::ed::transform::createViewSpace(), cryptomatte_init_from_node_image(), cryptomatte_init_from_node_render(), curve_calc_modifiers_post(), curve_select_random_exec(), curve_undosys_step_decode(), blender::ed::transform::data_for_snap_dupli(), blender::ed::object::data_transfer_exec_is_object_valid(), blender::ed::object::data_transfer_exec_preprocess_objects(), blender::ed::object::data_xform_by_mat4(), blender::ed::object::data_xform_create_ex(), blender::ed::object::data_xform_restore(), blender::ed::object::data_xform_tag_update(), datadropper_id_sample_pt(), blender::deform_drawing(), blender::deform_drawing(), DEG_add_object_pointcache_relation(), blender::deg::deg_create_eval_copy(), blender::deg::deg_eval_copy_is_needed(), blender::deg::deg_evaluate_object_modifiers_mode_node_visibility(), blender::deg::deg_evaluate_object_node_visibility(), blender::deg::deg_free_eval_copy_datablock(), DEG_get_evaluated_rna_pointer(), DEG_iterator_dupli_is_visible(), blender::deg::deg_update_eval_copy_datablock(), delete_key_button_exec(), blender::animrig::delete_keyframe(), direct_link_id(), direct_link_id_common(), direct_link_id_embedded_id(), direct_link_id_restore_recalc_exceptions(), do_map(), do_version_workspaces_after_lib_link(), do_version_workspaces_create_from_screens(), do_versions_after_linking_250(), blender::io::usd::USDArmatureWriter::do_write(), blender::io::usd::USDVolumeWriter::do_write(), blender::ed::spreadsheet::draw_context_panel_content(), draw_marker_name(), draw_selected_name(), blender::ed::vse::draw_seq_text_get_source(), drawviewborder(), driver_check_valid_targets(), driver_get_variable_property(), blender::ed::object::drop_geometry_nodes_invoke(), blender::ed::object::drop_geometry_nodes_tooltip(), blender::ed::object::drop_named_material_tooltip(), blender::draw::DRW_curve_batch_cache_create_requested(), ds_base_sorting_cmp(), dtar_get_prop_val(), blender::ed::greasepencil::duplicate_grease_pencil_object(), dvar_eval_locDiff(), dvar_eval_rotDiff(), dvar_eval_transChan(), ED_anim_ale_fcurve_delete(), ED_animedit_unlink_action(), ED_armature_bone_rename(), ED_armature_join_objects_exec(), ED_mesh_pick_edge(), ED_mesh_pick_face(), ED_mesh_pick_face_vert(), ED_mesh_pick_vert(), ED_node_set_active(), ED_node_shader_default(), ED_node_tree_start(), ED_render_id_flush_update(), ED_rigidbody_constraint_add(), ED_scene_view_layer_delete(), ED_text_format_get(), ED_text_is_syntax_highlight_supported(), ED_undo_is_legacy_compatible_for_property(), ED_undo_object_set_active_or_warn(), ED_view3d_camera_autokey(), ED_workspace_duplicate(), edbm_select_random_exec(), edbm_sort_elements_exec(), blender::ed::object::editmode_enter_ex(), blender::deg::light_linking::internal::EmitterDataMap::ensure_data_if_possible(), blender::io::usd::USDAbstractWriter::ensure_usd_material_created(), euler_filter_multi_channel(), blender::seq::eval_strips(), blender::animrig::evaluate_keyframe_data(), blender::ed::outliner::TreeElementIDArmature::expand(), blender::io::grease_pencil::SVGExporter::export_grease_pencil_objects(), blender::io::usd::export_packed_texture(), blender::io::usd::USDMaterialExportContext::export_texture(), blender::nodes::materialx::export_to_materialx(), eyedropper_cryptomatte_sample_image_fl(), eyedropper_cryptomatte_sample_render_fl(), blender::bke::greasepencil::convert::AnimDataConvertor::fcurves_convert_finalize(), filelist_readjob_main_assets_add_items(), find_area_properties(), blender::ed::object::find_first_by_data_id(), blender::ed::viewer_path::find_geometry_nodes_viewer(), find_object_with_preview_geometry(), blender::animrig::find_related_ids(), blender::animrig::foreach_action_slot_use_with_references(), blender::animrig::foreach_action_slot_use_with_rna(), blender::deg::foreach_id_cow_detect_need_for_update_callback(), foreach_id_file_path_foreach_callback(), foreach_libblock_append_ensure_reusable_local_id_callback(), foreach_libblock_id_users_callback(), foreach_libblock_link_append_common_processing(), foreach_libblock_remap_callback(), foreach_libblock_remap_callback_apply(), blender::ed::outliner::foreach_natural_hierarchy_child(), AttributeOwner::from_id(), FRS_do_stroke_rendering(), gather_frames_to_render_for_id(), gather_local_ids_to_write(), blender::gpu::shader::GPUCodegen::generate_cryptomatte(), blender::animrig::generic_assign_action(), blender::animrig::generic_slot_for_autoassign(), blender::deg::geometry_tag_to_component(), blender::compositor::CachedImageContainer::get(), blender::compositor::KeyingScreenContainer::get(), get_default_collection_name(), get_default_texture_layer_name_for_object(), blender::ed::vse::get_drag_path(), blender::ed::outliner::get_element_operation_type(), blender::io::AbstractHierarchyIterator::get_id_name(), blender::io::usd::get_in_memory_texture_filename(), blender::nodes::get_init_socket_fn(), blender::ed::space_node::get_modifier_for_node_editor(), blender::ed::space_node::get_nested_previews(), blender::deg::DepsgraphRelationBuilder::get_node(), blender::get_rand_matrix(), blender::nodes::geo_eval_log::get_root_log(), get_stats_string(), give_active_mtex(), GPU_material_from_nodetree(), gpu_texture_create_tile_array(), gpu_texture_create_tile_mapping(), graph_draw_driven_property_panel(), blender::deg::graph_id_tag_update(), graph_panel_driverVar__locDiff(), graph_panel_driverVar__rotDiff(), graph_panel_driverVar__transChan(), graph_panel_properties(), blender::deg::graph_tag_ids_for_visible_update(), icon_id_ensure_create_icon(), icon_preview_endjob(), icon_preview_startjob_all_sizes(), icon_set_image(), blender::animrig::id_action_ensure(), blender::bke::blendfile::PartialWriteContext::id_add(), id_can_have_animdata(), id_check_type(), blender::ed::outliner::id_delete_tag(), blender::animrig::id_frame_has_keyframe(), blender::nodes::id_name_or_value_prop(), id_order_compare(), blender::ed::outliner::id_override_library_clear_single(), blender::ed::outliner::id_override_library_create_hierarchy_pre_process(), blender::ed::outliner::id_override_library_delete_hierarchy(), blender::ed::outliner::id_override_library_reset(), blender::ed::outliner::id_override_library_resync(), blender::ed::outliner::id_remap_fn(), id_search_allows_id(), id_search_cb_objects_from_scene(), id_sort_by_name(), id_swap(), blender::ed::asset::id_type_is_non_experimental(), idp_repr_fn_recursive(), idprop_ui_data_to_dict_id(), blender::ed::spreadsheet::IDViewerPathItem::IDViewerPathItem(), image_get_gpu_texture(), image_open_invoke(), image_unpack_invoke(), image_walk_id_all_users(), blender::io::usd::USDStageReader::import_all_materials(), blender::io::usd::import_mesh_skel_bindings(), blender::deg::IDNode::init(), blender::io::hydra::WorldData::init(), blender::deg::RuntimeBackup::init_from_id(), init_meta(), blender::nodes::init_socket_cpp_value_from_property(), insert_fcurve_key(), insert_key(), blender::animrig::insert_key_to_keying_set_path(), Freestyle::BlenderFileLoader::insertShapeNode(), is_animating_bone(), blender::ed::outliner::is_object_data_in_editmode(), blender::deg::DepsgraphRelationBuilder::is_same_nodetree_node_dependency(), blender::animrig::Slot::is_suitable_for(), blender::bke::blendfile::PartialWriteContext::is_valid(), key_block_get_data(), key_pointer_size(), lattice_select_random_exec(), lattice_undosys_step_decode(), layer_collection_resync_create_recurse(), layer_collection_resync_unused_layers_free(), layer_collection_sync(), blender::bke::greasepencil::convert::legacy_gpencil_object(), lib_id_fake_user_toggle_exec(), lib_link_scenes_check_set(), lib_override_hierarchy_dependencies_skip_check(), lib_override_id_swap(), lib_override_library_create_from(), lib_override_library_create_post_process(), lib_override_library_main_hierarchy_id_root_ensure(), lib_override_library_main_resync_on_library_indirect_level(), lib_override_library_operations_create(), lib_override_library_proxy_convert_do(), lib_override_library_resync(), lib_override_object_posemode_transfer(), lib_override_prefill_newid_from_existing_overrides(), lib_override_resync_tagging_finalize(), lib_override_resync_tagging_finalize_recurse(), lib_override_root_hierarchy_set(), lib_override_sort_libraries_func(), lib_query_unused_ids_tag_id(), blender::ed::outliner::lib_relocate(), libblock_relink_foreach_idpair(), libblock_remap_data_postprocess_obdata_relink(), libblock_remap_data_preprocess(), libblock_remap_foreach_idpair(), library_ID_is_used(), library_make_local_copying_check(), link_named_part(), blender::draw::gpencil::list_sort_do(), long_id_names_process_action_slots_identifiers(), loose_data_instantiate_collection_process(), main_merge_add_id_to_move(), blender::nodes::node_geo_bake_cc::LazyFunctionForBakeNode::make_attribute_field(), blender::nodes::node_geo_simulation_cc::make_attribute_field(), make_dupli(), make_new_animlistelem(), blender::ed::object::make_override_library_exec(), make_recursive_duplis(), blender::workbench::Material::Material(), material_data_index_clear_id(), material_data_index_remove_id(), blender::eevee::ShaderModule::material_shader_get(), blender::workbench::MaterialTexture::MaterialTexture(), blender::workbench::MaterialTexture::MaterialTexture(), mball_undosys_step_decode(), memfile_undosys_step_decode(), memfile_undosys_step_id_reused_cb(), blender::nodes::GeometryNodesEvalDependencies::merge(), merge_actions_selection_exec(), blender::bke::mesh_calc_finalize(), mesh_new_from_curve_type_object(), mesh_new_from_mesh(), mesh_undosys_step_decode(), blender::ed::object::mode_set_ex(), blender::ed::object::modifier_add(), blender::ed::object::modifier_add_asset_exec(), blender::ed::object::modifier_copy_to_object(), blender::ed::object::modifier_remove(), blender::deg::DepsgraphNodeBuilder::modifier_walk(), modify_mesh(), blender::modify_stroke_random(), mouse_action_keys(), blender::ed::object::move_to_collection_exec(), blender::io::obj::mtlmaterial_for_material(), blender::bke::InstanceReference::name(), blender::ed::outliner::namebutton_fn(), blender::ed::transform::nearest_world_object_fn(), new_sequencer_scene_exec(), nla_panel_animdata(), nlaedit_add_actionclip_exec(), nlaevalchan_validate_index_ex(), blender::ed::space_node::node_context(), blender::ed::space_node::node_draw_space(), blender::nodes::node_geo_collection_info_cc::node_geo_exec(), blender::ed::space_node::node_group_add_poll(), node_group_label(), blender::ed::space_node::node_id_remap(), node_image_label(), blender::bke::node_instance_key(), blender::nodes::node_composite_mask_cc::node_mask_label(), blender::io::fbx::node_matrix_to_obj(), blender::ed::space_node::node_render_changed_exec(), blender::bke::node_tree_blend_read_data(), blender::ed::space_node::node_tree_from_ID(), ntree_version_245(), ob_parbone(), object_asset_metadata_ensure(), object_blend_read_after_liblink(), blender::ed::object::object_data_instance_add_exec(), object_defgroup_lattice_get(), blender::ed::object::object_delete_exec(), object_for_curve_to_mesh_free(), blender::ed::object::object_join_exec(), object_mouse_select_menu(), blender::ed::object::object_overlay_mode_transfer_animation_start(), blender::ed::object::object_rand_verts_exec(), blender::draw::overlay::Bounds::object_sync(), blender::draw::overlay::Names::object_sync(), blender::workbench::ShadowPass::object_sync(), blender::ed::object::object_transfer_mode_invoke(), blender::ed::object::object_unlink_data_exec(), blender::ed::object::objects_in_mode_or_selected(), blender::ed::object::objectsolver_set_inverse_exec(), blender::io::obj::OBJMesh::OBJMesh(), order_collection_receiver_after(), order_collection_receiver_before(), order_object_receiver_after(), order_object_receiver_before(), other_id_types_preview_render(), blender::ed::outliner::outliner_action_set_exec(), blender::ed::outliner::outliner_batch_delete_object_tag(), blender::ed::outliner::outliner_buttons(), blender::ed::outliner::outliner_collect_objects_to_delete(), blender::ed::outliner::outliner_collect_selected_collections(), blender::ed::outliner::outliner_collect_selected_objects(), blender::ed::outliner::outliner_collection_delete(), blender::ed::outliner::outliner_draw_userbuts(), blender::ed::outliner::outliner_id_copy_tag(), blender::ed::outliner::outliner_id_relocate_invoke(), blender::ed::outliner::outliner_id_remap_exec(), blender::ed::outliner::outliner_id_remap_find_tree_element(), blender::ed::outliner::outliner_mode_toggle_fn(), blender::ed::outliner::outliner_object_delete_fn(), override_apply_property_check_skip(), override_idtemplate_clear_exec(), pack_linked_id(), blender::bke::library::pack_linked_id_hierarchy(), palette_extract_img_exec(), blender::ed::outliner::parent_clear_poll(), blender::ed::viewer_path::parse_geometry_nodes_viewer(), blender::ed::viewer_path::parse_object_only(), blender::ed::animation::pastebuf_find_matching_copybuf_item(), blender::ed::animation::pastebuf_match_path_property(), UniqueName_Map::populate(), pose_clear_user_transforms_exec(), previews_clear_exec(), previews_id_ensure(), previews_id_ensure_callback(), blender::bke::id::IDRemapper::print(), ptcache_baker_create(), ptcache_cloth_error(), ptcache_filepath(), ptcache_filepath_ext_append(), pydriver_error(), pyrna_prop_collection_subscript_str_lib_pair_ptr(), pyrna_prop_repr_ex(), pyrna_struct_keyframe_delete(), pyrna_struct_repr(), blender::ed::transform::raycast_obj_fn(), RE_bake_engine(), RE_engine_render(), read_id_in_lib(), read_id_struct(), read_libblock(), read_libblock_undo_restore(), read_libblock_undo_restore_at_old_address(), read_libblock_undo_restore_identical(), read_libblock_undo_restore_library(), read_libblock_undo_restore_linked(), read_libraries(), read_library_clear_weak_links(), read_library_linked_id(), read_library_linked_ids(), read_undo_move_libmain_data(), blender::animrig::internal::rebuild_slot_user_cache(), relative_convert_foreach_path_cb(), render_result_exr_file_cache_path(), blender::ed::sculpt_paint::report_if_shape_key_is_locked(), blender::deg::RuntimeBackup::restore_to_id(), blender::deg::ObjectRuntimeBackup::restore_to_object(), RNA_find_real_ID_and_path(), rna_id_itemf(), RNA_id_pointer_create(), rna_id_write_error(), RNA_path_full_ID_py(), rna_property_override_apply_ex(), rna_property_override_check_resync(), rna_property_override_collection_subitem_lookup(), rna_property_override_property_real_id_owner(), RNA_struct_override_apply(), RNA_struct_override_matches(), rnapointer_pchan_to_bone(), blender::ed::geometry::run_node_group_exec(), blender::ui::sample_data_from_outliner(), blender::ed::sculpt_paint::undo::save_common_data(), scene_blend_read_after_liblink(), scene_ensure_depsgraph_p(), scene_undo_depsgraph_gen_key(), screen_state_to_nonnormal(), blender::ed::object::select_grouped_collection(), blender::draw::select::SelectMap::select_id(), blender::ed::object::select_linked_by_id(), select_pchan_for_action_group(), select_random_metaelems_exec(), send_notifiers_after_node_tree_change(), separate_slots_exec(), blender::ed::vse::sequencer_drop_copy(), blender::ed::vse::sequencer_write_copy_paste_file(), set_active_mtex(), blender::deg::set_id_update_count(), setup_app_data(), blender::ed::object::shade_auto_smooth_exec(), blender::ed::object::shaderfx_add(), blender::ed::object::shaderfx_remove(), blender::io::usd::shape_key_export_chaser(), blender::ed::object::shape_key_report_if_active_locked(), blender::ed::object::shape_key_report_if_any_locked(), blender::ed::object::shape_key_report_if_locked(), blender::ed::object::single_obdata_users(), blender::io::usd::skinned_mesh_export_chaser(), skip_fcurve_selected_data(), blender::animrig::Action::slot_add_for_id(), blender::animrig::Action::slot_setup_for_id(), blender::ed::transform::snap_edge_points(), blender::ed::transform::snap_obj_fn(), blender::ed::transform::snap_polygon(), softbody_step(), sound_unpack_invoke(), space_text_update_drawcache(), blender::ed::spreadsheet::spreadsheet_get_object_eval(), stampdata(), blender::eevee::VelocityModule::step_object_sync(), blender::eevee::IrradianceBake::surfels_create(), swap_old_bmain_data_for_blendfile(), switch_preview_collection_visibility(), ObjectInfos::sync(), blender::ed::transform::tag_trans_objects_dep_fn(), blender::ed::transform::tag_trans_objects_with_geometry_dep_only_fn(), blender::ed::space_node::tag_update_id(), template_add_button_search_menu(), template_ID(), template_id_cb(), template_id_liboverride_hierarchy_collections_tag_recursive(), template_id_liboverride_hierarchy_make(), template_texture_user_menu(), blender::bke::id::tests::TEST(), blender::bke::id::tests::TEST(), blender::bke::id::tests::TEST(), blender::bke::tests::TEST(), blender::bke::tests::TEST(), blender::bke::tests::TEST(), blender::bke::tests::TEST(), blender::bke::tests::TEST(), blender::bke::tests::TEST(), blender::bke::tests::TEST(), blender::bke::tests::TEST(), blender::bke::tests::TEST(), blender::bke::tests::TEST(), blender::bke::tests::TEST(), blender::bke::tests::TEST(), blender::animrig::tests::TEST_F(), blender::animrig::tests::TEST_F(), blender::animrig::tests::TEST_F(), blender::ed::space_node::test_inline_shader_nodes_exec(), text_jump_to_file_at_point_internal(), text_save_as_invoke(), text_undosys_step_encode_init(), blender::ed::outliner::tree_element_get_icon(), blender::ed::outliner::tree_element_get_icon_from_id(), blender::ed::outliner::TreeElementNLAAction::TreeElementNLAAction(), blender::ed::curves::convert_to_particle_system::try_convert_single_object(), txt_write_file(), uhandle_lookup_by_name(), uhandle_restore_list(), ui_but_anim_expression_create(), ui_but_event_property_operator_string(), UI_context_copy_to_selected_list(), ui_drop_material_tooltip(), ui_drop_name_copy(), ui_icon_ensure_deferred(), UI_icon_from_id(), UI_icon_render_id(), ui_id_icon_get(), blender::ed::space_node::ui_node_draw_recursive(), ui_template_id_liboverride_hierarchy_make(), ui_tooltip_data_from_search_item_tooltip_data(), uiTemplateAction(), uiTemplateBoneCollectionTree(), uiTemplateCollectionExporters(), uiTemplateConstraintHeader(), uiTemplateImageSettings(), uiTemplatePreview(), undosys_id_ref_store(), blender::ed::outliner::unlink_action_fn(), blender::ed::outliner::unlink_collection_fn(), blender::ed::outliner::unlink_material_fn(), blender::ed::outliner::unlink_object_fn(), blender::ed::outliner::unlink_texture_fn(), blender::ed::outliner::unlink_world_fn(), unpack_generate_paths(), update_duplicate_custom_bone_shapes(), update_sequencer(), blender::bke::verify_armature_deform_valid(), version_bonegroup_migrate_color(), versions_gpencil_add_main(), blender::ed::object::vgroup_parray_alloc(), view3d_drop_id_in_main_region_poll_get_id_type(), view3d_id_drop_copy_with_type(), view_layer_objects_base_cache_validate(), blender::ed::viewer_path::viewer_path_for_geometry_node(), what_does_obaction(), WM_drag_add_local_ID(), WM_drag_get_item_name(), WM_drag_get_local_ID(), wm_id_linked_relocate_exec(), wm_link_append_exec(), WM_msg_publish_rna_params(), WM_msg_subscribe_rna_params(), WM_operator_properties_id_lookup_set_from_id(), workspace_append_button(), workspace_context_get(), workspace_layout_set_poll(), blender::eevee::ShaderModule::world_shader_get(), write_file_handle(), and write_id_direct_linked_data_process_cb().

◆ newid

◆ next

◆ orig_id

◆ override_library

IDOverrideLibrary* ID::override_library

Reference linked ID which this one overrides.

Definition at line 494 of file DNA_ID.h.

Referenced by BKE_blendfile_override(), BKE_lib_override_library_copy(), BKE_lib_override_library_create_from_id(), BKE_lib_override_library_create_from_tag(), BKE_lib_override_library_delete(), BKE_lib_override_library_get(), BKE_lib_override_library_id_reset(), BKE_lib_override_library_id_unused_cleanup(), BKE_lib_override_library_init(), BKE_lib_override_library_is_system_defined(), BKE_lib_override_library_operations_restore(), BKE_lib_override_library_proxy_convert(), BKE_lib_override_library_status_check_local(), BKE_lib_override_library_status_check_reference(), BKE_lib_override_library_update(), blendfile_relocate_postprocess_liboverrides(), blender::ed::object::clear_override_library_exec(), blender::ed::object::collection_unlink_exec(), blender::ed::object::collection_unlink_poll(), direct_link_id_common(), foreachid_is_hierarchy_leaf_fn(), blender::ed::outliner::id_delete_tag(), blender::ed::outliner::id_is_in_override_hierarchy(), blender::ed::outliner::id_override_library_create_hierarchy(), blender::ed::outliner::id_override_library_create_hierarchy_pre_process(), blender::ed::outliner::id_override_library_create_hierarchy_process(), blender::ed::outliner::id_override_library_delete_hierarchy(), blender::ed::outliner::id_override_library_resync(), lib_override_cleanup_after_resync(), lib_override_library_create_do(), lib_override_library_create_post_process(), lib_override_library_id_hierarchy_recursive_reset(), lib_override_library_id_reset_do(), lib_override_library_main_hierarchy_id_root_ensure(), lib_override_library_main_resync_id_skip_check(), lib_override_library_operations_create(), lib_override_library_resync(), lib_override_overrides_group_tag(), lib_override_overrides_group_tag_recursive(), lib_override_resync_tagging_finalize(), lib_override_resync_tagging_finalize_recurse(), lib_override_root_hierarchy_set(), lib_override_root_is_valid(), library_foreach_ID_link(), blender::ed::object::make_override_library_exec(), blender::ed::outliner::outliner_draw_mode_column_toggle(), override_idtemplate_clear_exec(), override_remove_button_exec(), read_library_linked_id(), reuse_bmain_data_invalid_local_usages_fix(), reuse_bmain_data_invalid_local_usages_fix_cb(), RNA_property_overridden(), rna_property_override_check_resync(), RNA_property_override_property_get(), RNA_struct_override_matches(), blender::animrig::tests::TEST_F(), UI_icon_from_library(), and ui_template_id_liboverride_hierarchy_make().

◆ prev

◆ properties

IDProperty* ID::properties

User-defined custom properties storage. Typically Accessed through the 'dict' syntax from Python.

Definition at line 480 of file DNA_ID.h.

Referenced by after_liblink_id_process(), BKE_libblock_copy_in_lib(), BKE_library_id_can_use_filter_id(), BKE_scene_duplicate(), blender::deg::DepsgraphNodeBuilder::build_action(), blender::deg::DepsgraphRelationBuilder::build_action(), blender::deg::DepsgraphNodeBuilder::build_armature(), blender::deg::DepsgraphRelationBuilder::build_armature(), blender::deg::DepsgraphNodeBuilder::build_cachefile(), blender::deg::DepsgraphRelationBuilder::build_cachefile(), blender::deg::DepsgraphNodeBuilder::build_camera(), blender::deg::DepsgraphRelationBuilder::build_camera(), blender::deg::DepsgraphNodeBuilder::build_collection(), blender::deg::DepsgraphRelationBuilder::build_collection(), blender::deg::DepsgraphNodeBuilder::build_freestyle_linestyle(), blender::deg::DepsgraphRelationBuilder::build_freestyle_linestyle(), blender::deg::DepsgraphNodeBuilder::build_generic_id(), blender::deg::DepsgraphRelationBuilder::build_generic_id(), blender::deg::DepsgraphNodeBuilder::build_image(), blender::deg::DepsgraphRelationBuilder::build_image(), blender::deg::DepsgraphNodeBuilder::build_light(), blender::deg::DepsgraphRelationBuilder::build_light(), blender::deg::DepsgraphNodeBuilder::build_lightprobe(), blender::deg::DepsgraphRelationBuilder::build_lightprobe(), blender::deg::DepsgraphRelationBuilder::build_mask(), blender::deg::DepsgraphNodeBuilder::build_material(), blender::deg::DepsgraphRelationBuilder::build_material(), blender::deg::DepsgraphNodeBuilder::build_movieclip(), blender::deg::DepsgraphRelationBuilder::build_movieclip(), blender::deg::DepsgraphNodeBuilder::build_nodetree(), blender::deg::DepsgraphRelationBuilder::build_nodetree(), blender::deg::DepsgraphNodeBuilder::build_object(), blender::deg::DepsgraphRelationBuilder::build_object(), blender::deg::DepsgraphNodeBuilder::build_object_data_geometry_datablock(), blender::deg::DepsgraphRelationBuilder::build_object_data_geometry_datablock(), blender::deg::DepsgraphNodeBuilder::build_scene_parameters(), blender::deg::DepsgraphRelationBuilder::build_scene_parameters(), blender::deg::DepsgraphNodeBuilder::build_shapekeys(), blender::deg::DepsgraphRelationBuilder::build_shapekeys(), blender::deg::DepsgraphNodeBuilder::build_sound(), blender::deg::DepsgraphRelationBuilder::build_sound(), blender::deg::DepsgraphNodeBuilder::build_speaker(), blender::deg::DepsgraphRelationBuilder::build_speaker(), blender::deg::DepsgraphNodeBuilder::build_vfont(), blender::deg::DepsgraphRelationBuilder::build_vfont(), blender::deg::DepsgraphNodeBuilder::build_world(), blender::deg::DepsgraphRelationBuilder::build_world(), evil::DEG_iterator_temp_object_free_properties(), direct_link_id_common(), blender::animrig::get_keyable_id_property_paths(), id_swap(), IDP_EnsureProperties(), idproperties_fix_group_lengths(), blender::bke::greasepencil::convert::legacy_gpencil_to_grease_pencil(), library_foreach_ID_link(), palette_undo_preserve(), and version_system_idprops_generate().

◆ py_instance

void* ID::py_instance

Holds the #PyObject reference to the ID (initialized on demand).

This isn't essential, it could be removed however it gives some advantages:

  • Every time the ID is accessed a BPy_StructRNA doesn't have to be created & destroyed (consider all the polling and drawing functions that access ID's).
  • When this ID is deleted, the BPy_StructRNA can be invalidated so accessing it from Python raises an exception instead of crashing.

    This is of limited benefit though, as it doesn't apply to non ID data that references this ID (the bones of an armature or the modifiers of an object for example).

Definition at line 518 of file DNA_ID.h.

Referenced by BKE_object_replace_data_on_shallow_copy(), BLO_Write_IDBuffer::BLO_Write_IDBuffer(), particle_settings_free_local(), and prefetch_freejob().

◆ recalc

◆ recalc_after_undo_push

unsigned int ID::recalc_after_undo_push

Definition at line 456 of file DNA_ID.h.

Referenced by memfile_undosys_step_decode(), and read_libblock_undo_restore_identical().

◆ recalc_up_to_undo_push

unsigned int ID::recalc_up_to_undo_push

Used by undo code. recalc_after_undo_push contains the changes between the last undo push and the current state. This is accumulated as IDs are tagged for update in the depsgraph, and only cleared on undo push.

recalc_up_to_undo_push is saved to undo memory, and is the value of recalc_after_undo_push at the time of the undo push. This means it can be used to find the changes between undo states.

Definition at line 455 of file DNA_ID.h.

Referenced by BLO_Write_IDBuffer::BLO_Write_IDBuffer(), and direct_link_id_restore_recalc().

◆ runtime

ID_RuntimeHandle* ID::runtime

Allocated runtime data, never written on disk or in undo steps.

Always valid for code handling IDs managed by the BKE_lib_id API.

Internal low-level implementation of ID creation/copying/deletion, and code handling IDs themselves in non-standard ways (mainly the CoW IDs in depsgraph, and some temporary IDs in readfile) may have to manage this pointer themselves (see also BKE_libblock_runtime_ensure and BKE_libblock_free_runtime_data).

Definition at line 538 of file DNA_ID.h.

Referenced by BKE_object_get_evaluated_lattice(), BKE_object_get_evaluated_mesh_no_subsurf_unchecked(), BLO_Write_IDBuffer::BLO_Write_IDBuffer(), blender::deg::deg_tag_eval_copy_id(), direct_link_id_common(), foreach_libblock_remap_callback_apply(), libblock_remap_data_update_tags(), libblock_remap_foreach_idpair(), read_library_linked_ids(), blender::deg::ObjectRuntimeBackup::restore_to_object(), and blender::animrig::versioning::tag_action_user_for_slotted_actions_conversion().

◆ session_uid

unsigned int ID::session_uid

A session-wide unique identifier for a given ID, that remain the same across potential re-allocations (e.g. due to undo/redo steps).

Definition at line 462 of file DNA_ID.h.

Referenced by blender::nodes::GeometryNodesEvalDependencies::add_generic_id(), blender::deg::DepsgraphNodeBuilder::add_id_node(), blender::nodes::GeometryNodesEvalDependencies::add_object(), BKE_collection_from_session_uid(), BKE_libblock_find_session_uid(), BKE_main_idmap_create(), BKE_main_idmap_insert_id(), BKE_main_idmap_remove_id(), BKE_viewer_path_elem_hash(), blo_cache_storage_entry_register(), BLO_Write_IDBuffer::BLO_Write_IDBuffer(), blender::nodes::geo_eval_log::ClosureValueLog::ClosureValueLog(), ED_undosys_stack_memfile_id_changed_tag(), blender::nodes::LazyFunctionForEvaluateClosureNode::execute_impl(), blender::nodes::geo_eval_log::GeoNodesLog::get_local_tree_logger(), blender::ed::greasepencil::grease_pencil_copy_strokes_exec(), blender::bke::blendfile::PartialWriteContext::id_add(), blender::ed::outliner::id_override_library_create_hierarchy(), blender::ed::outliner::id_override_library_create_hierarchy_pre_process(), blender::ed::outliner::id_override_library_create_hierarchy_process(), blender::bke::blendfile::PartialWriteContext::is_valid(), main_relations_create_idlink_cb(), blender::ed::object::make_override_library_exec(), blender::ed::object::make_override_library_invoke(), mesh_undostep_reference_elems_from_objects(), mesh_undosys_step_encode(), blender::ed::object::move_to_collection_menu_draw(), mywrite_id_begin(), blender::ed::space_node::node_group_drop_copy(), blender::ed::space_node::node_id_drop_copy(), blender::ed::space_node::node_id_im_drop_copy(), blender::ed::outliner::outliner_id_relocate_invoke(), read_libblock_undo_restore(), read_libblock_undo_restore_linked(), scene_foreach_toolsettings_id_pointer_process(), screen_drop_scene_copy(), ui_drop_material_copy(), uiTemplatePreview(), blender::update_depsgraph(), view3d_collection_drop_copy_external_asset(), view3d_collection_drop_copy_local_id(), view3d_ob_drop_copy_external_asset(), view3d_ob_drop_copy_local_id(), and WM_operator_properties_id_lookup_set_from_id().

◆ system_properties

IDProperty* ID::system_properties

System-defined custom properties storage. Used to store data dynamically defined either by Blender itself (e.g. the GeoNode modifier), or some python script, extension etc.

Typically accessed through RNA paths (C.object.my_dynamic_float_property = 33.3), when wrapped/defined by RNA.

Definition at line 489 of file DNA_ID.h.

Referenced by BKE_libblock_copy_in_lib(), BKE_scene_duplicate(), blender::deg::DepsgraphNodeBuilder::build_action(), blender::deg::DepsgraphRelationBuilder::build_action(), blender::deg::DepsgraphNodeBuilder::build_armature(), blender::deg::DepsgraphRelationBuilder::build_armature(), blender::deg::DepsgraphNodeBuilder::build_cachefile(), blender::deg::DepsgraphRelationBuilder::build_cachefile(), blender::deg::DepsgraphNodeBuilder::build_camera(), blender::deg::DepsgraphRelationBuilder::build_camera(), blender::deg::DepsgraphNodeBuilder::build_collection(), blender::deg::DepsgraphRelationBuilder::build_collection(), blender::deg::DepsgraphNodeBuilder::build_freestyle_linestyle(), blender::deg::DepsgraphRelationBuilder::build_freestyle_linestyle(), blender::deg::DepsgraphNodeBuilder::build_generic_id(), blender::deg::DepsgraphRelationBuilder::build_generic_id(), blender::deg::DepsgraphNodeBuilder::build_image(), blender::deg::DepsgraphRelationBuilder::build_image(), blender::deg::DepsgraphNodeBuilder::build_light(), blender::deg::DepsgraphRelationBuilder::build_light(), blender::deg::DepsgraphNodeBuilder::build_lightprobe(), blender::deg::DepsgraphRelationBuilder::build_lightprobe(), blender::deg::DepsgraphRelationBuilder::build_mask(), blender::deg::DepsgraphNodeBuilder::build_material(), blender::deg::DepsgraphRelationBuilder::build_material(), blender::deg::DepsgraphNodeBuilder::build_movieclip(), blender::deg::DepsgraphRelationBuilder::build_movieclip(), blender::deg::DepsgraphNodeBuilder::build_nodetree(), blender::deg::DepsgraphRelationBuilder::build_nodetree(), blender::deg::DepsgraphNodeBuilder::build_object(), blender::deg::DepsgraphRelationBuilder::build_object(), blender::deg::DepsgraphNodeBuilder::build_object_data_geometry_datablock(), blender::deg::DepsgraphRelationBuilder::build_object_data_geometry_datablock(), blender::deg::DepsgraphNodeBuilder::build_scene_parameters(), blender::deg::DepsgraphRelationBuilder::build_scene_parameters(), blender::deg::DepsgraphNodeBuilder::build_shapekeys(), blender::deg::DepsgraphRelationBuilder::build_shapekeys(), blender::deg::DepsgraphNodeBuilder::build_sound(), blender::deg::DepsgraphRelationBuilder::build_sound(), blender::deg::DepsgraphNodeBuilder::build_speaker(), blender::deg::DepsgraphRelationBuilder::build_speaker(), blender::deg::DepsgraphNodeBuilder::build_vfont(), blender::deg::DepsgraphRelationBuilder::build_vfont(), blender::deg::DepsgraphNodeBuilder::build_world(), blender::deg::DepsgraphRelationBuilder::build_world(), evil::DEG_iterator_temp_object_free_properties(), direct_link_id_common(), id_swap(), IDP_ID_system_properties_ensure(), blender::bke::greasepencil::convert::legacy_gpencil_to_grease_pencil(), library_foreach_ID_link(), palette_undo_preserve(), and version_system_idprops_generate().

◆ tag

int ID::tag

ID_TAG_... tags (runtime only, cleared at read time).

Definition at line 442 of file DNA_ID.h.

Referenced by blender::deg::Depsgraph::add_id_node(), animdata_filter_ds_linestyle(), blender::ed::object::bake_object_check(), blender::ed::object::bake_targets_init_image_textures(), BKE_blendfile_link_pack(), BKE_blendfile_override(), BKE_brush_duplicate(), BKE_cachefile_eval(), BKE_cachefile_reader_free(), BKE_cachefile_reader_open(), BKE_collection_duplicate(), BKE_collection_has_object_recursive_instanced_orig_id(), BKE_collection_object_add_notest(), BKE_collection_object_remove(), BKE_id_can_use_id(), BKE_id_copy_in_lib(), BKE_id_eval_properties_copy(), BKE_id_multi_tagged_delete(), BKE_image_free_all_textures(), BKE_lib_override_library_copy(), BKE_lib_override_library_create_from_id(), BKE_lib_override_library_create_from_tag(), BKE_lib_override_library_init(), BKE_lib_override_library_proxy_convert(), BKE_lib_override_library_status_check_local(), BKE_lib_override_library_status_check_reference(), BKE_lib_override_library_update(), BKE_libblock_copy_in_lib(), BKE_library_make_local(), BKE_library_unused_linked_data_set_tag(), BKE_mesh_copy_parameters_for_eval(), BKE_mesh_nomain_to_mesh(), BKE_mesh_nomain_to_meshkey(), BKE_object_duplicate(), BKE_object_eval_assign_data(), BKE_object_materials_sync_length(), BKE_pointcloud_nomain_to_pointcloud(), BKE_rigidbody_free_object(), BKE_rigidbody_free_world(), BKE_scene_duplicate(), BKE_view_layer_array_from_bases_in_mode_params(), BKE_view_layer_array_selected_objects_params(), BKE_volume_grids_backup_restore(), BKE_workspace_id_tag_all_visible(), blendfile_library_relocate_id_remap_finalize(), blendfile_relocate_postprocess_liboverrides(), BLO_Write_IDBuffer::BLO_Write_IDBuffer(), bpy_bmesh_to_mesh(), clean_viewport_memory_base(), blender::ed::object::clear_single_image(), collection_object_cyclic_check_internal(), blender::ed::object::copy_object_set_idnew(), create_placeholder(), blender::ed::transform::create_trans_data(), DEG_is_original_id(), blender::deg::deg_tag_eval_copy_id(), direct_link_id_common(), do_armature_box_select(), do_pose_box_select(), do_pose_tag_select_op_prepare(), do_version_layers_to_collections(), do_versions_after_setup(), ED_undo_object_editmode_restore_helper(), ED_view3d_smooth_view_ex(), ED_view3d_smooth_view_undo_begin(), ED_view3d_smooth_view_undo_end(), blender::bke::editbmesh_get_eval_cage_from_orig(), blender::deg::DepsgraphNodeBuilder::ensure_cow_id(), foreach_libblock_id_users_callback(), foreach_libblock_remap_callback_apply(), foreach_libblock_used_linked_data_tag_clear_cb(), blender::bke::free_localized_node_groups(), gather_local_ids_to_write(), blender::deg::Depsgraph::get_cow_id(), blender::deg::get_original_id(), blender::ed::outliner::TreeElementIDLibrary::get_warning(), id_copy_libmanagement_cb(), blender::bke::blendfile::PartialWriteContext::id_create(), blender::ed::outliner::id_delete_tag(), blender::ed::outliner::id_local_fn(), blender::ed::outliner::id_override_library_create_hierarchy(), blender::ed::outliner::id_override_library_create_hierarchy_pre_process(), blender::ed::greasepencil::image_render::image_render_end(), lib_link_all(), lib_override_cleanup_after_resync(), lib_override_hierarchy_dependencies_recursive_tag_from(), lib_override_id_swap(), lib_override_library_main_resync_id_skip_check(), lib_override_library_main_resync_on_library_indirect_level(), lib_override_library_remap(), lib_override_library_resync(), lib_override_library_resync_build_missing_ids_data(), lib_override_linked_group_tag(), lib_override_linked_group_tag_recursive(), lib_override_overrides_group_tag(), lib_override_overrides_group_tag_recursive(), lib_override_resync_tagging_finalize(), lib_override_resync_tagging_finalize_recurse(), libblock_remap_data_update_tags(), libblock_remap_foreach_idpair(), library_make_local_copying_check(), link_named_part(), loose_data_instantiate_collection_process(), blender::ed::object::make_local_animdata_tag(), blender::ed::object::make_local_exec(), blender::ed::object::make_local_material_tag(), blender::ed::object::make_override_library_exec(), memfile_undosys_step_decode(), memfile_undosys_step_id_reused_cb(), blender::bke::mesh_calc_modifiers(), mesh_copy_data(), blender::bke::mesh_data_update(), blender::bke::mesh_get_eval_deform(), blender::nodes::node_group_declare(), blender::ed::space_node::node_read_viewlayers_exec(), blender::bke::node_remove_node(), blender::bke::node_tree_free_local_node(), blender::bke::node_tree_localize(), blender::ed::space_node::node_undefined_or_unsupported(), blender::bke::ntree_free_data(), blender::ed::outliner::object_batch_delete_hierarchy_tag_fn(), object_blend_read_data(), blender::ed::object::object_delete_exec(), blender::ed::object::object_origin_set_exec(), blender::ed::object::object_select_more_less(), obrel_list_add(), obrel_list_test(), blender::ed::outliner::outliner_batch_delete_object_hierarchy_tag(), blender::ed::outliner::outliner_batch_delete_object_tag(), blender::ed::outliner::outliner_collection_delete(), blender::ed::outliner::outliner_draw_userbuts(), blender::ed::outliner::outliner_object_delete_fn(), placeholders_ensure_valid(), previews_id_ensure_callback(), pyrna_py_to_prop(), read_libblock_undo_restore_at_old_address(), read_libblock_undo_restore_identical(), read_library_file_data(), read_library_linked_id(), read_undo_move_libmain_data(), read_undo_remap_noundo_data(), blender::bke::blendfile::PartialWriteContext::remove_unused(), rna_property_override_check_resync(), RNA_struct_override_apply(), sbFree(), scene_collections_object_remove(), blender::seq::seq_duplicate_postprocess(), setup_app_data(), shapekey_blend_read_after_liblink(), sound_update_animation_flags(), sound_verify_evaluated_id(), blender::ed::object::tag_localizable_objects(), template_ID(), template_id_liboverride_hierarchy_collections_tag_recursive(), blender::ed::outliner::tree_element_get_icon_from_id(), UI_context_copy_to_selected_list(), UI_icon_from_library(), ui_template_id_liboverride_hierarchy_make(), versions_gpencil_add_main(), write_file_handle(), and write_id_direct_linked_data_process_cb().

◆ us


The documentation for this struct was generated from the following file: