Blender
V3.3
|
#include "CLG_log.h"
#include "MEM_guardedalloc.h"
#include "BLI_linklist.h"
#include "DNA_ID.h"
#include "DNA_collection_types.h"
#include "DNA_object_types.h"
#include "DNA_scene_types.h"
#include "DEG_depsgraph.h"
#include "BKE_collection.h"
#include "BKE_idtype.h"
#include "BKE_lib_id.h"
#include "BKE_lib_override.h"
#include "BKE_main.h"
#include "BLO_readfile.h"
Go to the source code of this file.
Macros | |
#define | DNA_DEPRECATED_ALLOW |
Functions | |
bool | BKE_lib_override_library_proxy_convert (Main *bmain, Scene *scene, ViewLayer *view_layer, Object *ob_proxy) |
static void | lib_override_library_proxy_convert_do (Main *bmain, Scene *scene, Object *ob_proxy, BlendFileReadReport *reports) |
void | BKE_lib_override_library_main_proxy_convert (Main *bmain, BlendFileReadReport *reports) |
Variables | |
static CLG_LogRef | LOG = {"bke.liboverride_proxy_conversion"} |
#define DNA_DEPRECATED_ALLOW |
Definition at line 15 of file lib_override_proxy_conversion.c.
void BKE_lib_override_library_main_proxy_convert | ( | struct Main * | bmain, |
struct BlendFileReadReport * | reports | ||
) |
Convert all proxy objects into library overrides.
Definition at line 113 of file lib_override_proxy_conversion.c.
References BLI_linklist_append(), BLI_linklist_free(), CLOG_WARN, BlendFileReadReport::count, FOREACH_SCENE_OBJECT_BEGIN, FOREACH_SCENE_OBJECT_END, ID_IS_LINKED, id_us_min(), lib_override_library_proxy_convert_do(), LinkNodePair::list, LISTBASE_FOREACH, LOG, NULL, Main::objects, BlendFileReadReport::proxies_to_lib_overrides_failures, scene, and Main::scenes.
Referenced by blendfile_link_append_proxies_convert(), and setup_app_data().
bool BKE_lib_override_library_proxy_convert | ( | struct Main * | bmain, |
struct Scene * | scene, | ||
struct ViewLayer * | view_layer, | ||
struct Object * | ob_proxy | ||
) |
Convert a given proxy object into a library override.
view_layer | the active view layer to search instantiated collections in, can be NULL (in which case scene's master collection children hierarchy is used instead). |
Definition at line 34 of file lib_override_proxy_conversion.c.
References BKE_lib_override_library_create(), BKE_lib_override_library_init(), DEG_id_tag_update(), IDOverrideLibrary::flag, FOREACH_MAIN_ID_BEGIN, FOREACH_MAIN_ID_END, Collection::id, Object::id, ID_IS_LINKED, ID_IS_OVERRIDABLE_LIBRARY_HIERARCHY, ID_RECALC_COPY_ON_WRITE, id_us_min(), IDOVERRIDE_LIBRARY_FLAG_SYSTEM_DEFINED, Object::instance_collection, ID::lib, LIB_TAG_DOIT, ID::newid, NULL, ID::override_library, scene, and ID::tag.
Referenced by lib_override_library_proxy_convert_do().
|
static |
Definition at line 89 of file lib_override_proxy_conversion.c.
References BKE_lib_override_library_proxy_convert(), BKE_scene_collections_object_remove(), CLOG_INFO, BlendFileReadReport::count, Object::id, LOG, ID::name, NULL, BlendFileReadReport::proxies_to_lib_overrides_success, and scene.
Referenced by BKE_lib_override_library_main_proxy_convert().
|
static |
Definition at line 32 of file lib_override_proxy_conversion.c.
Referenced by BKE_lib_override_library_main_proxy_convert(), and lib_override_library_proxy_convert_do().