|
Blender V4.3
|
#include <optional>#include "DNA_ID.h"#include "BLI_utildefines.h"#include "BLI_blenlib.h"#include "BLI_ghash.h"#include "BLI_set.hh"#include "BLT_translation.hh"#include "BKE_bpath.hh"#include "BKE_idtype.hh"#include "BKE_lib_query.hh"#include "BKE_library.hh"#include "BKE_main.hh"#include "BKE_main_namemap.hh"#include "BKE_packedFile.hh"Go to the source code of this file.
Functions | |
| static void | library_runtime_reset (Library *lib) |
| static void | library_free_data (ID *id) |
| static void | library_copy_data (Main *bmain, std::optional< Library * > owner_library, ID *id_dst, const ID *id_src, int) |
| static void | library_foreach_id (ID *id, LibraryForeachIDData *data) |
| static void | library_foreach_path (ID *id, BPathForeachPathData *bpath_data) |
| static void | library_blend_read_data (BlendDataReader *, ID *id) |
| void | BKE_library_filepath_set (Main *bmain, Library *lib, const char *filepath) |
| static void | rebuild_hierarchy_best_parent_find (Main *bmain, blender::Set< Library * > &directly_used_libs, Library *lib) |
| void | BKE_library_main_rebuild_hierarchy (Main *bmain) |
Variables | |
| IDTypeInfo | IDType_ID_LI |
Contains code specific to the Library ID type.
Definition in file library.cc.
Definition at line 135 of file library.cc.
References BKE_main_blendfile_path(), BLI_path_abs(), BLI_path_is_rel(), lib, and STRNCPY.
Referenced by BLO_main_validate_libraries(), library_foreach_path(), blender::ed::outliner::namebutton_fn(), and blender::bke::tests::TEST_F().
| void BKE_library_main_rebuild_hierarchy | ( | Main * | bmain | ) |
Rebuild the hierarchy of libraries, after e.g. deleting or relocating one, often some indirectly linked libraries lose their 'parent' pointer, making them wrongly directly used ones.
Definition at line 234 of file library.cc.
References blender::Set< Key, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::add(), blender::Vector< T, InlineBufferCapacity, Allocator >::append(), BKE_main_relations_create(), BKE_main_relations_free(), BLI_assert, BLI_ghash_lookup(), blender::Set< Key, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::contains(), FOREACH_MAIN_ID_BEGIN, FOREACH_MAIN_ID_END, MainIDRelationsEntry::from_ids, ID_IS_LINKED, int, blender::Vector< T, InlineBufferCapacity, Allocator >::last(), ID::lib, Main::libraries, LISTBASE_FOREACH, Library_Runtime::parent, rebuild_hierarchy_best_parent_find(), Main::relations, MainIDRelations::relations_from_pointers, Library::runtime, blender::Vector< T, InlineBufferCapacity, Allocator >::size(), and Library_Runtime::temp_index.
Referenced by BKE_blendfile_library_relocate(), BKE_id_free_us(), and id_delete().
|
static |
Definition at line 99 of file library.cc.
References lib.
|
static |
Definition at line 50 of file library.cc.
References BKE_packedfile_duplicate(), BLI_assert, BLI_findstring(), Library_Runtime::filedata, Library_Runtime::filepath_abs, Main::libraries, Library_Runtime::name_map, offsetof, Library::packedfile, Library::runtime, and UNUSED_VARS_NDEBUG.
|
static |
Definition at line 76 of file library.cc.
References BKE_LIB_FOREACHID_PROCESS_IDSUPER, IDWALK_CB_NEVER_SELF, and lib.
|
static |
Definition at line 82 of file library.cc.
References BKE_bpath_foreach_path_fixed_process(), BKE_library_filepath_set(), BPathForeachPathData::bmain, and lib.
|
static |
Definition at line 41 of file library.cc.
References BKE_packedfile_free(), library_runtime_reset(), and Library::packedfile.
|
static |
Definition at line 34 of file library.cc.
References BKE_main_namemap_destroy(), and lib.
Referenced by library_free_data().
|
static |
Definition at line 160 of file library.cc.
References blender::Set< Key, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::add(), BLI_assert, BLI_assert_unreachable, BLI_ghash_lookup(), blender::Set< Key, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::contains(), FOREACH_MAIN_LISTBASE_BEGIN, FOREACH_MAIN_LISTBASE_END, FOREACH_MAIN_LISTBASE_ID_BEGIN, FOREACH_MAIN_LISTBASE_ID_END, MainIDRelationsEntry::from_ids, ID_IS_LINKED, ID::lib, lib, Library_Runtime::parent, rebuild_hierarchy_best_parent_find(), Main::relations, MainIDRelations::relations_from_pointers, Library::runtime, and Library_Runtime::temp_index.
Referenced by BKE_library_main_rebuild_hierarchy(), and rebuild_hierarchy_best_parent_find().
| IDTypeInfo IDType_ID_LI |
Definition at line 105 of file library.cc.