Blender
V3.3
|
Go to the source code of this file.
Macros | |
#define | LISTBASE_CIRCULAR_FORWARD_BEGIN(lb, lb_iter, lb_init) |
#define | LISTBASE_CIRCULAR_FORWARD_END(lb, lb_iter, lb_init) |
#define | LISTBASE_CIRCULAR_BACKWARD_BEGIN(lb, lb_iter, lb_init) |
#define | LISTBASE_CIRCULAR_BACKWARD_END(lb, lb_iter, lb_init) |
#define | LISTBASE_FOREACH(type, var, list) for (type var = (type)((list)->first); var != NULL; var = (type)(((Link *)(var))->next)) |
#define | LISTBASE_FOREACH_INDEX(type, var, list, index_var) |
#define | LISTBASE_FOREACH_BACKWARD(type, var, list) for (type var = (type)((list)->last); var != NULL; var = (type)(((Link *)(var))->prev)) |
#define | LISTBASE_FOREACH_MUTABLE(type, var, list) |
#define | LISTBASE_FOREACH_BACKWARD_MUTABLE(type, var, list) |
#define LISTBASE_CIRCULAR_BACKWARD_BEGIN | ( | lb, | |
lb_iter, | |||
lb_init | |||
) |
Definition at line 325 of file BLI_listbase.h.
#define LISTBASE_CIRCULAR_BACKWARD_END | ( | lb, | |
lb_iter, | |||
lb_init | |||
) |
Definition at line 329 of file BLI_listbase.h.
#define LISTBASE_CIRCULAR_FORWARD_BEGIN | ( | lb, | |
lb_iter, | |||
lb_init | |||
) |
Does a full loop on the list, with any value acting as first (handy for cycling items)
Definition at line 314 of file BLI_listbase.h.
#define LISTBASE_CIRCULAR_FORWARD_END | ( | lb, | |
lb_iter, | |||
lb_init | |||
) |
Definition at line 318 of file BLI_listbase.h.
#define LISTBASE_FOREACH | ( | type, | |
var, | |||
list | |||
) | for (type var = (type)((list)->first); var != NULL; var = (type)(((Link *)(var))->next)) |
Definition at line 336 of file BLI_listbase.h.
#define LISTBASE_FOREACH_BACKWARD | ( | type, | |
var, | |||
list | |||
) | for (type var = (type)((list)->last); var != NULL; var = (type)(((Link *)(var))->prev)) |
Definition at line 348 of file BLI_listbase.h.
A version of LISTBASE_FOREACH_BACKWARD that supports removing the item we're looping over.
Definition at line 362 of file BLI_listbase.h.
A version of LISTBASE_FOREACH that supports incrementing an index variable at every step. Including this in the macro helps prevent mistakes where "continue" mistakenly skips the incrementation.
Definition at line 344 of file BLI_listbase.h.
A version of LISTBASE_FOREACH that supports removing the item we're looping over.
Definition at line 354 of file BLI_listbase.h.
Prepends vlink (assumed to begin with a Link) onto listbase.
Definition at line 60 of file listbase.c.
References ListBase::first, ListBase::last, Link::next, NULL, and Link::prev.
Referenced by _bm_select_history_store_head_notest(), BKE_blender_user_menu_ensure(), BKE_displist_fill(), BKE_gpencil_layer_addnew(), BKE_gpencil_stroke_add(), BKE_gpencil_stroke_copy_to_keyframes(), BKE_nla_action_stash(), BKE_nlameta_add_strip(), BKE_nlastrips_sort_strips(), BLF_dir_add(), blf_glyph_cache_add_glyph(), blf_glyph_cache_new(), BLI_box_pack_2d_fixedarea(), bli_builddir(), blo_do_versions_280(), blo_do_versions_pre250(), bm_loop_build(), BM_mesh_edgeloops_find_path(), bm_uuidwalk_facestep_begin(), bm_uuidwalk_pass_add(), BMO_error_raise(), BMW_state_add(), console_history_cycle_exec(), copy_particle_dupliob_exec(), do_version_area_change_space_to_space_action(), do_versions_after_linking_290(), ED_area_newspace(), ED_keylist_add_or_update_column(), ed_marker_duplicate_apply(), ED_spacetype_action(), ED_spacetype_buttons(), ED_spacetype_clip(), ED_spacetype_console(), ED_spacetype_file(), ED_spacetype_image(), ED_spacetype_info(), ED_spacetype_ipo(), ED_spacetype_nla(), ED_spacetype_node(), ED_spacetype_outliner(), ED_spacetype_script(), ED_spacetype_sequencer(), ED_spacetype_spreadsheet(), ED_spacetype_statusbar(), ED_spacetype_text(), ED_spacetype_topbar(), ED_spacetype_userpref(), ED_spacetype_view3d(), frame_cache_add(), frame_cache_touch(), gizmo_prepare_drawing(), gpencil_prepare_stroke(), gpencil_stroke_arrange_exec(), gpencil_stroke_from_buffer(), gpencil_stroke_join_islands(), gpencil_stroke_newfrombuffer(), gpencil_strokes_paste_exec(), id_sort_by_name(), image_add_view(), imb_exr_get_pass(), imb_global_cache_get_tile(), imb_thread_cache_get_tile(), lineart_chain_prepend_point(), lineart_create_edges_from_isec_data(), lineart_mem_new_static_pool(), make_selection_list_nurb(), ml_addview_cb(), MOD_lineart_chain_clip_at_border(), blender::ed::space_node::ntree_socket_move_exec(), object_blend_read_data(), prependPolyLineVert(), screen_area_spacelink_add(), seq_meta_stack_alloc(), text_init_data(), tree_element_to_path(), ui_block_colorpicker_create(), UI_block_region_set(), ui_panel_category_active_set(), UI_popover_end(), ui_popup_block_position(), ui_popup_block_refresh(), vgroup_sort_bone_hierarchy(), WM_event_add_dropbox_handler(), WM_event_add_fileselect(), WM_event_add_keymap_handler_priority(), WM_event_add_modal_handler(), wm_event_add_mousemove_to_head(), WM_event_add_ui_handler(), WM_gizmomaptype_ensure(), wm_history_file_update(), wm_keymap_addon_add(), WM_toolsystem_ref_ensure(), wm_window_match_replace_by_file_wm(), workspace_relation_add(), and workspace_relation_ensure_updated().
Appends vlink (assumed to begin with a Link) onto listbase.
Definition at line 80 of file listbase.c.
References ListBase::first, ListBase::last, Link::next, NULL, and Link::prev.
Referenced by _bm_select_history_store_notest(), act_markers_make_local_exec(), action_buttons_register(), action_copy_data(), action_create(), action_get_item_transforms(), action_groups_add_new(), action_move_fcurves_by_basepath(), AnimationImporter::add_bone_fcurve(), blender::io::usd::USDGeomReader::add_cache_modifier(), add_collision_object(), add_effector_evaluation(), add_effector_relation(), add_empty_ks_path_exec(), add_fmodifier(), add_marker_to_cfra_elem(), add_new_constraint_to_list(), add_stroke(), add_stroke_cyclic(), add_stroke_simple(), blender::io::usd::USDGeomReader::add_subdiv_modifier(), add_to_modifier_list(), blender::io::alembic::AbcObjectReader::addCacheModifier(), addedgetoscanvert(), addfillface(), addMatrixSpace(), addSnapPoint(), adduplicateflagNurb(), ANIM_fmodifiers_copy_to_buf(), ANIM_fmodifiers_paste_from_buf(), ANIM_keyingset_info_register(), ANIM_relative_keyingset_add_source(), animchannels_ungroup_exec(), animdata_filter_dopesheet_summary(), animdata_move_drivers_by_basepath(), animviz_get_object_motionpaths(), annotation_arrow_create(), annotation_stroke_newfrombuffer(), appendPolyLineVert(), apply_dash_for_frame(), AnimationImporter::apply_matrix_curves(), area_add_header_region(), area_add_window_regions(), area_azone_init(), armature_extrude_exec(), armature_flip_names_exec(), armature_subdivide_exec(), asset_metadata_tag_add(), AnimationImporter::Assign_color_animations(), AnimationImporter::Assign_float_animations(), AnimationImporter::Assign_lens_animations(), autotrack_context_step_cb(), bchunk_list_append_only(), bevels_to_filledpoly(), bezt_add_to_cfra_elem(), bezt_to_cfraelem(), BKE_action_groups_reconstruct(), BKE_addon_ensure(), BKE_animsys_get_nla_keyframing_context(), BKE_appdir_app_templates(), BKE_blender_user_menu_item_add(), BKE_blendfile_library_relocate(), BKE_blendfile_userdef_from_defaults(), BKE_blendfile_write_partial(), BKE_cachefile_add_layer(), BKE_callback_add(), BKE_camera_background_image_new(), BKE_collection_parent_relations_rebuild(), BKE_collider_cache_create(), BKE_cryptomatte_matte_id_to_entries(), BKE_curve_bevelList_make(), BKE_defgroup_copy_list(), BKE_displist_copy(), BKE_fcurves_copy(), BKE_fcurves_filter(), BKE_freestyle_config_copy(), BKE_freestyle_lineset_add(), BKE_freestyle_module_add(), BKE_gpencil_curve_delete_tagged_points(), BKE_gpencil_frame_addcopy(), BKE_gpencil_frame_addnew(), BKE_gpencil_frame_copy_strokes(), BKE_gpencil_frame_duplicate(), BKE_gpencil_layer_addnew(), BKE_gpencil_layer_duplicate(), BKE_gpencil_layer_mask_add(), BKE_gpencil_layer_mask_copy(), BKE_gpencil_palette_addnew(), BKE_gpencil_palettecolor_addnew(), BKE_gpencil_stroke_add(), BKE_gpencil_stroke_copy_to_keyframes(), BKE_gpencil_stroke_delete_tagged_points(), BKE_gpencil_stroke_uniform_subdivide(), BKE_id_ordered_list(), BKE_image_add_renderslot(), BKE_image_add_tile(), BKE_image_get_tile_info(), BKE_image_packfiles(), BKE_image_packfiles_from_mem(), BKE_image_pool_acquire_ibuf(), BKE_keyblock_add(), BKE_keyconfig_pref_ensure(), BKE_keyingset_add(), BKE_keyingset_add_path(), BKE_lib_override_library_create_from_tag(), BKE_lib_override_library_property_get(), BKE_lib_override_library_property_operation_get(), BKE_libblock_alloc(), BKE_libblock_management_main_add(), BKE_linestyle_modifier_list_color_ramps(), BKE_mask_clipboard_copy_from_layer(), BKE_mask_clipboard_paste_to_layer(), BKE_mask_layer_copy(), BKE_mask_layer_copy_list(), BKE_mask_layer_new(), BKE_mask_layer_shape_verify_frame(), BKE_mask_spline_add(), BKE_mball_element_add(), BKE_mball_polygonize(), BKE_mesh_to_curve_nurblist(), BKE_nla_tracks_copy(), BKE_nlameta_add_strip(), BKE_nlastrip_copy(), BKE_nlastrip_validate_fcurves(), BKE_nlastrips_add_strip(), BKE_nlastrips_make_metas(), BKE_nlatrack_add(), BKE_nlatrack_copy(), BKE_node_clipboard_add_link(), BKE_node_clipboard_add_node(), BKE_nurbList_duplicate(), BKE_object_copy_gpencil_modifier(), BKE_object_copy_modifier(), BKE_object_copy_particlesystems(), BKE_object_defgroup_new(), BKE_object_facemap_add_name(), BKE_object_facemap_copy_list(), BKE_object_insert_ptcache(), BKE_object_modifier_stack_copy(), BKE_palette_color_add(), BKE_pose_add_group(), BKE_pose_channel_ensure(), BKE_preferences_asset_library_add(), BKE_ptcache_add(), BKE_ptcache_copy_list(), BKE_ptcache_disk_to_mem(), BKE_render_result_stamp_data(), BKE_report(), BKE_reportf(), BKE_scene_add_render_view(), BKE_spacedata_copylist(), BKE_spacetype_register(), BKE_studiolight_create(), BKE_studiolight_init(), BKE_tracking_clipboard_copy_tracks(), BKE_tracking_clipboard_paste_tracks(), BKE_tracking_object_add(), BKE_tracking_plane_track_add(), BKE_tracking_track_add_empty(), BKE_undosys_step_push_with_type(), BKE_undosys_type_append(), BKE_vfont_build_char(), BKE_view_layer_add(), BKE_view_layer_add_aov(), BKE_view_layer_add_lightgroup(), BKE_view_layer_copy_data(), BKE_workspace_layout_add(), BLI_array_store_state_add(), BLI_astar_node_link_add(), BLI_box_pack_2d_fixedarea(), BLI_duplicatelist(), BLI_scanfill_calc_self_isect(), BLI_scanfill_edge_add(), BLI_scanfill_vert_add(), BLI_threadpool_init(), BLI_timer_register(), blo_do_versions_250(), blo_do_versions_270(), blo_do_versions_280(), blo_do_versions_pre250(), blo_find_main(), BLO_memfile_chunk_add(), blo_read_file_internal(), blo_split_main(), bm_edge_subdiv_as_loop(), BM_edgeloop_from_verts(), bm_face_boundary_add(), bm_face_create__sfme(), BM_faces_join(), BM_log_entry_add(), bm_loop_build(), bm_mesh_calc_uv_islands(), BM_mesh_edgeloops_calc_order(), BM_mesh_edgeloops_find(), BM_mesh_edgeloops_find_path(), BM_mesh_region_match(), BMW_state_add(), bpath_list_append(), BPY_context_member_get(), bpy_prop_py_data_ensure(), build_pict_list_ex(), build_underline(), blender::ed::outliner::TreeDisplayLibraries::buildTree(), buttons_context_register(), buttons_create(), buttons_texture_user_node_add(), buttons_texture_user_property_add(), buttons_texture_user_socket_property_add(), camera_copy_data(), chains_find_tips(), clip_create(), cloth_brush_collider_cache_create(), collection_child_add(), collection_object_add(), collection_object_cache_fill(), colormanage_colorspace_add(), colormanage_display_add(), colormanage_load_config(), colormanage_look_add(), colormanage_view_add(), columnselect_action_keys(), columnselect_graph_keys(), console_create(), console_history_cycle_exec(), console_lb_add__internal(), console_lb_add_str__internal(), console_scrollback_prompt_begin(), copy_animedit_keys(), copy_image_packedfiles(), copy_particle_systems_to_object(), count_images(), blender::io::obj::CurveFromGeometry::create_curve(), create_placeholder(), cryptomatte_add(), CTX_data_id_list_add(), CTX_data_list_add(), CTX_data_list_add_ptr(), CTX_store_add(), CTX_store_add_all(), curve_bevel_make_extrude_and_fill(), curve_bevel_make_from_object(), curve_bevel_make_full_circle(), curve_bevel_make_only_extrude(), curve_delete_segments(), curve_draw_exec(), curve_rename_fcurves(), curve_to_displist(), curvesurf_prim_add(), data_dir_add(), data_transfer_layersmapping_add_item(), direct_link_area(), direct_link_library(), do_version_constraints_245(), do_versions_node_group_add_socket_2_56_2(), driver_add_new_variable(), drw_deferred_shader_add(), DRW_drawdata_ensure(), DRW_engine_register(), DRW_fluid_ensure_flags(), DRW_fluid_ensure_range_field(), DRW_instance_data_list_create(), DRW_smoke_ensure(), DRW_smoke_ensure_coba_field(), DRW_smoke_ensure_velocity(), DRW_view_layer_engine_data_ensure_ex(), duplicate_metaelems_exec(), duplicate_render_layer(), duplicateEditBoneObjects(), duplicateStroke(), dynamicPaint_createNewSurface(), ED_action_fcurve_ensure(), ED_area_data_copy(), ED_armature_bones_flip_names(), ED_armature_ebone_add(), ED_armature_ebone_listbase_copy(), ED_armature_from_edit(), ED_armature_join_objects_exec(), ED_clip_buttons_register(), ED_curve_editnurb_load(), ED_curve_editnurb_make(), ED_curve_join_objects_exec(), ed_editcurve_addvert(), ED_gpencil_anim_copybuf_copy(), ED_gpencil_anim_copybuf_paste(), ED_gpencil_join_objects_exec(), ED_gpencil_layer_make_cfra_list(), ED_gpencil_layer_merge(), ED_gpencil_stroke_reproject(), ED_image_filesel_detect_sequences(), ed_keylist_draw_list_add_elem(), ed_marker_add_exec(), ed_marker_make_links_scene_exec(), ED_masklayer_make_cfra_list(), ED_mesh_join_objects_exec(), ED_node_tree_push(), ED_node_tree_start(), ED_object_gpencil_modifier_add(), ED_object_modifier_add(), ED_object_shaderfx_add(), ED_object_shaderfx_copy(), ED_objects_recalculate_paths_selected(), ED_objects_recalculate_paths_visible(), ED_outliner_selected_objects_get(), ED_preview_restart_queue_add(), ED_region_draw_cb_activate(), ED_spreadsheet_context_path_set_evaluated_object(), ED_spreadsheet_context_path_set_geometry_node(), ED_text_format_register(), ED_undo_gpencil_step(), ED_uvedit_buttons_register(), ED_view3d_cursor_snap_active(), EDBM_select_interior_faces(), edge_isect_ls_add(), editmball_from_undomball(), effector_add_exec(), euler_filter_group_channels(), evaluate_curve_type_object(), evaluate_surface_object(), fcurve_add_to_list(), fcurve_path_rename(), fcurves_to_pchan_links_get(), file_create(), file_execute_region_panels_register(), file_tool_props_region_panels_register(), file_tools_region_panels_register(), filelist_file_create_entry(), filelist_readjob_list_dir(), filelist_readjob_list_lib(), filelist_readjob_list_lib_add_datablock(), filelist_readjob_list_lib_populate_from_index(), filelist_readjob_main_assets_add_items(), fill_add_joint(), fillBevelCap(), find_fcurve_segments(), flatten_group_do(), fmodifier_panel_register(), fmodifier_subpanel_register(), folder_history_list_duplicate(), folder_history_list_ensure_for_active_browse_mode(), folderlist_pushdir(), freetypechar_to_vchar(), fullscreen_azone_init(), gather_objects_paths(), blender::io::usd::gather_objects_paths(), generate_geometry(), generate_perimeter_cap(), GPUCodegen::generate_uniform_buffer(), get_bhead(), gpencil_bake_duplilist(), gpencil_bake_grease_pencil_animation_exec(), gpencil_bake_ob_list(), gpencil_brush_clone_add(), gpencil_convert_spline(), gpencil_copy_structure_for_eval(), gpencil_create_extensions(), gpencil_duplicate_exec(), gpencil_duplicate_points(), gpencil_interpolate_modal(), gpencil_interpolate_seq_exec(), gpencil_interpolate_set_points(), gpencil_interpolate_update_strokes(), gpencil_layer_duplicate_object_exec(), gpencil_modifier_panel_register(), gpencil_modifier_subpanel_register(), gpencil_prepare_stroke(), gpencil_primitive_set_initdata(), gpencil_stroke_arrange_exec(), gpencil_stroke_from_buffer(), gpencil_stroke_newfrombuffer(), gpencil_stroke_pair_table(), gpencil_stroke_perimeter_ex(), gpencil_stroke_separate_exec(), gpencil_stroke_split_exec(), gpencil_stroke_to_bezier(), gpencil_stroke_to_path(), gpencil_strokes_copy_exec(), gpencil_strokes_paste_exec(), gpencil_undo_push(), gpu_batch_presets_register(), GPU_link(), GPU_material_add_output_link_aov(), GPU_material_from_nodetree(), GPU_material_split_sub_function(), gpu_node_graph_add_attribute(), gpu_node_graph_add_texture(), gpu_node_graph_add_uniform_attribute(), gpu_node_input_link(), gpu_node_output(), gpu_select_pick_end(), gpu_select_pick_load_id(), gpu_stack_link_v(), gpu_texture_create_tile_array(), graph_buttons_register(), graph_create(), graphkeys_click_insert_exec(), greasepencil_copy_data(), group_sort_exec(), group_verify_socket_list(), hud_panels_register(), hud_region_add(), icon_preview_add_size(), id_delete(), id_sort_by_name(), IDP_AddToGroup(), IDP_CopyGroup(), IDP_MergeGroup_ex(), IDP_ReplaceGroupInGroup(), IDP_ReplaceInGroup_ex(), image_add_view(), image_buttons_register(), image_camera_background_texture_get(), image_create(), image_init(), image_init_multilayer_multiview(), image_load_movie_file(), image_memorypack_imbuf(), image_sequence_get_frame_ranges(), IMB_exr_add_channel(), IMB_exr_get_handle(), imb_exr_get_layer(), imb_exr_get_pass(), imb_thread_cache_init(), imb_tile_cache_tile_free(), info_create(), init_iconfile_list(), init_multiresbake_job(), initialize_chain(), initialize_posetree(), internalDocs(), knife_append_list(), knife_split_edge(), layer_collection_add(), layer_collection_objects_sync(), layer_collection_resync_create_recurse(), layer_collection_sync(), lib_override_library_resync(), lineart_chain_append_point(), lineart_chain_create(), lineart_create_edges_from_isec_data(), lineart_discard_segment(), lineart_edge_cut(), lineart_geometry_object_load(), lineart_list_append_pointer_pool(), lineart_list_append_pointer_pool_sized(), lineart_list_append_pointer_pool_sized_thread(), lineart_list_append_pointer_pool_thread(), lineart_main_transform_and_add_shadow(), lineart_shadow_cast_generate_edges(), lineart_shadow_create_shadow_edge_array(), linkedlist_sync_add_node(), load_image_single(), M_Geometry_tessellate_polygon(), make_boneList_recursive(), make_dupli(), make_selection_list_nurb(), mask_shape_key_rekey_exec(), menu_items_from_all_operators(), menu_items_from_ui_create_item_from_button(), ml_addlayer_cb(), ml_addpass_cb(), ml_addview_cb(), MOD_lineart_chain_clip_at_border(), MOD_lineart_chain_connect(), MOD_lineart_chain_split_angle(), MOD_lineart_chain_split_for_fixed_occlusion(), modifier_panel_register(), modifier_subpanel_register(), move_to_collection_menus_create(), movieclip_get_gputexture_ptr(), nearest_fcurve_vert_store(), new_particle_target_exec(), nla_buttons_register(), nla_create(), nlaedit_snap_exec(), nlaevalchan_verify_key(), nlastrips_ctime_get_strip(), blender::bke::node_copy_with_mapping(), blender::ed::space_node::node_create(), blender::ed::space_node::node_duplicate_exec(), node_group_input_update(), blender::ed::space_node::node_group_make_insert_selected(), node_group_output_update(), blender::ed::space_node::node_group_separate_selected(), blender::ed::space_node::node_group_ungroup(), blender::ed::space_node::node_link_exit(), nodeAddLink(), nodeAddNode(), nodeAddSocket(), ntree_copy_data(), blender::ed::space_node::ntree_socket_move_exec(), ntreeAddSocketInterface(), ntreeCompositCryptomatteUpdateLayerNames(), ntreeGetThreadStack(), object_add_or_copy_particle_system(), object_blend_read_data(), object_copy_data(), object_gpencil_add_exec(), object_preview_scene_create(), blender::ed::outliner::outliner_add_element(), outliner_add_id_contents(), outliner_add_object_contents(), outliner_collections_children_sort(), outliner_create(), outliner_find_selected_collections(), outliner_find_selected_objects(), outliner_make_object_parent_hierarchy(), outliner_sort(), overlay_edit_uv_cache_populate(), panel_add_instanced(), pose_backup_create(), pose_copy_exec(), pose_flip_names_exec(), poselib_add_exec(), poselib_backup_posecopy(), poselib_preview_get_next(), poselib_sanitize_exec(), posttrans_fcurve_clean(), preferences_autoexec_add_exec(), preview_get_localized_world(), preview_prepare_scene(), project_paint_prepare_all_faces(), property_search_all_tabs(), psys_alloc_path_cache_buffers(), psys_check_group_weights(), ptcache_add_extra_data(), ptcache_copy(), ptcache_disk_frame_to_mem(), ptcache_ids_from_object_cb(), ptcache_write(), pyrna_py_to_prop(), raycast_all_cb(), RE_create_gp_pass(), RE_DuplicateRenderResult(), RE_engine_begin_result(), RE_engines_register(), RE_NewRender(), blender::io::alembic::AbcCurveReader::read_curve_sample(), blender::io::usd::USDCurvesReader::read_curve_sample(), blender::io::usd::USDNurbsReader::read_curve_sample(), read_libblock(), read_libblock_undo_restore_at_old_address(), read_libblock_undo_restore_identical(), read_libblock_undo_restore_library(), read_library_linked_ids(), blender::io::alembic::AbcNurbsReader::readObjectData(), rearrange_animchannel_add_to_islands(), rearrange_island_bottom(), recalcData_nla(), refresh_socket_list(), region_azone_edge_init(), region_azone_scrollbar_init(), region_copylist(), region_quadview_exec(), register_row_filter_panels(), render_layer_add_pass(), render_result_from_bake(), render_result_new(), render_result_single_layer_end(), render_result_view_new(), render_result_views_shallowcopy(), repeat_history_exec(), rna_function_parameter_parse(), rna_path_parse(), row_filter_add_exec(), rule_add_exec(), scanfill(), scanfill_preprocess_self_isect(), screen_addarea_ex(), screen_geom_edge_add_ex(), screen_geom_vertex_add_ex(), screen_opengl_views_setup(), script_create(), sculpt_undo_alloc_node_type(), sculpt_undo_bmesh_push(), sculpt_undo_face_sets_push(), selected_objects_get(), SEQ_add_movie_strip(), SEQ_add_reload_new_file(), SEQ_animation_duplicate(), SEQ_channels_duplicate(), SEQ_channels_ensure(), seq_disk_cache_add_file_to_list(), seq_dupli(), SEQ_edit_move_strip_to_seqbase(), SEQ_edit_strip_split(), seq_get_text_strip_cb(), SEQ_modifier_list_copy(), SEQ_modifier_new(), seq_open_anim_file(), SEQ_proxy_rebuild_context(), seq_select_seq_from_preview(), SEQ_sequence_alloc(), sequencer_buttons_register(), sequencer_copy_animation(), sequencer_create(), sequencer_meta_make_exec(), sequencer_paste_animation(), sequencer_preview_add_sound(), blender::bke::tests::BKE_armature_find_selected_bones_test::SetUp(), shade_smooth_exec(), shaderfx_panel_register(), shaderfx_subpanel_register(), sigbus_handler_add(), sort_linked_ids(), spacedata_cleanup_exec(), splineik_init_tree_from_pchan(), split_groups_action_temp(), split_libdata(), split_main_newid(), splitlist(), spreadsheet_create(), blender::ed::spreadsheet::spreadsheet_data_set_region_panels_register(), spreadsheet_duplicate(), state_add_exec(), state_del_exec(), statusbar_create(), store_original_bezt_arrays(), stroke_dash(), stroke_defvert_create_nr_list(), studiolight_add_file(), task_listbase_test(), task_mempool_iter_tls_func(), blender::bke::tests::TEST(), TEST(), blender::tests::TEST(), testbuffer_list_add(), testchunk_list_add(), text_copy_data(), text_create(), text_from_buf(), topbar_create(), tracking_dopesheet_calc_coverage(), tracking_dopesheet_channels_calc(), tracking_objects_copy(), tracking_plane_tracks_copy(), tracking_tracks_copy(), tracks_map_merge(), AnimationImporter::translate_animation_OLD(), AnimationImporter::translate_Animations(), txt_from_buf_for_undo(), uhandle_add(), uhandle_add_ubuf(), ui_afterfunc_new(), ui_block_add_view_impl(), UI_block_layout(), ui_block_new_button_group(), ui_but_extra_operator_icon_add_ptr(), UI_butstore_create(), UI_butstore_register(), ui_button_group_add_but(), ui_def_but(), ui_imageuser_pass_menu(), ui_layout_add_but(), ui_list_ensure(), ui_litem_init_from_parent(), UI_panel_begin(), ui_panel_category_active_set(), UI_panel_category_add(), ui_region_temp_add(), ui_rna_collection_search_update_fn(), ui_style_new(), ui_textedit_undo_push(), UI_theme_init_default(), uiStyleInit(), uiTemplatePreview(), undocurve_from_editcurve(), undocurve_to_editcurve(), undofont_from_editfont(), undomball_to_editmball(), userpref_create(), verify_driver_fcurve(), verify_socket_template_list(), versions_gpencil_add_main(), vgroup_duplicate(), view3d_buttons_register(), view3d_create(), view3d_ruler_to_gpencil(), visit_object(), volume_grid_cache_get(), voronoi_addParabola(), voronoi_clampEdges(), voronoi_createBoundaryEdges(), voronoi_removeParabola(), vs_add(), WM_drag_add_asset_list_item(), WM_drag_add_local_ID(), WM_draw_cb_activate(), WM_dropbox_add(), WM_dropboxmap_find(), wm_event_add_ex(), WM_event_add_keymap_handler(), WM_event_add_keymap_handler_dynamic(), WM_event_add_notifier_ex(), WM_event_add_timer(), WM_event_add_timer_notifier(), WM_event_start_prepared_drag(), WM_gesture_new(), wm_gizmogroup_gizmo_register(), wm_gizmogroup_new_from_type(), WM_gizmomap_add_handlers(), WM_gizmomaptype_group_link_ptr(), WM_gizmotype_target_property_def(), wm_handlers_do_intern(), wm_history_file_read(), WM_jobs_get(), WM_keyconfig_new(), WM_keymap_add_item(), WM_keymap_add_item_copy(), wm_keymap_copy(), wm_keymap_diff(), wm_keymap_diff_update(), WM_keymap_ensure(), wm_keymap_patch(), wm_keymap_patch_update(), WM_main_add_notifier(), WM_modalkeymap_add_item(), WM_modalkeymap_add_item_str(), WM_msg_subscribe_with_key(), wm_operator_create(), wm_operator_register(), WM_operatortype_macro_define(), WM_paint_cursor_activate(), wm_surface_add(), wm_window_new(), WM_xr_actionmap_add_copy(), WM_xr_actionmap_binding_add_copy(), wm_xr_actionmap_binding_copy(), WM_xr_actionmap_binding_new(), wm_xr_actionmap_copy(), WM_xr_actionmap_item_add_copy(), wm_xr_actionmap_item_copy(), WM_xr_actionmap_item_new(), WM_xr_actionmap_new(), wm_xr_session_controller_data_populate(), wm_xr_session_haptic_action_add(), wm_xr_session_modal_action_test_add(), wm_xr_session_surface_offscreen_ensure(), ww_write_zstd(), and zstd_write_task().
Sets dst to a duplicate of the entire contents of src. dst may be the same as src.
Referenced by action_copy_data(), armature_copy_data(), armdef_copy(), BKE_area_region_copy(), BKE_cachefile_eval(), BKE_constraints_copy_ex(), BKE_keyingsets_copy(), BKE_lib_override_library_copy(), BKE_object_copy_particlesystem(), BKE_pose_copy_data_ex(), BKE_shaderfx_copy(), BKE_stamp_data_copy(), BM_edgeloop_copy(), boid_copy_settings(), boid_duplicate_state(), cache_file_copy_data(), copy_bonechildren(), copy_fmodifiers(), CTX_store_add(), CTX_store_add_all(), CTX_store_copy(), driver_variables_copy(), ED_vgroup_array_copy(), ED_workspace_duplicate(), folderlist_duplicate(), GPU_uniform_attr_list_copy(), graph_duplicate(), image_copy_data(), layer_aov_copy_data(), layer_collections_copy_data(), layer_lightgroup_copy_data(), lib_override_library_property_copy(), lib_override_library_resync(), metaball_copy_data(), blender::nodes::node_composite_cryptomatte_cc::node_copy_cryptomatte(), blender::ed::space_node::node_duplicate(), palette_copy_data(), panel_list_copy(), particle_settings_copy_data(), pycon_copy(), RE_InitState(), render_copy_renderdata(), render_update_anim_renderdata(), scene_copy_data(), scene_copy_markers(), screen_data_copy(), shapekey_copy_data(), ui_popup_block_position(), undoptcache_from_editcache(), and undoptcache_to_editcache().
Returns the position of vlink within listbase, numbering from 0, or -1 if not found.
Referenced by blender::ed::space_node::add_existing_group_input_fn(), blender::ed::space_node::add_group_input_node_fn(), ANIM_scene_get_keyingset_index(), annotation_area_exists(), applyLength(), area_close_exec(), BKE_action_groups_reconstruct(), BKE_asset_metadata_tag_remove(), BKE_callback_remove(), BKE_curve_nurb_active_set(), BKE_freestyle_lineset_delete(), BKE_freestyle_module_delete(), BKE_freestyle_module_move(), BKE_gpencil_layer_mask_sort(), BKE_gpencil_vgroup_remove(), BKE_id_is_in_global_main(), BKE_image_remove_renderslot(), BKE_layer_collection_sync(), BKE_linestyle_alpha_modifier_remove(), BKE_linestyle_color_modifier_remove(), BKE_linestyle_geometry_modifier_remove(), BKE_linestyle_thickness_modifier_remove(), BKE_mask_layer_active_set(), BKE_modifier_remove_from_list(), BKE_nlatrack_find_tweaked(), BKE_node_clipboard_validate(), BKE_object_defgroup_clear(), BKE_object_modifier_set_active(), BKE_object_shapekey_remove(), BKE_pose_rebuild(), BKE_pose_remove_group(), BKE_preferences_asset_library_get_index(), BKE_scene_has_view_layer(), BKE_scene_remove_render_view(), BKE_scene_transform_orientation_get_index(), BKE_screen_find_area_from_space(), BKE_spacedata_find_region_type(), BKE_tracking_find_object_for_plane_track(), BKE_tracking_find_object_for_track(), BKE_tracking_object_delete(), BKE_tracking_plane_track_get_active(), BKE_tracking_track_get_active(), BKE_undosys_step_push_with_type(), BKE_view_layer_find_with_aov(), BKE_view_layer_find_with_lightgroup(), BKE_view_layer_remove_aov(), BKE_view_layer_remove_lightgroup(), BKE_view_layer_rename(), BLI_array_store_state_add(), BLI_array_store_state_remove(), blo_do_versions_pre250(), bpy_rna_context_temp_override_enter(), bpy_rna_context_temp_override_exit(), blender::deg::DepsgraphNodeBuilder::build_ik_pose(), blender::deg::DepsgraphNodeBuilder::build_splineik_pose(), blender::deg::AbstractBuilderPipeline::build_step_sanity_check(), buttons_texture_context_compute(), cachefile_layer_move_exec(), ccgDM_release(), constraint_copy_exec(), constraint_find_original(), constraint_list_find_from_target(), copyData(), createTransNlaData(), deformStroke(), ed_mball_findnearest_metaelem(), ED_mesh_join_objects_exec(), ED_object_constraint_list_from_constraint(), ED_object_constraint_move_to_index(), ED_object_facemap_face_add(), ED_object_facemap_face_remove(), ED_object_gpencil_modifier_move_to_index(), ED_object_modifier_move_to_index(), ED_object_shaderfx_move_to_index(), ED_object_shape_key_add(), ED_screen_area_find_with_spacedata(), ed_undo_step_by_index(), ED_vgroup_vert_add(), ED_vgroup_vert_remove(), ED_vgroup_vert_weight(), ED_workspace_layout_delete(), ED_wpaint_ensure_data(), edbm_blend_from_shape_exec(), EEVEE_motion_blur_hair_cache_populate(), face_map_move_exec(), filter_reorder(), fmodifier_reorder(), blender::ed::geometry::geometry_attribute_convert_exec(), get_nearest_editbonepoint(), get_nurb_index(), gizmo_tweak_finish(), gpencil_add_verts_to_dgroups(), gpencil_area_exists(), gpencil_create_extensions(), gpencil_draw_datablock(), gpencil_interpolate_seq_exec(), gpencil_layer_cache_add(), gpencil_object_modifier_remove(), gpencil_stroke_arrange_exec(), gpencil_stroke_pair_table(), gpencil_zoom_level_set(), id_sort_by_name(), IDP_RemoveFromGroup(), image_add_render_slot_exec(), lib_override_library_resync(), blender::nodes::geometry_nodes_eval_log::NodeLog::lookup_socket_log(), make_new_animlistelem(), modifier_panel_header(), movieclip_selection_sync(), blender::compositor::MultilayerBaseOperation::MultilayerBaseOperation(), nodePositionRelative(), ntreeCompositOutputFileAddSocket(), object_defgroup_remove_edit_mode(), object_defgroup_remove_object_mode(), object_fmap_remove_edit_mode(), object_fmap_remove_object_mode(), object_modifier_remove(), object_shaderfx_remove(), object_test_constraint(), outliner_collection_delete(), outliner_free_tree_element(), outliner_get_insert_index(), pastebuf_match_path_property(), poselib_preview_apply(), poselib_preview_cleanup(), python_script_exec(), RE_InitState(), recalcData_nla(), screen_change_prepare(), sculpt_undo_restore_coords(), select_report_pick_invoke(), SEQ_get_seqbase_by_seq(), SEQ_modifier_remove(), seqclipboard_ptr_restore(), sequence_fn(), blender::ed::space_node::socket_needs_attribute_search(), spreadsheet_filter_panel_draw_header(), TEST(), text_reload_exec(), text_replace_all(), tile_add_exec(), tracks_map_merge(), tree_element_sequence_activate(), tree_element_viewlayer_activate(), ui_block_func_PIE(), ui_block_func_POPUP(), ui_but_execute_begin(), ui_but_update_from_old_block(), UI_butstore_free(), ui_palette_set_active(), ui_popup_block_remove(), ui_region_handler_remove(), ui_region_temp_remove(), UI_ThemeGetColorPtr(), undomesh_free_data(), undosys_stack_validate(), update_cache_node_create(), view_layer_remove_poll(), view_layer_remove_unset_nodetrees(), viewlayer_aov_active_set(), viewlayer_lightgroup_active_set(), WM_event_remove_timer(), wm_gizmogroup_gizmo_register(), wm_handler_fileselect_do(), wm_handler_op_context_get_if_valid(), wm_handlers_do_intern(), wm_history_file_free(), WM_keyconfig_remove(), WM_keymap_remove(), WM_keymap_remove_item(), WM_operator_region_active_win_set(), WM_toolsystem_do_msg_notify_tag_refresh(), WM_window_cursor_keymap_status_refresh(), WM_xr_actionmap_binding_remove(), WM_xr_actionmap_item_remove(), WM_xr_actionmap_remove(), and wm_xr_session_root_window_or_fallback_get().
Returns the nth element of listbase, numbering from 0.
Referenced by actkeys_find_list_element_at_position(), add_empty_ks_path_exec(), blender::ed::space_node::add_existing_group_input_fn(), blender::ed::space_node::add_group_input_node_fn(), add_keyingset_button_exec(), add_realize_node_tree(), ANIM_keyingset_get_from_enum_type(), ANIM_scene_get_active_keyingset(), animchan_sync_group(), background_image_remove_exec(), bc_node_add_link(), BKE_animsys_eval_driver(), BKE_area_find_region_active_win(), BKE_cachefile_get_active_layer(), BKE_constraint_target_matrix_get(), BKE_curve_nurb_active_get(), BKE_curve_nurb_vert_active_get(), BKE_editlattice_load(), BKE_image_clear_renderslot(), BKE_image_get_renderslot(), BKE_image_memorypack(), BKE_image_remove_renderslot(), BKE_image_user_file_path_ex(), BKE_key_evaluate_object_ex(), BKE_keyblock_from_object(), BKE_layer_eval_view_layer_indexed(), BKE_linestyle_default_shader(), BKE_mask_layer_active(), BKE_mesh_create_derived_for_modifier(), BKE_mesh_nomain_to_mesh(), BKE_object_defgroup_flip_index(), BKE_object_defgroup_flip_map_single(), BKE_object_delete_ptcache(), BKE_object_eval_eval_base_flags(), BKE_pose_remove_group_index(), BKE_preferences_asset_library_find_from_index(), BKE_scene_transform_orientation_find(), BKE_tracking_object_get_active(), BKE_undosys_step_load_from_index(), BM_mesh_bm_from_me(), bm_to_mesh_shape(), boid_brain(), bone_mouse_select_menu(), bpy_bmeditselseq_subscript_int(), brush_draw_apply(), build_sequential(), buttons_texture_context_compute(), cache_pointdensity(), calc_shapeKeys(), change_frame(), check_vertex_group_accessible(), cmp_node_image_add_pass_output(), cmp_node_image_create_outputs(), cmp_node_rlayer_create_outputs(), collection_add_info_get_from_op(), collection_link_exec(), colormanage_colorspace_get_indexed(), colormanage_display_get_indexed(), colormanage_look_get_indexed(), colormanage_view_get_indexed(), constraint_find_original(), blender::compositor::ImageNode::convert_to_operations(), copyData(), data_transfer_layersmapping_vgroups(), blender::compositor::RenderLayersProg::determine_canvas(), do_pose_box_select(), do_version_workspaces_after_lib_link(), do_versions_nodetree_multi_file_output_format_2_62_1(), draw_selected_name(), dynamics_step(), ED_action_fcurve_ensure(), ED_armature_base_and_ebone_from_select_buffer(), ED_armature_base_and_pchan_from_select_buffer(), ED_armature_object_and_ebone_from_select_buffer(), ED_gpencil_vgroup_assign(), ED_gpencil_vgroup_deselect(), ED_gpencil_vgroup_remove(), ED_gpencil_vgroup_select(), ed_marker_make_links_scene_exec(), ED_mball_base_and_elem_from_select_buffer(), ED_uvedit_udim_params_from_image_space(), ED_vgroup_mirror(), ED_wpaint_mirror_vgroup_ensure(), edbm_blend_from_shape_exec(), edbm_fill_grid_prepare(), 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(), face_map_supported_remove_poll(), find_output_attributes_to_store(), blender::nodes::node_fn_rotate_euler_cc::fn_node_rotate_euler_update(), blender::ListBaseWrapper< T >::get(), get_activeSurface(), blender::compositor::RenderLayersProg::get_meta_data(), blender::io::obj::OBJCurve::get_nurbs_degree(), blender::io::obj::OBJCurve::get_nurbs_flagu(), blender::io::obj::OBJMesh::get_poly_deform_group_name(), Freestyle::BlenderStrokeRenderer::GetStrokeShader(), gpencil_edit_batches_ensure(), gpencil_generate_weights_exec(), gpencil_interpolate_seq_exec(), gpencil_layer_active_exec(), gpencil_layer_change_exec(), gpencil_layer_mask_move_exec(), gpencil_layer_mask_remove_exec(), gpencil_primitive_interaction_end(), gpencil_sculpt_brush_init(), gpencil_stroke_from_buffer(), gpencil_stroke_newfrombuffer(), gpencil_stroke_pair_table(), gpencil_vertex_group_invert_exec(), gpencil_vertex_group_normalize_all_exec(), gpencil_vertex_group_normalize_exec(), gpencil_vertex_group_smooth_exec(), gpencil_weightpaint_brush_init(), blender::nodes::node_shader_normal_map_cc::gpu_shader_normal_map(), gpu_uniformbuffer_link(), group_move_exec(), image_get_render_result(), image_save_single(), image_user_from_context_and_active_tile(), blender::io::obj::obj_importer_test::import_and_check(), blender::compositor::RenderLayersProg::init_execution(), isDisabled(), key_evaluate_relative(), keyingset_poll_activePath_edit(), SkinInfo::link_armature(), load_movie_single(), make_links_scene_exec(), mask_layer_move_exec(), modifyMesh(), mouse_anim_channels(), mouse_nla_channels(), movieclip_selection_sync(), nlachannels_pushdown_exec(), nlaedit_add_actionclip_exec(), nlaedit_strip_at_region_position(), blender::nodes::node_fn_boolean_math_cc::node_boolean_math_update(), node_cmp_rlayers_register_pass(), blender::nodes::node_fn_compare_cc::node_compare_update(), node_math_update(), blender::ed::space_node::node_output_file_move_active_socket_exec(), blender::nodes::node_geo_distribute_points_on_faces_cc::node_point_distribute_points_on_faces_update(), blender::ed::space_node::node_render_changed_exec(), blender::nodes::node_shader_bsdf_principled_cc::node_shader_gpu_bsdf_principled(), blender::nodes::node_shader_subsurface_scattering_cc::node_shader_gpu_subsurface_scattering(), blender::nodes::node_shader_vector_math_cc::node_shader_update_vector_math(), blender::ed::space_node::node_socket_add_replace(), blender::nodes::node_geo_raycast_cc::node_update(), ntree_shader_node_input_get(), ntree_shader_node_output_get(), ntreeCompositOutputFileRemoveActiveSocket(), object_hook_from_context(), object_hook_remove_exec(), object_shape_key_mirror(), object_shapekey_remove(), outliner_action_set_exec(), outliner_id_remap_exec(), OVERLAY_edit_uv_cache_init(), palette_color_delete_exec(), palette_color_move_exec(), poselib_get_active_pose(), poselib_move_exec(), poselib_preview_init_data(), poselib_remove_exec(), poselib_rename_exec(), poselib_rename_invoke(), preferences_asset_library_remove_exec(), preferences_autoexec_remove_exec(), psys_find_group_weights(), psys_get_target_system(), RE_engine_pass_by_index_get(), RE_InitState(), RE_point_density_minmax(), RE_RenderViewGetById(), remove_active_keyingset_exec(), remove_active_ks_path_exec(), remove_keyingset_button_exec(), rename_anim_channels(), render_get_active_layer(), render_view_remove_exec(), repeat_history_exec(), return_editmesh_vgroup(), RNA_function_get_parameter(), rna_listbase_lookup_int(), row_filter_remove_exec(), select_anim_channel_keys(), select_report_pick_exec(), SEQ_channel_get_by_index(), SEQ_proxy_rebuild_context(), SEQ_render_give_ibuf(), sequencer_add_mask_strip_exec(), sequencer_add_movieclip_strip_exec(), sequencer_add_scene_strip_exec(), sequencer_change_scene_exec(), set_color(), set_keyed_keys(), set_pchan_colorset(), TEST(), texture_paint_camera_project_exec(), tile_add_invoke(), tile_fill_exec(), tile_remove_exec(), blender::io::obj::OBJCurve::total_spline_control_points(), blender::io::obj::OBJCurve::total_spline_vertices(), tree_element_get_icon(), txt_sel_set(), ui_imageuser_pass_menu(), ui_imageuser_pass_menu_step(), uiblock_layer_pass_buttons(), update_mapping_node_inputs_and_properties(), update_math_node_single_operand_operators(), update_noise_and_wave_distortion(), update_vector_math_node_add_and_subtract_operators(), update_vector_math_node_average_operator(), update_vector_math_node_cross_product_operator(), update_vector_math_node_normalize_operator(), update_voronoi_node_crackle(), update_voronoi_node_fac_output(), update_voronoi_node_square_distance(), verify_active_keyingset(), version_geometry_nodes_add_realize_instance_nodes(), version_geometry_nodes_set_position_node_offset(), blender::io::obj::OBJCurve::vertex_coordinates(), vertex_group_remove_from_exec(), vertex_group_vert_select_unlocked_poll(), vertex_paint_from_weight(), vgroup_assign_verts(), vgroup_delete_active(), vgroup_duplicate(), vgroup_move_exec(), vgroup_normalize(), vgroup_select_verts(), wm_history_file_update(), WM_xr_action_binding_create(), wm_xr_draw_view(), wm_xr_draw_viewport_buffers_to_active_framebuffer(), WM_xr_session_state_controller_aim_location_get(), WM_xr_session_state_controller_aim_rotation_get(), WM_xr_session_state_controller_grip_location_get(), WM_xr_session_state_controller_grip_rotation_get(), wm_xr_session_surface_offscreen_ensure(), and wpaint_stroke_test_start().
Returns the nth element after link, numbering from 0.
Definition at line 534 of file listbase.c.
References Link::next, and NULL.
Referenced by gpencil_update_on_write_frame_cb(), gpencil_update_on_write_layer_cb(), gpencil_update_on_write_stroke_cb(), and TEST().
Finds the first element of listbase which contains the specified pointer value at the specified offset, returning NULL if not found.
Referenced by _bm_select_history_check(), _bm_select_history_remove(), ANIM_keyingset_find_id(), applyarmature_process_selected_recursive(), BKE_animsys_get_nla_keyframing_context(), BKE_collection_has_object(), BKE_collection_has_object_recursive(), BKE_collection_has_object_recursive_instanced(), BKE_layer_collection_sync(), BKE_scene_object_find(), blo_do_versions_290(), collection_find_child(), collection_find_parent(), collection_object_add(), collection_object_cache_fill(), collection_object_remove(), DRW_deferred_shader_remove(), edbm_fill_grid_prepare(), Freestyle::BlenderStrokeRenderer::GetStrokeShader(), layer_collection_resync_create_recurse(), make_duplis_particle_system(), move_to_collection_exec(), rearrange_animchannel_islands(), sigbus_handler_remove(), TEST(), undofont_free_data(), wm_gizmogroup_find_by_type(), wm_macro_modal(), workspace_layout_find_exec(), and workspace_relation_get_data_matching_parent().
Finds the first element of listbase which contains the null-terminated string id at the specified offset, returning NULL if not found.
Referenced by ANIM_keyingset_get_from_idname(), ANIM_keyingset_info_find_name(), arg_handle_engine_set(), bake(), BKE_action_group_find_name(), BKE_addon_find(), BKE_addon_remove_safe(), BKE_constraints_find_name(), BKE_effectors_create(), BKE_gpencil_brush_preset_set(), BKE_gpencil_layer_mask_named_get(), BKE_gpencil_layer_named_get(), BKE_gpencil_modifiers_findby_name(), BKE_gpencil_palette_ensure(), BKE_image_ensure_viewer_views(), BKE_image_is_stereo(), BKE_keyblock_find_name(), BKE_keyconfig_pref_ensure(), BKE_lib_override_library_main_resync(), BKE_libblock_find_name(), BKE_mask_clipboard_paste_to_layer(), BKE_modifiers_findby_name(), BKE_node_clipboard_validate(), BKE_object_defgroup_find_name(), BKE_object_facemap_find_name(), BKE_packedfile_unpack_image(), BKE_pose_channel_find_name(), BKE_preferences_asset_library_find_from_name(), BKE_scene_multiview_is_stereo3d(), BKE_scene_multiview_num_views_get(), BKE_scene_multiview_view_filepath_get(), BKE_scene_multiview_view_suffix_get(), BKE_shaderfx_findby_name(), BKE_workspace_owner_id_check(), BLI_libblock_ensure_unique_name(), blo_update_defaults_scene(), BLO_update_defaults_startup_blend(), cmp_node_image_add_pass_output(), blender::nodes::node_composite_switchview_cc::cmp_node_switch_view_update(), blender::compositor::ImageNode::convert_to_operations(), data_dir_add(), DEG_get_evaluated_view_layer(), do_version_workspaces_after_lib_link(), do_version_workspaces_create_from_screens(), do_versions_after_linking_280(), do_versions_after_linking_290(), ED_armature_ebone_find_name(), ED_asset_filter_matches_asset(), EEVEE_renderpasses_init(), engine_render_view_layer(), findOrientationName(), FRS_do_stroke_rendering(), gpencil_brush_ensure(), gpencil_sculpt_get_smooth_brush(), gpencil_strokes_paste_exec(), IDP_GetPropertyFromGroup(), IDP_SyncGroupValues(), image_add_view(), image_save_single(), image_unpack_exec(), IMB_exr_channel_rect(), imb_exr_get_layer(), imb_exr_get_pass(), IMB_exr_set_channel(), is_yet_read(), ml_addview_cb(), nodeFindNodebyName(), preview_get_world(), pyrna_prop_collection_subscript_str_lib_pair_ptr(), RE_create_gp_pass(), RE_engines_find(), RE_GetRenderLayer(), RE_RenderResult_is_stereo(), RE_RenderViewGetByName(), blender::io::gpencil::GpencilImporterSVG::read(), render_get_active_layer(), render_result_clone_passes(), screen_opengl_views_setup(), screen_render_single_layer_set(), separated_armature_fix_links(), SEQ_modifier_find_by_name(), seqclipboard_ptr_restore(), sound_unpack_exec(), switch_preview_floor_material(), TEST(), ui_list_ensure(), UI_panel_add_instanced(), UI_panel_category_active_find(), ui_panel_category_active_set(), UI_panel_category_find(), UI_style_get(), UI_theme_init_default(), uiTemplatePreview(), view_layer_add_used_lightgroups_exec(), wm_file_read_report(), WM_gizmotype_target_property_find(), WM_keyconfig_active(), WM_keyconfig_new(), wm_xr_session_controller_aim_pose_find(), and workspace_add_menu().
Finds the first element of listbase which contains a pointer to the null-terminated string id at the specified offset, returning NULL if not found.
Referenced by BKE_lib_override_library_property_operation_find(), RNA_def_function(), RNA_struct_find_function(), RNA_struct_type_find_property_no_base(), ui_imageuser_pass_menu(), and wm_file_history_find().
int BLI_findstringindex | ( | const struct ListBase * | listbase, |
const char * | id, | ||
int | offset | ||
) |
Returns the 0-based index of the first element of listbase which contains the specified null-terminated string at the specified offset, or -1 if not found.
Referenced by BKE_image_render_write(), BKE_object_facemap_name_index(), blender::compositor::ImageNode::convert_to_operations(), blender::compositor::SwitchViewNode::convert_to_operations(), image_save_single(), ml_addpass_cb(), RE_WriteRenderViewsMovie(), render_image_update_pass_and_layer(), render_layer_add_pass(), similar_vert_select_exec(), blender::bke::VertexGroupsAttributeProvider::try_get_for_read(), blender::bke::VertexGroupsAttributeProvider::try_get_for_write(), vgroup_do_remap(), and WM_gizmo_target_property_find().
Removes vlink from listbase and disposes of it. Assumes it is linked into there!
Definition at line 239 of file listbase.c.
References BLI_remlink(), MEM_freeN, and NULL.
Referenced by _bm_select_history_remove(), action_move_fcurves_by_basepath(), action_to_animato(), ANIM_fcurve_delete_from_animdata(), ANIM_fcurves_copybuf_free(), ANIM_keyingset_info_unregister(), ANIM_keyingset_infos_exit(), animchannels_delete_exec(), animchannels_group_channels(), animchannels_ungroup_exec(), animdata_filter_remove_duplis(), animdata_filter_remove_invalid(), annotation_free_stroke(), BKE_asset_metadata_tag_remove(), BKE_collection_parent_relations_rebuild(), BKE_collections_child_remove_nulls(), BKE_constraint_apply_for_object(), BKE_constraint_apply_for_pose(), BKE_constraint_remove(), BKE_constraint_targets_flush(), BKE_freestyle_module_delete(), BKE_gpencil_dissolve_points(), BKE_gpencil_frame_delete_laststroke(), BKE_gpencil_free_frames(), BKE_gpencil_free_layer_masks(), BKE_gpencil_free_layers(), BKE_gpencil_layer_delete(), BKE_gpencil_layer_frame_delete(), BKE_gpencil_layer_mask_remove(), BKE_gpencil_vgroup_remove(), BKE_image_packfiles(), BKE_keyingset_free_path(), BKE_keyingsets_free(), BKE_lib_override_library_property_delete(), BKE_lib_override_library_property_operation_delete(), BKE_linestyle_alpha_modifier_remove(), BKE_linestyle_color_modifier_remove(), BKE_linestyle_geometry_modifier_remove(), BKE_linestyle_thickness_modifier_remove(), BKE_mesh_to_curve_nurblist(), BKE_nlastrip_free(), BKE_nlatrack_free(), BKE_object_delete_ptcache(), BKE_pose_channels_clear_with_null_bone(), BKE_pose_channels_remove(), BKE_pose_remove_group(), BKE_preferences_asset_library_remove(), BKE_ptcache_id_clear(), BKE_scene_transform_orientation_remove(), BKE_tracking_object_delete(), BKE_tracking_plane_tracks_remove_point_track(), BKE_vfont_free_data(), BKE_view_layer_blend_read_lib(), BKE_view_layer_remove_aov(), BKE_view_layer_remove_lightgroup(), BKE_workspace_layout_remove(), BLI_voronoi_compute(), blo_do_versions_250(), blo_do_versions_270(), blo_do_versions_280(), blo_do_versions_290(), blo_do_versions_300(), BM_log_entry_add(), BM_log_entry_drop(), BM_select_history_merge_from_targetmap(), BM_select_history_validate(), bone_free(), bpath_list_restore(), clean_tracks_exec(), clip_delete_plane_track(), clip_delete_track(), collection_child_remove(), collection_missing_parents_remove(), collection_null_children_remove(), collection_object_remove(), collection_object_remove_duplicates(), collection_object_remove_nulls(), delete_marker_exec(), do_versions_ipos_to_animato(), do_versions_remove_region(), driver_free_variable(), ED_area_newspace(), ED_gpencil_strokes_copybuf_free(), ed_marker_delete_exec(), ED_pose_backup_free(), ED_preview_restart_queue_work(), ED_region_remove(), edbm_strip_selections(), folder_history_entry_free(), folderlist_popdir(), frame_cache_remove(), free_iconfile_list(), gizmos_draw_list(), gpencil_frame_clean_fill_exec(), gpencil_frame_clean_loose_exec(), gpencil_free_stroke(), gpencil_interpolate_reverse_exec(), gpencil_undo_push(), gpencil_update_on_write_frame_cb(), gpu_node_graph_prune_unused(), ipo_free_data(), ipo_to_animato(), join_tracks_exec(), lib_link_collection_data(), lib_override_library_resync(), link_recurs_seq(), nlastrips_to_animdata(), object_defgroup_remove_common(), poseAnim_mapping_free(), poselib_backup_free_data(), poselib_remove_exec(), poselib_sanitize_exec(), preferences_autoexec_remove_exec(), preview_startjob(), psys_check_group_weights(), RE_create_gp_pass(), read_library_clear_weak_links(), rearrange_animchannel_flatten_islands(), rearrange_animchannels_filter_visible(), remove_active_keyingset_exec(), remove_fmodifier(), remove_tagged_functions(), removeSnapPoint(), separate_armature_bones(), SEQ_relations_sequence_free_anim(), sigbus_handler_remove(), splineik_execute_tree(), ui_apply_but_funcs_after(), ui_layout_remove_but(), ui_region_temp_remove(), view_layer_bases_hash_create(), voronoi_addParabola(), voronoi_removeParabola(), WM_drag_free(), wm_history_file_free(), wm_keymap_diff_update(), wm_keymap_patch(), wm_keymap_patch_update(), WM_keymap_remove_item(), WM_keymap_restore_to_default(), WM_xr_action_destroy(), WM_xr_actionmap_binding_remove(), WM_xr_actionmap_item_remove(), WM_xr_actionmap_remove(), wm_xr_session_controller_data_free(), wm_xr_session_haptic_action_remove(), wm_xr_session_haptic_timers_check(), wm_xr_session_modal_action_remove(), wm_xr_session_surface_free_data(), and workspace_blend_read_lib().
Removes and disposes of the entire contents of listbase using direct free(3).
Definition at line 452 of file listbase.c.
References BLI_listbase_clear(), ListBase::first, free(), Link::next, and next.
Referenced by bli_builddir().
Removes and disposes of the entire contents of listbase using guardedalloc.
Definition at line 466 of file listbase.c.
References BLI_listbase_clear(), ListBase::first, MEM_freeN, Link::next, and next.
Referenced by action_free_data(), action_set_destroy(), action_to_animato(), actkeys_mselect_column(), blender::ed::space_node::add_reroute_exec(), ANIM_animdata_freelist(), animsys_evaluate_nla_for_flush(), animsys_evaluate_nla_for_keyframing(), apply_armature_pose2bones_exec(), area_azone_init(), armature_fill_bones_exec(), armature_flip_names_exec(), armature_switch_direction_exec(), armdef_free(), asset_operation_get_ids_from_context(), autokeyframe_object(), autokeyframe_pose(), bake_exec(), bake_freejob(), BIF_clearTransformOrientation(), BKE_animsys_free_nla_keyframing_context_cache(), BKE_area_region_free(), BKE_armature_bonelist_free(), BKE_asset_metadata_free(), BKE_autotrack_context_free(), BKE_blender_userdef_data_free(), BKE_bpath_list_free(), BKE_cachefile_eval(), BKE_collider_cache_free(), BKE_collision_relations_free(), BKE_constraints_free_ex(), BKE_cryptomatte_matte_id_to_entries(), BKE_effector_relations_free(), BKE_effectors_free(), BKE_freestyle_config_free(), BKE_gpencil_free_data(), BKE_gpencil_stroke_perimeter_from_view(), BKE_image_free_views(), BKE_image_signal(), BKE_layer_collection_sync(), BKE_lib_override_library_clear(), BKE_lib_override_library_create_from_tag(), BKE_main_collections_parent_relations_rebuild(), BKE_mesh_nomain_to_mesh(), BKE_mesh_to_curve_nurblist(), BKE_node_clipboard_clear(), BKE_object_data_transfer_ex(), BKE_palette_clear(), BKE_pose_channels_free_ex(), BKE_pose_free_data_ex(), BKE_ptcache_bake(), BKE_ptcache_free_mem(), BKE_ptcache_id_clear(), BKE_ptcache_id_find(), BKE_screen_area_free(), BKE_screen_area_map_free(), BKE_spacedata_freelist(), BKE_spacetypes_free(), BKE_stamp_data_free(), BKE_view_layer_free_ex(), blend_to_neighbor_graph_keys(), BLI_args_destroy(), BLI_box_pack_2d_fixedarea(), BLI_dlrbTree_free(), BLI_threadpool_end(), BLI_voronoi_triangulate(), blo_do_versions_250(), blo_filedata_free(), blo_update_defaults_screen(), BM_edgeloop_free(), BM_mesh_data_free(), BM_select_history_clear(), boid_free_settings(), breakdown_graph_keys(), blender::deg::DepsgraphRelationBuilder::build_object_pointcache(), blender::ed::outliner::OverrideRNAPathTreeBuilder::build_path(), blender::compositor::KeyingScreenOperation::build_voronoi_triangulation(), button_group_free(), buttons_free(), buttons_id_remap(), buttons_texture_context_compute(), cache_file_free_data(), camera_free_data(), collection_free_data(), collection_object_cache_free(), colormanage_free_config(), columnselect_action_keys(), columnselect_graph_keys(), constraintTransLim(), copy_to_selected_button(), create_scene(), ctx_data_base_collection_get(), ctx_data_list_count(), CTX_store_free(), data_transfer_exec(), datalayout_transfer_exec(), decimate_fcurve(), do_version_area_change_space_to_space_action(), do_version_layers_to_collections(), do_version_workspaces_after_lib_link(), do_versions_after_linking_280(), drw_deferred_shader_compilation_free(), DRW_drawdata_free(), DRW_smoke_exit(), ED_area_data_copy(), ED_armature_edit_free(), ED_autokeyframe_object(), ED_autokeyframe_pchan(), ED_image_filesel_detect_sequences(), ED_keylist_draw_list_free(), ED_object_editmode_exit_ex(), ED_object_shaderfx_link(), ED_objects_recalculate_paths(), ED_objects_recalculate_paths_selected(), ED_objects_recalculate_paths_visible(), ED_outliner_selected_objects_get(), ED_pose_recalculate_paths(), ED_preview_icon_render(), ED_preview_restart_queue_free(), ED_vgroup_array_copy(), ED_view3d_camera_autokey(), ED_workspace_delete(), edit_uv_stretching_update_ratios(), blender::geometry::execute_realize_mesh_tasks(), find_nearest_fcurve_vert(), folderlist_free(), free_buffers(), free_gpencil_colors(), free_object_duplilist(), free_openrecent(), free_posetree(), free_preview_job(), gpencil_interpolate_exit(), gpencil_interpolate_seq_exec(), gpencil_stroke_arrange_exec(), gpencil_stroke_perimeter_ex(), gpencil_undo_finish(), gpu_inputs_free(), GPU_material_free(), gpu_node_free(), gpu_node_graph_free(), gpu_select_pick_cache_end(), gpu_texture_create_tile_array(), GPU_uniform_attr_list_free(), graph_free(), graph_slider_exit(), graphkeys_euler_filter_exec(), graphkeys_mselect_column(), graphview_curves_hide_exec(), graphview_curves_reveal_exec(), icon_preview_free(), IDP_FreeGroup(), image_free_data(), image_open_exec(), IMB_exr_clear_channels(), IMB_exr_close(), lattice_free_data(), layer_collection_free(), lib_override_library_property_clear(), merge_nurb(), mesh_free_data(), metaball_free_data(), move_to_collection_exec(), move_to_collection_invoke(), move_to_collection_menus_free_recursive(), move_vertex_group_names_to_object_data(), multiresbake_freejob(), multiresbake_image_exec_locked(), nla_free(), nlaeval_free(), nlastrips_to_animdata(), blender::nodes::node_composite_cryptomatte_cc::node_free_cryptomatte(), node_free_node(), node_group_input_update(), node_group_output_update(), blender::ed::space_node::node_id_remap_cb(), nodeRemoveAllSockets(), ntree_free_data(), ntreeCompositCryptomatteUpdateLayerNames(), ntreeShaderEndExecTree_internal(), ntreeTexEndExecTree_internal(), object_cacheIgnoreClear(), object_convert_exec(), object_free_data(), object_lib_override_apply_post(), object_select_more_less(), object_select_random_exec(), outliner_color_tag_set_exec(), outliner_item_drag_drop_invoke(), paint_stroke_free(), palette_free_data(), panel_delete(), particle_settings_free_data(), pe_get_current(), peelObjectsTransform(), pose_clear_transform_generic_exec(), pose_clear_user_transforms_exec(), pose_flip_names_exec(), pose_propagate_exec(), poseAnim_mapping_autoKeyframe(), poseAnim_mapping_free(), poselib_keytag_pose(), poselib_preview_cleanup(), poselib_preview_get_next(), postTrans(), posttrans_fcurve_clean(), preview_startjob(), project_paint_prepare_all_faces(), proxy_freejob(), psys_check_group_weights(), psys_free(), psys_free_path_cache_buffers(), ptcache_extra_free(), ptcache_free_bake_all_exec(), pycon_free(), pyrna_struct_dir(), pyrna_struct_getattro(), pyrna_struct_setattro(), RE_FreeRender(), RE_InitState(), read_library_linked_ids(), rearrange_action_channels(), rearrange_driver_channels(), rearrange_gpencil_channels(), rearrange_nla_channels(), rearrange_nla_control_channels(), render_copy_renderdata(), render_update_anim_renderdata(), RNA_parameter_list_free(), RNA_path_resolve_from_type_to_property(), scanfill_preprocess_self_isect(), scene_free_data(), screen_free_data(), seq_disk_cache_enforce_limits(), seq_disk_cache_free(), SEQ_editing_free(), SEQ_meta_stack_set(), seq_select_seq_from_preview(), setflag_anim_channels(), shade_smooth_exec(), space_workspace_cycle_invoke(), spacetype_free(), special_aftertrans_update__object(), template_ID_tabs(), TEST(), timeline_draw_cache(), tracking_dopesheet_free(), tracking_objects_free(), tracking_plane_tracks_free(), tracking_tracks_free(), tree_element_to_path(), UI_block_free(), UI_butstore_free(), ui_imageuser_pass_menu(), UI_panel_category_clear_all(), ui_popup_block_position(), ui_selectcontext_begin(), UI_style_init_default(), ui_textedit_undo_stack_destroy(), updateDuplicateActionConstraintSettings(), userdef_free_keymaps(), view3d_context(), volume_batch_cache_clear(), volume_import_exec(), wm_close_and_free(), WM_drag_data_create(), WM_drag_free(), wm_dropbox_free(), WM_gizmotype_free_ptr(), WM_keyconfig_clear(), WM_keymap_clear(), wm_main_playanim_intern(), wm_operatortype_free_macro(), WM_xr_action_set_destroy(), wm_xr_actionmap_binding_clear(), WM_xr_actionmap_clear(), wm_xr_actionmap_item_clear(), WM_xr_actionmaps_clear(), WM_xr_active_action_set_set(), wm_xr_session_surface_free_data(), workspace_add_invoke(), workspace_free_data(), ww_close_zstd(), AnimKeylist::~AnimKeylist(), and GPUCodegen::~GPUCodegen().
Create a generic list node containing link to provided data.
Definition at line 842 of file listbase.c.
References data, LinkData::data, MEM_callocN, and NULL.
Referenced by action_get_item_transforms(), armature_flip_names_exec(), BKE_appdir_app_templates(), BKE_id_ordered_list(), BKE_image_get_tile_info(), BM_mesh_region_match(), colormanage_load_config(), count_images(), drw_deferred_shader_add(), DRW_fluid_ensure_flags(), DRW_fluid_ensure_range_field(), DRW_smoke_ensure(), DRW_smoke_ensure_coba_field(), DRW_smoke_ensure_velocity(), ED_objects_recalculate_paths_selected(), ED_objects_recalculate_paths_visible(), ED_outliner_selected_objects_get(), fmodifier_subpanel_register(), frame_cache_add(), GPUCodegen::generate_uniform_buffer(), gizmo_prepare_drawing(), gpencil_interpolate_seq_exec(), gpencil_modifier_subpanel_register(), gpencil_stroke_arrange_exec(), gpencil_stroke_pair_table(), gpu_batch_presets_register(), image_camera_background_texture_get(), modifier_subpanel_register(), nla_buttons_register(), outliner_find_selected_collections(), outliner_find_selected_objects(), pose_flip_names_exec(), selected_objects_get(), SEQ_proxy_rebuild_context(), shaderfx_subpanel_register(), sigbus_handler_add(), task_mempool_iter_tls_func(), ui_button_group_add_but(), ui_imageuser_pass_menu(), and undofont_from_editfont().
Inserts vnewlink immediately following vprevlink in listbase. Or, if vprevlink is NULL, puts vnewlink at the front of the list.
Definition at line 301 of file listbase.c.
References ListBase::first, ListBase::last, Link::next, NULL, and Link::prev.
Referenced by _bm_select_history_store_after_notest(), action_groups_add_channel(), blender::ed::space_node::add_reroute_insert_socket_link(), BKE_collection_move(), BKE_gpencil_layer_addnew(), BKE_gpencil_stroke_uniform_subdivide(), BKE_key_sort(), BKE_nlastrips_sort_strips(), BKE_nlatrack_add(), BLI_listbase_link_move(), BLI_listbases_swaplinks(), blo_do_versions_260(), blo_do_versions_280(), blo_do_versions_300(), BM_edgeloop_expand(), buffer_from_list_inputs_sort(), cmp_node_image_add_pass_output(), collection_duplicate_recursive(), constraint_move_down_exec(), do_version_bbone_scale_fcurve_fix(), do_versions_add_region_if_not_found(), do_versions_after_linking_300(), do_versions_area_ensure_tool_region(), dupliob_move_down_exec(), ED_clip_has_properties_region(), ED_gpencil_layer_frames_duplicate(), ED_keylist_add_or_update_column(), ED_masklayer_frames_duplicate(), ED_object_gpencil_modifier_copy(), ED_object_gpencil_modifier_move_down(), ED_object_modifier_copy(), ED_object_shaderfx_move_down(), face_map_move_exec(), file_execute_region_ensure(), file_tool_props_region_ensure(), file_ui_region_ensure(), generate_arc_from_point_to_point(), generate_semi_circle_from_point_to_point(), gpencil_add_move_points(), gpencil_curve_extrude_points(), gpencil_layer_copy_exec(), gpencil_stroke_arrange_exec(), id_sort_by_name(), IDP_InsertToGroup(), image_add_view(), lineart_shadow_edge_cut(), mask_layer_move_exec(), ml_addview_cb(), nlaedit_add_transition_exec(), nlaedit_split_strip_actclip(), blender::ed::space_node::node_output_file_move_active_socket_exec(), blender::ed::space_node::ntree_socket_move_exec(), outliner_extract_children_from_subtree(), rearrange_island_down(), rebuild_pose_bone(), rule_move_down_exec(), scanfill_preprocess_self_isect(), shaderfx_copy_exec(), skin_armature_create_exec(), state_move_down_exec(), strip_modifier_move_exec(), target_move_down_exec(), text_has_properties_region(), txt_duplicate_line(), txt_move_lines(), ui_but_change_type(), ui_but_update_from_old_block(), UI_panel_begin(), uiItemFullR(), and wm_event_add_ex().
Inserts vnewlink immediately preceding vnextlink in listbase. Or, if vnextlink is NULL, puts vnewlink at the end of the list.
Definition at line 340 of file listbase.c.
References ListBase::first, ListBase::last, Link::next, NULL, and Link::prev.
Referenced by action_groups_add_channel(), add_hook_object(), add_marker_to_cfra_elem(), addedgetoscanvert(), area_add_window_regions(), bezt_add_to_cfra_elem(), BKE_collection_move(), BKE_curve_bevelList_make(), BKE_gpencil_curve_delete_tagged_points(), BKE_gpencil_frame_addcopy(), BKE_gpencil_frame_addnew(), BKE_gpencil_stroke_delete_tagged_points(), BKE_image_add_tile(), BKE_nlastrips_add_strip(), BKE_nlastrips_clear_metastrip(), BKE_nlastrips_make_metas(), BLI_listbase_link_move(), blo_do_versions_250(), blo_do_versions_280(), blo_do_versions_pre250(), BM_edgeloop_expand(), colormanage_colorspace_add(), constraint_move_up_exec(), do_version_action_editor_properties_region(), dupliob_move_up_exec(), ED_clip_has_channels_region(), ED_clip_has_preview_region(), ED_keylist_add_or_update_column(), ED_object_gpencil_modifier_move_up(), ED_object_modifier_add(), ED_object_shaderfx_move_up(), face_map_move_exec(), generate_arc_from_point_to_point(), gpencil_layer_copy_exec(), gpencil_stroke_arrange_exec(), gpencil_stroke_join_exec(), gpencil_update_on_write_frame_cb(), gpencil_update_on_write_layer_cb(), gpencil_update_on_write_stroke_cb(), hud_region_add(), id_sort_by_name(), insert_seam_vert_array(), lineart_edge_cut(), lineart_shadow_edge_cut(), mask_layer_move_exec(), blender::ed::space_node::node_output_file_move_active_socket_exec(), blender::ed::space_node::node_sort(), blender::ed::space_node::ntree_socket_move_exec(), ntreeInsertSocketInterface(), rearrange_island_bottom(), rearrange_island_top(), rearrange_island_up(), rule_move_up_exec(), scanfill(), state_move_up_exec(), strip_modifier_move_exec(), target_move_up_exec(), txt_insert_buf(), txt_move_lines(), txt_split_curline(), verify_socket_template_list(), voronoi_insertEvent(), and wm_keymap_patch().
Insert a link in place of another, without changing its position in the list.
Puts vnewlink
in the position of vreplacelink
, removing vreplacelink
.
vreplacelink
must be in the list.vnewlink
must not be in the list. Referenced by IDP_ReplaceGroupInGroup(), IDP_ReplaceInGroup_ex(), IDP_SyncGroupTypes(), IDP_SyncGroupValues(), and lib_override_library_resync().
void* BLI_listbase_bytes_find | ( | const ListBase * | listbase, |
const void * | bytes, | ||
size_t | bytes_size, | ||
int | offset | ||
) |
Finds the first element of listbase which contains the specified bytes at the specified offset, returning NULL if not found.
Referenced by BKE_lib_override_library_property_operation_find(), make_override_library_exec(), and workspace_relation_ensure_updated().
void* BLI_listbase_bytes_rfind | ( | const ListBase * | listbase, |
const void * | bytes, | ||
size_t | bytes_size, | ||
int | offset | ||
) |
Finds the last element of listbase which contains the specified bytes at the specified offset, returning NULL if not found.
BLI_INLINE void BLI_listbase_clear | ( | struct ListBase * | lb | ) |
Definition at line 273 of file BLI_listbase.h.
References ListBase::first, and ListBase::last.
Referenced by action_copy_data(), action_groups_remove_channel(), blender::ed::space_node::add_reroute_exec(), ANIM_animdata_freelist(), ANIM_driver_vars_copybuf_free(), ANIM_fcurves_copybuf_free(), AnimKeylist::AnimKeylist(), bchunk_list_new(), BKE_action_groups_reconstruct(), BKE_animdata_copy(), BKE_appdir_app_templates(), BKE_area_region_copy(), BKE_area_region_panels_free(), BKE_autotrack_context_step(), BKE_autotrack_context_sync(), BKE_blender_user_menu_item_free_list(), BKE_collection_blend_read_data(), BKE_constraint_targets_get(), BKE_constraints_copy_ex(), BKE_curve_bevelList_free(), BKE_defgroup_copy_list(), BKE_fcurves_copy(), BKE_fcurves_free(), BKE_freestyle_config_copy(), BKE_freestyle_config_init(), BKE_gpencil_frame_copy_strokes(), BKE_gpencil_frame_duplicate(), BKE_gpencil_free_strokes(), BKE_gpencil_layer_duplicate(), BKE_gpencil_layer_mask_copy(), BKE_id_ordered_list(), BKE_layer_collection_doversion_2_80(), BKE_linestyle_modifier_list_color_ramps(), BKE_main_free(), BKE_material_copybuf_copy(), BKE_modifier_blend_read_data(), BKE_nla_tracks_copy(), BKE_nla_tracks_free(), BKE_nlastrip_copy(), BKE_nlatrack_copy(), BKE_node_clipboard_clear(), BKE_nurbList_free(), BKE_object_copy_particlesystem(), BKE_object_copy_particlesystems(), BKE_object_facemap_copy_list(), BKE_particle_system_blend_read_data(), BKE_pose_blend_read_data(), BKE_ptcache_copy_list(), BKE_reports_clear(), BKE_shaderfx_copy(), BKE_spacedata_copylist(), BKE_text_free_lines(), BKE_text_load_ex(), BKE_tracking_clipboard_free(), BKE_tracking_copy(), BKE_undosys_stack_clear(), BKE_vfontdata_char_copy(), BKE_view_layer_blend_read_data(), BKE_view_layer_copy_data(), blf_font_fill(), BLI_args_create(), BLI_array_store_clear(), BLI_dlrbTree_free(), BLI_freelist(), BLI_freelistN(), BLI_scanfill_calc_ex(), BLI_scanfill_end(), BLI_scanfill_end_arena(), BLI_threadpool_init(), blo_do_versions_270(), blo_do_versions_280(), bm_face_create__internal(), BM_mesh_region_match(), bm_uuidwalk_clear(), bm_uuidwalk_init(), bm_uuidwalk_pass_add(), bmesh_edit_end(), BMW_init(), BPY_rna_props_clear_all(), buttons_texture_users_from_context(), cache_file_blend_read_data(), cache_file_blend_write(), camera_copy_data(), collection_blend_write(), collection_copy_data(), colormanage_free_config(), console_duplicate(), copy_fmodifiers(), copy_image_packedfiles(), copy_particle_edit(), count_images(), ctx_data_base_collection_get(), ctx_data_collection_get(), curve_copy_data(), curve_to_mesh_eval_ensure(), direct_link_area(), direct_link_id_common(), direct_link_pointcache(), direct_link_region(), do_version_area_change_space_to_space_action(), do_versions_nodetree_multi_file_output_format_2_62_1(), drw_drawdata_unlink_dupli(), drw_registered_engines_free(), DRW_smoke_init(), ED_area_newspace(), ED_armature_ebone_listbase_free(), ED_curve_join_objects_exec(), ED_gpencil_anim_copybuf_free(), ED_image_filesel_detect_sequences(), ED_keylist_runtime_init_listbase(), ED_node_tree_start(), ED_spreadsheet_context_path_clear(), ED_undo_gpencil_step(), EEVEE_world_default_get(), fcurve_copy_driver(), filelist_cache_clear(), filelist_cache_free(), filelist_cache_init(), filelist_direntryarr_free(), filelist_intern_free(), filelist_readjob_startjob(), free_palettes(), freeData(), gpencil_copy_structure_for_eval(), gpencil_stroke_pair_table(), gpf_clear_all_strokes(), graphkeys_click_insert_exec(), greasepencil_copy_data(), group_sort_exec(), group_verify_socket_list(), image_blend_read_data(), image_blend_write(), image_copy_data(), image_undosys_step_encode_init(), blender::deg::SequenceBackup::init_from_sequence(), init_iconfile_list(), knife_empty_list(), lib_override_library_main_resync_on_library_indirect_level(), lineart_bounding_areas_connect_new(), lineart_destroy_render_data_keep_init(), lineart_main_load_geometries(), linestyle_copy_data(), mask_clipboard_free_ex(), mask_copy_data(), material_blend_read_data(), material_blend_write(), material_copy_data(), metaball_blend_read_data(), metaball_blend_write(), blender::ed::sculpt_paint::min_distance_edit::min_distance_edit_invoke(), movieclip_blend_read_data(), blender::nodes::node_composite_cryptomatte_cc::node_copy_cryptomatte(), blender::bke::node_copy_with_mapping(), node_group_input_update(), node_group_output_update(), nodeRemoveAllSockets(), ntree_copy_data(), ntreeBlendReadData(), object_copy_data(), outliner_collections_children_sort(), outliner_duplicate(), outliner_sort(), OVERLAY_edit_uv_init(), panel_list_copy(), particle_settings_blend_read_lib(), PE_create_particle_edit(), plain_text_helper(), pose_copy_exec(), property_search_all_tabs(), psys_thread_create_path(), ptcache_copy(), pyrna_struct_getattro(), radial_control_invoke(), random_chunk_mutate_helper(), random_data_mutate_helper(), refresh_socket_list(), region_copylist(), blender::deg::SequenceBackup::reset(), RNA_create(), RNA_def_struct_ptr(), screen_area_spacelink_add(), screen_data_copy(), sculpt_undosys_step_encode_init(), SEQ_clipboard_free(), seq_dupli(), SEQ_modifier_clear(), seq_read_lib_cb(), SEQ_relations_sequence_free_anim(), sequencer_meta_separate_exec(), sort_linked_ids(), split_main_newid(), spreadsheet_duplicate(), strip_modifier_copy_exec(), TEST(), testbuffer_list_free(), testchunk_list_free(), text_copy_data(), text_init_data(), tracking_dopesheet_free(), tracking_objects_copy(), tracking_plane_tracks_copy(), tracking_tracks_copy(), txt_from_buf_for_undo(), uhandle_free_list(), ui_apply_but_funcs_after(), UI_block_begin(), UI_block_layout_resolve(), ui_block_new_button_group(), ui_but_extra_operator_icons_free(), ui_imageuser_pass_menu(), ui_textedit_undo_stack_create(), updateDuplicateActionConstraintSettings(), userdef_free_addons(), userdef_free_keyconfig_prefs(), userdef_free_keymaps(), window_manager_blend_read_data(), wm_gizmogroup_free(), wm_keymap_copy(), wm_window_match_init(), wm_window_match_replace_by_file_wm(), wm_xr_actionmap_binding_copy(), wm_xr_actionmap_copy(), wm_xr_actionmap_item_copy(), world_blend_read_data(), world_blend_write(), world_copy_data(), write_area(), AnimKeylist::~AnimKeylist(), and Freestyle::BlenderStrokeRenderer::~BlenderStrokeRenderer().
int BLI_listbase_count | ( | const struct ListBase * | listbase | ) |
Returns the number of elements in listbase.
Referenced by action_create(), add_default_keyingset_exec(), add_empty_ks_path_exec(), add_keyingset_button_exec(), animdata_filter_ds_sorted_bases(), animviz_depsgraph_build(), armature_deform_coords_impl(), armature_fill_bones_exec(), armdef_get_tars(), asset_metadata_tag_add(), autotrack_context_init_tracks_for_clip(), BIF_countTransformOrientation(), BKE_animsys_update_driver_array(), BKE_asset_metadata_read(), BKE_asset_metadata_tag_remove(), BKE_cachefile_add_layer(), BKE_collection_new_name_get(), BKE_collision_objects_create(), BKE_fcurve_pathcache_create(), BKE_freestyle_lineset_add(), BKE_gpencil_vgroup_remove(), BKE_id_reorder(), BKE_image_add_renderslot(), BKE_image_backup_render(), BKE_image_ensure_viewer_views(), BKE_image_multilayer_index(), BKE_image_reassign_tile(), BKE_image_remove_renderslot(), BKE_image_signal(), BKE_keyblock_add(), BKE_mask_layer_evaluate_animation(), BKE_maskrasterize_handle_init(), BKE_movieclip_free_gputexture(), BKE_nlatrack_add(), BKE_node_clipboard_validate(), BKE_object_defgroup_count(), BKE_object_defgroup_flip_map(), BKE_object_defgroup_flip_map_single(), BKE_object_defgroup_index_map_create(), BKE_object_facemap_add_name(), BKE_object_facemap_index_map_create(), BKE_pose_add_group(), BKE_pose_pchan_index_rebuild(), BKE_scene_validate_setscene(), BKE_tracking_object_add(), BKE_tracking_reconstruction_context_new(), BKE_undosys_print(), BKE_undosys_stack_clear(), BLF_dir_get(), BLI_array_store_is_valid(), BLI_task_parallel_listbase(), blo_do_versions_270(), blo_do_versions_pre250(), blo_split_main(), BM_log_length(), BM_mesh_bm_from_me(), BM_mesh_bm_to_me(), bm_mesh_region_match_pair(), boid_brain(), bpy_bmeditselseq_length(), BPY_driver_exec(), build_sequential(), buttons_texture_user_node_add(), buttons_texture_user_property_add(), buttons_texture_user_socket_property_add(), calc_duplicate_actnurb(), console_scrollback_limit(), constraint_ops_extra_draw(), copy_particle_systems_to_object(), blender::io::alembic::ABCNurbsWriter::create_alembic_objects(), ctx_data_list_count(), curve_split_exec(), curve_surf_to_softbody(), data_transfer_layersmapping_vgroups(), data_transfer_layersmapping_vgroups_multisrc_to_dst(), do_outliner_keyingset_editop(), driver_compile_simple_expr_impl(), driver_evaluate_simple_expr(), DRW_engine_register(), drw_mesh_weight_state_extract(), DRW_view_data_create(), ED_gpencil_join_objects_exec(), ED_gpencil_layers_with_new_enum_itemf(), ED_gpencil_select_stroke_segment(), ED_image_slot_cycle(), ED_mask_draw_frames(), ED_node_tree_depth(), ED_object_data_xform_create_ex(), ED_object_gpencil_modifier_move_to_index(), ED_object_modifier_move_to_index(), ED_object_shaderfx_move_to_index(), ED_text_to_object(), ED_transverts_create_from_obedit(), ED_vgroup_array_copy(), ED_wpaint_mirror_vgroup_ensure(), EEVEE_motion_blur_hair_data_get(), evaluate_fcurve_ex(), face_map_move_exec(), filelist_readjob_append_entries(), find_active_strip_from_listbase(), blender::ed::spreadsheet::find_fields_to_evaluate(), generate_geometry(), gpencil_frame_is_equal(), gpencil_generate_weights_poll(), gpencil_modifier_apply_exec(), gpencil_modifier_ops_extra_draw(), gpencil_shaderfx_ops_extra_draw(), gpencil_vertex_group_normalize_all_exec(), gpu_node_graph_finalize_uniform_attrs(), gpu_select_pick_cache_end(), graphkeys_euler_filter_exec(), group_sort_exec(), image_free_tile(), image_init_multilayer_multiview(), image_load_image_file(), image_load_movie_file(), image_num_viewfiles(), image_save_single(), blender::io::obj::obj_importer_test::import_and_check(), ipo_to_animdata(), knife_make_face_cuts(), layer_collection_sync(), layer_eval_view_layer(), lib_link_scenes_check_set(), blender::nodes::NodeDeclaration::matches(), modifier_apply_exec_ex(), modifier_ops_extra_draw(), move_vertex_group_names_to_object_data(), multiresbake_startjob(), nla_action_draw_keyframes(), nla_actionclip_draw_markers(), nla_draw_strip(), nlasnapshot_from_action(), blender::ed::space_node::node_draw_sockets(), blender::nodes::node_shader_map_range_cc::node_shader_update_map_range(), blender::ed::space_node::node_sort(), nodePositionRelative(), ntreeCompositOutputFileRemoveActiveSocket(), object_fmap_remove_edit_mode(), object_fmap_remove_object_mode(), object_select_random_exec(), outliner_collections_children_sort(), outliner_sort(), paint_2d_new_stroke(), paint_sample_color(), paint_weight_gradient_exec(), palette_color_add_exec(), palette_join_exec(), palette_sort_exec(), pose_groups_menu_invoke(), pose_select_same_group(), pose_visual_transform_apply_exec(), poselib_add_exec(), poselib_preview_handle_event(), blender::io::alembic::AbcCurveReader::read_mesh(), blender::io::usd::USDCurvesReader::read_mesh(), blender::io::usd::USDNurbsReader::read_mesh(), render_view_add_exec(), repeat_history_invoke(), seq_proxy_context_count(), SEQ_render_give_ibuf(), sequencer_paste_exec(), set_constraint_nth_target(), similar_vert_select_exec(), blender::ed::space_node::snode_autoconnect(), spacedata_cleanup_exec(), blender::ed::spreadsheet::spreadsheet_get_display_geometry_set(), blender::bke::idprop::tests::TEST(), TEST(), blender::bke::tests::TEST_F(), tile_remove_exec(), blender::io::obj::OBJCurve::total_splines(), txt_sel_set(), ui_imageuser_layer_menu_step(), ui_imageuser_view_menu_multiview(), ui_imageuser_view_menu_rr(), ui_litem_layout_split(), UI_panel_list_matches_data(), ui_selectcontext_begin(), uiTemplateCacheFileLayers(), update_active_strip(), update_active_track(), blender::bke::node_field_inferencing::update_field_inferencing(), verify_active_keyingset(), version_geometry_nodes_set_position_node_offset(), vgroup_do_remap(), vgroup_duplicate(), vgroup_init_remap(), vgroup_normalize_all(), weight_paint_sample_enum_itemf(), weight_sample_invoke(), WM_msg_publish_with_key(), wm_msg_rna_repr(), wm_msg_static_repr(), WM_xr_action_binding_create(), WM_xr_action_create(), wm_xr_controller_aim_draw(), wm_xr_session_controller_data_update(), WM_xr_session_state_controller_aim_location_get(), WM_xr_session_state_controller_aim_rotation_get(), WM_xr_session_state_controller_grip_location_get(), WM_xr_session_state_controller_grip_rotation_get(), wm_xr_session_surface_offscreen_ensure(), wpaint_stroke_test_start(), and zstd_write_seekable_frames().
int BLI_listbase_count_at_most | ( | const struct ListBase * | listbase, |
int | count_max | ||
) |
Returns the number of elements in listbase, up until (and including count_max)
Referenced by BKE_image_multiview_index(), BKE_image_render_write(), BKE_image_signal(), BKE_layer_collection_doversion_2_80(), BKE_layer_collection_sync(), BKE_palette_color_remove(), bm_vert_connect_select_history(), buttons_texture_context_compute(), blender::compositor::ImageNode::convert_to_operations(), do_versions_after_linking_280(), blender::ed::space_node::draw_background_color(), EDBM_select_pick(), image_load_image_file(), image_load_movie_file(), image_save_single(), knife_cut_face(), nlaedit_swap_exec(), pose_paste_exec(), RE_layers_have_name(), RE_WriteRenderViewsMovie(), render_result_views_new(), seq_render_movie_strip(), uiblock_layer_pass_buttons(), and WM_drag_get_item_name().
BLI_INLINE bool BLI_listbase_equal | ( | const struct ListBase * | a, |
const struct ListBase * | b | ||
) |
Equality check for ListBase.
This only shallowly compares the ListBase itself (so the first/last pointers), and does not do any equality checks on the list items.
Definition at line 284 of file BLI_listbase.h.
References Freestyle::a, usdtokens::b(), and NULL.
Return a ListBase representing the entire list the given Link is in.
Definition at line 761 of file listbase.c.
References ListBase::first, ListBase::last, next, and NULL.
Referenced by driver_variable_unique_name(), and TEST().
BLI_INLINE bool BLI_listbase_is_empty | ( | const struct ListBase * | lb | ) |
Definition at line 269 of file BLI_listbase.h.
References ListBase::first.
Referenced by action_groups_add_channel(), action_move_fcurves_by_basepath(), action_to_animato(), blender::deg::DepsgraphRelationBuilder::add_particle_forcefield_relations(), adduplicateflagNurb(), ANIM_driver_vars_can_paste(), ANIM_driver_vars_copy(), ANIM_fcurve_delete_from_animdata(), ANIM_remove_empty_action_from_animdata(), ANIM_set_active_channel(), ANIM_validate_keyingset(), animchannels_group_channels(), animchannels_ungroup_exec(), animdata_filter_dopesheet_ob(), animdata_filter_dopesheet_scene(), animdata_filter_ds_cachefile(), animdata_filter_ds_gpencil(), animdata_filter_ds_keyanim(), animdata_filter_ds_linestyle(), animdata_filter_ds_material(), animdata_filter_ds_modifiers(), animdata_filter_ds_movieclip(), animdata_filter_ds_nodetree_group(), animdata_filter_ds_obanim(), animdata_filter_ds_obdata(), animdata_filter_ds_particles(), animdata_filter_ds_scene(), animdata_filter_ds_texture(), animdata_filter_ds_world(), animdata_filter_gpencil_data(), animdata_filter_gpencil_layers_data(), animdata_filter_mask(), animfilter_act_group(), animfilter_nla_controls(), animviz_motionpath_compute_range(), arg_handle_load_last_file(), armature_flip_names_exec(), armature_switch_direction_exec(), armature_transform_recurse(), autotrack_context_reduce(), bake_objects_check(), bchunk_list_append_data(), bchunk_list_fill_from_array(), bchunk_list_from_data_merge(), BKE_action_has_single_frame(), BKE_animadata_fcurve_find_by_rna_path(), BKE_animdata_id_is_animated(), BKE_animsys_evaluate_all_animation(), BKE_animsys_nla_remap_keyframe_values(), BKE_blendfile_read_from_memfile(), BKE_bpath_list_free(), BKE_collection_is_empty(), BKE_curve_minmax(), BKE_displist_fill(), BKE_gpencil_frame_delete_laststroke(), BKE_gpencil_free_strokes(), BKE_gpencil_update_layer_transforms(), BKE_gpencil_vgroup_remove(), BKE_image_has_anim(), BKE_image_has_packedfile(), BKE_key_evaluate_object_ex(), BKE_layer_collection_sync(), BKE_main_collections_parent_relations_rebuild(), BKE_mask_clipboard_is_empty(), BKE_mball_minmax(), BKE_mesh_copy_parameters_for_eval(), BKE_object_defgroup_index_map_create(), BKE_object_defgroup_validmap_get(), BKE_object_eval_transform_all(), BKE_object_facemap_index_map_create(), BKE_object_modifier_stack_copy(), BKE_object_moves_in_time(), BKE_object_shapekey_remove(), BKE_palette_color_remove(), BKE_palette_is_empty(), BKE_pose_eval_init(), BKE_pose_remove_group(), BKE_tracking_clipboard_has_tracks(), BKE_undosys_stack_has_undo(), BKE_workspace_instance_hook_free(), BLI_scanfill_calc_ex(), BLI_task_parallel_listbase(), BLI_threadpool_end(), blo_do_versions_250(), blo_do_versions_260(), blo_do_versions_270(), blo_do_versions_280(), blo_do_versions_userdef(), BLO_read_list_cb(), blo_split_main(), BLO_update_defaults_workspace(), bm_loop_path_build_step(), bm_mesh_elems_select_get_n__internal(), BM_select_history_map_create(), bm_uuidwalk_facestep_begin(), bm_uuidwalk_facestep_free(), bmo_grid_fill_exec(), bmo_weld_verts_exec(), bpath_list_restore(), blender::deg::DepsgraphRelationBuilder::build_action(), blender::deg::DepsgraphNodeBuilder::build_animdata(), blender::deg::DepsgraphRelationBuilder::build_animdata_curves(), blender::deg::DepsgraphRelationBuilder::build_object_pointcache(), blender::ed::outliner::TreeDisplayOverrideLibraryHierarchies::buildTree(), blender::ed::outliner::TreeDisplayIDOrphans::buildTree(), change_frame(), blender::nodes::node_composite_switchview_cc::cmp_node_switch_view_sanitycheck(), collision_detect(), console_main_region_draw(), copy_frame_to_eval_ex(), copy_particle_systems_poll(), copy_to_selected_button(), CryptomatteSession::CryptomatteSession(), ctx_data_base_collection_get(), curve_split_exec(), data_transfer_layersmapping_vgroups(), delete_exec(), do_render_strip_seqbase(), do_version_workspaces_after_lib_link(), drawmeta_contents(), drawSnapping(), driver_variables_copy(), DRW_cache_lattice_wire_get(), duplicate_exec(), duplicate_particle_systems_poll(), ED_action_fcurve_ensure(), ED_area_newspace(), ED_armature_ebone_listbase_copy(), ED_asset_library_reference_to_rna_enum_itemf(), ed_editcurve_extrude(), ED_gpencil_anim_copybuf_copy(), ED_gpencil_anim_copybuf_paste(), ED_gpencil_join_objects_exec(), ED_gpencil_session_active(), ED_image_should_save_modified(), ED_markers_draw(), ED_mesh_active_dvert_get_em(), ED_mesh_join_objects_exec(), blender::ed::space_node::ed_node_link_conditions(), ed_preview_draw_rect(), ED_region_message_subscribe(), ED_render_scene_update(), ED_scene_view_layer_delete(), ED_spreadsheet_get_current_id(), ED_view3d_cursor_snap_deactive(), ED_view3d_cursor_snap_state_get(), ED_wpaint_ensure_data(), EDBM_mesh_load_ex(), EDBM_select_pick(), edbm_select_ungrouped_poll(), edbm_vert_connect_path_exec(), EEVEE_renderpasses_init(), evaluate_curve_type_object(), filelist_direntryarr_free(), filelist_readjob_asset_library(), filelist_readjob_do(), filelist_readjob_free(), filelist_readjob_main_assets(), folderlist_clear_next(), GPUCodegen::generate_attribs(), generate_geometry(), GPUCodegen::generate_graphs(), GPUCodegen::generate_resources(), GPUCodegen::generate_uniform_buffer(), get_best_nearest_fcurve_vert(), blender::nodes::get_or_create_identifier_map(), get_visible_nla_strips(), gizmomap_prepare_drawing(), gizmos_draw_list(), gpencil_layer_cache_add(), gpencil_layer_to_curve(), gpencil_primitive_interaction_end(), gpencil_strokes_paste_exec(), gpencil_strokes_paste_poll(), gpencil_traverse_update_cache_ex(), gpencil_undo_push(), gpencil_vertex_group_poll(), gpencil_vertex_group_weight_poll(), GPU_uniformbuf_create_from_list(), graph_draw_driver_debug(), graph_draw_driver_settings_panel(), graphkeys_clear_ghostcurves_exec(), graphkeys_viewall(), image_not_packed_poll(), IMB_exr_multilayer_convert(), imb_thread_cache_get_tile(), blender::ed::asset::index::init_value_from_file_indexer_entry(), initialize_chain(), blender::deg::SequenceBackup::isEmpty(), lattice_select_ungrouped_exec(), layer_collection_resync_create_recurse(), lib_override_library_resync(), link_glob_list(), make_duplis_particle_system(), make_object_duplilist_real(), mesh_new_from_mball_object(), minmax_armature(), modifyMesh(), move_to_collection_invoke(), move_to_collection_menus_items(), nlaedit_add_tracks_empty(), nlaedit_disable_tweakmode(), nlaedit_enable_tweakmode_exec(), nlaedit_swap_exec(), blender::ed::space_node::node_clipboard_paste_exec(), object_defgroup_remove_common(), object_deforms_in_time(), object_modifier_remove(), object_select_linked_exec(), outliner_add_object_contents(), outliner_draw_hierarchy_lines_recursive(), outliner_drop_insert_find(), outliner_filter_subtree(), outliner_find_item_at_y(), outliner_item_openclose(), outliner_walk_right(), OVERLAY_cache_populate(), OVERLAY_camera_cache_populate(), OVERLAY_relationship_lines(), override_remove_button_exec(), panel_type_context_poll(), paste_animedit_keys(), PE_create_particle_edit(), peelObjectsTransform(), pose_clear_transform_generic_exec(), pose_eval_cleanup_common(), pose_propagate_exec(), poseAnim_mapping_get(), poselib_preview_get_next(), posttrans_fcurve_clean(), psys_make_temp_pointcache(), pyop_call(), pyrna_register_class(), rearrange_animchannel_flatten_islands(), rearrange_animchannel_islands(), rearrange_nla_channels(), recent_files_menu_draw(), region_position_is_over_marker(), removeSnapPoint(), render_result_new(), repeat_history_poll(), sculpt_undosys_step_encode(), separate_exec(), SEQ_add_movie_reload_if_needed(), SEQ_animation_backup_original(), seq_animation_curves_exist(), SEQ_animation_duplicate(), SEQ_animation_restore_original(), seq_draw_sfra_efra(), SEQ_render_give_ibuf(), seq_speed_factor_set(), SEQ_time_sequence_get_fps(), SEQ_time_update_meta_strip_range(), SEQ_transform_translate_sequence(), sequencer_copy_animation(), sequencer_delete_invoke(), sequencer_export_subtitles_exec(), sequencer_main_clamp_view(), sequencer_meta_toggle_exec(), sequencer_paste_animation(), blender::ed::space_node::snode_autoconnect(), blender::bke::tests::TEST(), text_from_buf(), txt_to_buf(), ui_block_bounds_calc(), UI_block_layout_needs_resolving(), ui_block_new_button_group(), UI_block_update_from_old(), ui_but_update_from_old_block(), ui_button_group_add_but(), UI_context_copy_to_selected_list(), ui_context_selected_bones_via_pose(), ui_handle_panel_header(), ui_handle_view_items_hover(), ui_item_estimate(), ui_item_layout(), blender::ed::space_node::ui_node_sock_name(), UI_panel_header_buttons_end(), ui_popup_block_remove(), ui_region_handler(), ui_selectcontext_begin(), undosys_stack_validate(), update_pinned_context_path_if_outdated(), blender::ed::spreadsheet::use_row_filters(), vert_select_ungrouped_exec(), vertex_group_poll_ex(), vpaint_proj_dm_map_cosnos_update(), widget_draw_extra_icons(), WM_check(), wm_clear_default_size(), wm_drags_check_ops(), wm_event_do_region_handlers(), wm_event_drag_and_drop_test(), wm_event_is_ignorable_key_press(), WM_gizmogroup_keymap_template_select_ex(), WM_gizmomap_draw(), wm_gizmomap_free_data(), wm_handler_operator_call(), wm_homefile_read_ex(), wm_init_reports(), WM_keymap_poll(), wm_msg_rna_update_by_id(), WM_msgbus_clear_by_owner(), wm_operator_reports(), wm_surfaces_free(), wm_window_match_do(), and workspace_free_data().
void void BLI_INLINE bool BLI_listbase_is_single | ( | const struct ListBase * | lb | ) |
Utility functions to avoid first/last references inline all over.
Definition at line 265 of file BLI_listbase.h.
References ListBase::first, and ListBase::last.
Referenced by add_fmodifier(), bake_exec(), bake_startjob(), BKE_image_remove_tile(), BLO_main_validate_libraries(), bm_elem_from_knife_vert(), do_version_layers_to_collections(), ED_screen_draw_edges(), ED_workspace_delete(), evaluate_driver_sum(), get_best_nearest_fcurve_vert(), gpencil_stroke_separate_exec(), move_to_collection_exec(), paste_animedit_keys(), pe_get_current(), render_view_open(), scanfill_preprocess_self_isect(), tile_remove_poll(), UI_panel_header_buttons_end(), wm_handler_fileselect_do(), WM_toolsystem_update_from_context_view3d(), and WM_window_open().
Reinsert vlink relative to its current position but offset by step. Doesn't move item if new position would exceed list (could optionally move to head/tail).
step | Absolute value defines step size, sign defines direction. E.g pass -1 to move vlink before previous, or 1 to move behind next. |
Definition at line 405 of file listbase.c.
References blender::math::abs(), BLI_assert, BLI_findindex(), BLI_insertlinkafter(), BLI_insertlinkbefore(), BLI_remlink(), Link::next, and Link::prev.
Referenced by BKE_freestyle_module_move(), BKE_linestyle_alpha_modifier_move(), BKE_linestyle_color_modifier_move(), BKE_linestyle_geometry_modifier_move(), BKE_linestyle_thickness_modifier_move(), BLI_listbase_move_index(), cachefile_layer_move_exec(), constraint_copy_exec(), ED_object_constraint_move_to_index(), filter_reorder(), fmodifier_reorder(), FRS_move_active_lineset(), gpencil_layer_mask_move_exec(), gpencil_layer_move_exec(), gpencil_stroke_arrange_exec(), group_move_exec(), palette_color_move_exec(), poselib_move_exec(), and vgroup_move_exec().
Move the link at the index from to the position at index to.
Definition at line 436 of file listbase.c.
References BLI_findlink(), BLI_listbase_link_move(), and from.
Definition at line 797 of file listbase.c.
References ListBase::first, ListBase::last, Link::next, next, NULL, blender::meshintersect::prev(), and Link::prev.
Referenced by BM_edgeloop_flip(), gpencil_stroke_perimeter_ex(), lineart_chain_connect(), MOD_lineart_smooth_chains(), TEST(), and testbuffer_run_tests().
vlink | Link to make first. |
Referenced by bm_bridge_best_rotation(), bm_edgering_pair_order(), bridge_loop_pair(), and edbm_fill_grid_prepare().
vlink | Link to make last. |
Sorts the elements of listbase into the order defined by cmp (which should return 1 if its first arg should come after its second arg). This uses insertion sort, so NOT ok for large list.
Referenced by BKE_gpencil_layer_mask_sort(), BKE_id_ordered_list(), BKE_image_sort_tiles(), BKE_mask_layer_shape_sort(), BKE_object_insert_ptcache(), BKE_studiolight_init(), bm_uuidwalk_facestep_begin(), buffer_from_list_inputs_sort(), ED_transform_snap_object_project_ray_all(), gizmo_mesh_extrude_draw_prepare(), gpu_node_graph_finalize_uniform_attrs(), gpu_texture_create_tile_array(), image_detect_frame_range(), menu_items_from_all_operators(), menu_items_from_ui_create(), render_result_new_from_exr(), seq_select_seq_from_preview(), TEST(), tracking_dopesheet_channels_sort(), ui_rna_collection_search_update_fn(), vertex_group_sort_exec(), and WIDGETGROUP_xform_shear_draw_prepare().
void void* BLI_listbase_string_or_index_find | ( | const struct ListBase * | listbase, |
const char * | string, | ||
size_t | string_offset, | ||
int | index | ||
) |
Find the first item in the list that matches the given string, or the given index as fallback.
Referenced by TEST(), version_liboverride_rnacollections_insertion_object(), and version_liboverride_rnacollections_insertion_object_constraints().
Swaps vlinka and vlinkb in the list. Assumes they are both already in the list!
Referenced by BKE_keyblock_move(), blo_do_versions_300(), ED_object_modifier_move_down(), and ED_object_modifier_move_up().
void void BLI_listbases_swaplinks | ( | struct ListBase * | listbasea, |
struct ListBase * | listbaseb, | ||
void * | vlinka, | ||
void * | vlinkb | ||
) |
Swaps vlinka and vlinkb from their respective lists. Assumes they are both already in their listbasea!
Moves the entire contents of src onto the end of dst.
Referenced by add_main_to_main(), animdata_filter_dopesheet_ob(), animdata_filter_dopesheet_scene(), animdata_filter_ds_cachefile(), animdata_filter_ds_gpencil(), animdata_filter_ds_keyanim(), animdata_filter_ds_linestyle(), animdata_filter_ds_material(), animdata_filter_ds_modifiers(), animdata_filter_ds_movieclip(), animdata_filter_ds_nodetree_group(), animdata_filter_ds_obanim(), animdata_filter_ds_obdata(), animdata_filter_ds_particles(), animdata_filter_ds_scene(), animdata_filter_ds_texture(), animdata_filter_ds_world(), animdata_filter_gpencil_data(), animdata_filter_mask(), animfilter_act_group(), animfilter_nla_controls(), autotrack_context_reduce(), BKE_action_groups_reconstruct(), BKE_animdata_merge_copy(), BKE_autotrack_context_step(), BKE_maskrasterize_handle_init(), BLI_scanfill_calc_ex(), BLI_voronoi_compute(), BM_faces_join(), bmesh_kernel_split_face_make_edge(), bpy_run_string_impl(), curve_delete_segments(), curve_split_exec(), drw_deferred_shader_add(), duplicate_exec(), ED_curve_join_objects_exec(), ED_gpencil_anim_copybuf_copy(), ED_gpencil_layer_merge(), ED_preview_icon_job(), EDBM_select_interior_faces(), filelist_readjob_append_entries(), filelist_readjob_main_assets_add_items(), filelist_readjob_update(), generate_geometry(), gpencil_duplicate_exec(), gpencil_primitive_interaction_end(), gpencil_stroke_perimeter_ex(), ipo_to_animdata(), join_groups_action_temp(), menu_items_from_all_operators(), rearrange_animchannel_flatten_islands(), separate_exec(), SEQ_animation_backup_original(), SEQ_animation_restore_original(), SEQ_edit_strip_split(), sequencer_add_duplicate_exec(), sequencer_meta_separate_exec(), sequencer_paste_exec(), sort_linked_ids(), splitlist(), task_mempool_iter_tls_reduce(), UI_block_update_from_old(), UI_butstore_update(), wm_add_reports(), wm_handler_fileselect_do(), and wm_macro_invoke_internal().
Moves the entire contents of src at the beginning of dst.
Referenced by ED_gpencil_layer_merge(), generate_geometry(), and gpencil_primitive_interaction_end().
Removes the head from listbase and returns it.
Definition at line 221 of file listbase.c.
References BLI_remlink(), and ListBase::first.
Referenced by apply_dash_for_frame(), BKE_blendfile_write_partial(), BKE_displist_free(), BKE_gpencil_stroke_sample(), BKE_key_free_nolib(), BKE_movieclip_free_gputexture(), BKE_object_free_modifiers(), BKE_object_free_particlesystems(), BKE_object_free_shaderfx(), BKE_ptcache_free_list(), BKE_studiolight_free(), BKE_undosys_type_free_all(), blf_glyph_cache_clear(), blf_glyph_cache_free(), BLO_memfile_free(), BM_mesh_edgeloops_free(), bm_uuidwalk_facestep_end(), CTX_store_free_list(), do_version_free_effects_245(), EDBM_select_interior_faces(), edbm_select_similar_region_exec(), freeMetaElemlist(), get_best_nearest_fcurve_vert(), gpu_batch_presets_exit(), gpu_node_graph_free_nodes(), lineart_chain_connect(), lineart_give_segment(), lineart_give_shadow_segment(), lineart_list_pop_pointer_no_free(), lineart_main_free_adjacent_data(), lineart_mem_destroy(), MOD_lineart_chain_clip_at_border(), MOD_lineart_chain_connect(), MOD_lineart_chain_split_angle(), MOD_lineart_chain_split_for_fixed_occlusion(), OVERLAY_image_free_movieclips_textures(), shapekey_free_data(), UI_block_free(), UI_blocklist_free(), wm_close_and_free(), WM_drag_free_list(), wm_event_do_notifiers(), wm_event_free_all(), WM_event_remove_handlers(), wm_main_playanim_intern(), WM_operator_stack_clear(), wm_xr_session_controller_data_free(), and wm_xr_session_surface_free_data().
Removes the tail from listbase and returns it.
Definition at line 230 of file listbase.c.
References BLI_remlink(), and ListBase::last.
Referenced by drw_deferred_shader_compilation_exec(), and wm_event_free_last().
Removes vlink from listbase. Assumes it is linked into there!
prev
/next
pointers of the removed vlink
. Definition at line 100 of file listbase.c.
References ListBase::first, ListBase::last, Link::next, NULL, and Link::prev.
Referenced by act_markers_make_local_exec(), action_groups_remove_channel(), actkeys_find_list_element_at_position(), ANIM_fcurve_delete_from_animdata(), ANIM_keyingset_info_unregister(), ANIM_remove_driver(), animchannels_delete_exec(), animdata_move_drivers_by_basepath(), apply_dash_for_frame(), bake(), BKE_addon_remove_safe(), BKE_blendfile_library_relocate(), BKE_blendfile_write_partial(), BKE_cachefile_remove_layer(), BKE_callback_remove(), BKE_camera_background_image_remove(), BKE_collection_move(), BKE_curve_bevelList_make(), BKE_freestyle_lineset_delete(), BKE_gpencil_curve_delete_tagged_points(), BKE_gpencil_stroke_delete_tagged_points(), BKE_id_free_ex(), BKE_image_remove_renderslot(), BKE_image_remove_tile(), BKE_key_sort(), BKE_keyconfig_keymap_filter_item(), BKE_libblock_management_main_remove(), BKE_mask_layer_free_list(), BKE_mask_layer_free_shapes(), BKE_mask_layer_remove(), BKE_mask_layer_shape_unlink(), BKE_mask_spline_free_list(), BKE_maskrasterize_handle_init(), BKE_modifier_remove_from_list(), BKE_nla_action_stash(), BKE_nlastrips_clear_metastrip(), BKE_nlastrips_make_metas(), BKE_nlastrips_sort_strips(), BKE_object_handle_data_update(), BKE_object_shapekey_remove(), BKE_packedfile_unpack_image(), BKE_palette_color_remove(), BKE_particle_system_blend_read_lib(), BKE_scene_remove_render_view(), BKE_screen_area_blend_read_lib(), BKE_screen_area_map_blend_read_data(), BKE_screen_remove_double_scredges(), BKE_screen_remove_double_scrverts(), BKE_screen_remove_unused_scredges(), BKE_screen_remove_unused_scrverts(), BKE_studiolight_remove(), BKE_workspace_tool_remove(), BLF_dir_rem(), BLI_array_store_state_remove(), BLI_box_pack_2d_fixedarea(), BLI_freelinkN(), BLI_listbase_link_move(), BLI_listbases_swaplinks(), BLI_pophead(), BLI_poptail(), BLI_remlink_safe(), BLI_scanfill_calc_ex(), BLI_scanfill_calc_self_isect(), blo_do_versions_260(), blo_do_versions_280(), blo_join_main(), BM_faces_join(), BM_mesh_edgeloops_calc_order(), bm_uuidwalk_facestep_free(), BMO_error_pop(), BMO_mesh_selected_remap(), BMW_state_remove(), bpy_prop_py_data_remove(), buffer_from_list_inputs_sort(), blender::ed::outliner::TreeDisplayLibraries::buildTree(), clear_stroke(), cmp_node_image_add_pass_output(), collection_duplicate_recursive(), console_history_cycle_exec(), console_history_free(), console_scrollback_free(), console_scrollback_prompt_end(), constraint_move_down_exec(), constraint_move_up_exec(), create_scene(), cryptomatte_remove(), delete_exec(), delete_metaelems_exec(), delete_nurb(), direct_link_area(), direct_link_library(), DRW_deferred_shader_remove(), DRW_instance_data_list_free(), drw_registered_engines_free(), dupliob_move_down_exec(), dupliob_move_up_exec(), dynamicPaint_freeSurface(), ED_area_newspace(), ED_armature_join_objects_exec(), ed_curve_delete_selected(), ED_gpencil_stroke_join_and_trim(), ED_gpencil_trace_data_to_strokes(), ED_node_tree_pop(), ED_object_gpencil_modifier_apply(), ED_object_gpencil_modifier_move_down(), ED_object_gpencil_modifier_move_up(), ED_object_modifier_copy(), ED_object_shaderfx_move_down(), ED_object_shaderfx_move_up(), ED_region_draw_cb_exit(), ED_region_draw_cb_remove_by_type(), ED_scene_view_layer_delete(), ED_screen_user_menu_item_remove(), ed_surf_delete_selected(), ED_view3d_cursor_snap_deactive(), face_map_move_exec(), fcurve_path_rename(), fcurve_remove(), fcurves_path_remove_fix(), filelist_file_release_entry(), filelist_intern_free_main_files(), flatten_group_do(), frame_cache_touch(), generate_geometry(), get_active_fcurve_channel(), get_best_nearest_fcurve_vert(), gpencil_cutter_dissolve(), gpencil_delete_selected_strokes(), gpencil_delete_temp_stroke_extension(), gpencil_dissolve_selected_curve_points(), gpencil_dissolve_selected_stroke_points(), gpencil_interpolate_free_tagged_strokes(), gpencil_object_modifier_remove(), gpencil_stroke_arrange_exec(), gpencil_stroke_join_exec(), gpencil_stroke_join_islands(), gpencil_stroke_separate_exec(), gpencil_update_on_write_stroke_cb(), gpu_batch_presets_unregister(), gpu_node_graph_prune_unused(), group_verify_socket_list(), id_delete(), id_sort_by_name(), IDP_RemoveFromGroup(), iksolver_clear_data(), iksolver_execute_tree(), image_free_anims(), image_free_packedfiles(), image_update_views_format(), IMB_exr_close(), imb_global_cache_get_tile(), imb_thread_cache_get_tile(), imb_tile_cache_tile_free(), initialize_posetree(), join_groups_action_temp(), knife_split_edge(), layer_collection_objects_sync(), layer_collection_sync(), lib_link_workspace_layout_restore(), lineart_chain_fix_ambiguous_segments(), lineart_edge_cut(), lineart_list_remove_pointer_item_no_free(), make_segment_exec(), make_selection_list_nurb(), mask_layer_move_exec(), mask_shape_key_rekey_exec(), menu_items_from_ui_create(), merge_2_nurb(), MOD_lineart_chain_connect(), MOD_lineart_chain_discard_unused(), MOD_lineart_smooth_chains(), nlaedit_move_down_exec(), nlaedit_move_up_exec(), nlaedit_snap_exec(), nlaedit_strip_at_region_position(), nlaedit_swap_exec(), node_free_node(), blender::ed::space_node::node_group_make_insert_selected(), blender::ed::space_node::node_group_separate_selected(), blender::ed::space_node::node_group_ungroup(), blender::ed::space_node::node_id_remap_cb(), blender::ed::space_node::node_output_file_move_active_socket_exec(), blender::ed::space_node::node_sort(), nodeAddSocket(), nodeRemLink(), nodeRemoveSocketEx(), blender::ed::space_node::ntree_socket_move_exec(), ntreeRemoveSocketInterface(), object_blend_read_data(), object_fmap_remove_edit_mode(), object_fmap_remove_object_mode(), object_remove_particle_system(), object_shaderfx_remove(), outliner_add_id_contents(), outliner_add_object_contents(), outliner_extract_children_from_subtree(), outliner_free_tree_element(), outliner_make_object_parent_hierarchy(), panel_delete(), pose_grab_with_ik_clear(), ptcache_remove_exec(), RE_engine_end_result(), RE_engines_exit(), RE_FreeRender(), read_libblock_undo_restore_at_old_address(), read_libblock_undo_restore_identical(), read_libblock_undo_restore_library(), read_library_linked_ids(), rearrange_animchannel_add_to_islands(), rearrange_island_bottom(), rearrange_island_down(), rearrange_island_top(), rearrange_island_up(), rebuild_pose_bone(), recalcData_nla(), remove_particle_dupliob_exec(), remove_particle_systems_from_object(), remove_particle_target_exec(), render_result_free(), render_result_free_list(), render_result_single_layer_end(), render_result_views_free(), render_result_views_shallowdelete(), repeat_history_exec(), report_delete_exec(), row_filter_remove_exec(), rule_del_exec(), rule_move_down_exec(), rule_move_up_exec(), scanfill(), scanfill_preprocess_self_isect(), scene_blend_read_lib(), scene_free_data(), screen_delarea(), screen_opengl_views_setup(), seq_convert_transform_animation(), seq_disk_cache_delete_file(), SEQ_edit_move_strip_to_seqbase(), SEQ_edit_remove_flagged_sequences(), SEQ_edit_strip_split(), SEQ_free_animdata(), SEQ_meta_stack_pop(), SEQ_modifier_remove(), sequencer_meta_make_exec(), sequencer_separate_images_exec(), shader_preview_free(), single_object_users_collection(), sort_linked_ids(), spacedata_cleanup_exec(), split_libdata(), split_main_newid(), splitlist(), state_del_exec(), state_move_down_exec(), state_move_up_exec(), strip_modifier_copy_exec(), strip_modifier_move_exec(), strip_modifier_remove_exec(), target_move_down_exec(), target_move_up_exec(), tracks_map_merge(), blender::bke::VertexGroupsAttributeProvider::try_delete(), txt_delete_line(), txt_move_lines(), UI_blocklist_free_inactive(), UI_but_active_only_ex(), ui_but_change_type(), ui_but_update_from_old_block(), UI_butstore_free(), UI_butstore_unregister(), UI_context_copy_to_selected_list(), UI_panel_begin(), ui_panel_category_active_set(), UI_popover_end(), ui_textedit_undo_push(), uiItemFullR(), undofont_free_data(), undomesh_free_data(), undosys_step_free_and_unlink(), update_visible_columns(), verify_socket_template(), vgroup_sort_bone_hierarchy(), wm_close_and_free_all(), WM_draw_cb_exit(), wm_event_add_mousemove_to_head(), wm_event_do_handlers(), WM_event_free_ui_handler_all(), WM_event_remove_area_handler(), WM_event_remove_keymap_handler(), WM_event_remove_ui_handler(), WM_gesture_end(), WM_gizmo_unlink(), wm_gizmogroup_free(), WM_gizmomaptype_group_unlink(), wm_handler_fileselect_do(), wm_handler_operator_call(), wm_handlers_do_intern(), wm_history_file_update(), wm_job_free(), WM_keyconfig_remove(), WM_keymap_remove(), wm_macro_modal(), wm_msg_rna_remove_by_id(), wm_msg_rna_update_by_id(), wm_msg_static_gset_key_free(), wm_msg_subscribe_value_free(), WM_msgbus_clear_by_owner(), WM_operator_free_all_after(), wm_operator_register(), WM_paint_cursor_end(), WM_paint_cursor_remove_by_type(), wm_surface_remove(), wm_window_close(), wm_window_delete_removed_timers(), wm_window_match_replace_by_file_wm(), workspace_relation_ensure_updated(), workspace_relation_remove(), and ww_write_zstd().
Checks that vlink is linked into listbase, removing it from there if so.
Definition at line 123 of file listbase.c.
References BLI_findindex(), and BLI_remlink().
Referenced by ANIM_keyingset_info_unregister(), BKE_armature_editbonelist_free(), BKE_mask_spline_remove(), read_libblock_undo_restore_library(), and wm_event_free_and_remove_from_queue_if_valid().
Returns the nth-last element of listbase, numbering from 0.
Referenced by bpy_bmeditselseq_subscript_int(), bridge_loop_pair(), and TEST().
Finds the last element of listbase which contains the specified pointer value at the specified offset, returning NULL if not found.
Referenced by TEST().
Finds the last element of listbase which contains the null-terminated string id at the specified offset, returning NULL if not found.
Referenced by BKE_undosys_stack_has_undo(), BKE_undosys_step_find_by_name(), CTX_store_ptr_lookup(), IMB_exr_get_handle_name(), and TEST().