[Bf-blender-cvs] [91d7c34] render-layers: Rename Collection > SceneCollection

Dalai Felinto noreply at git.blender.org
Fri Dec 2 17:56:11 CET 2016


Commit: 91d7c345d48cecd3485882c8c4d006cc2eebb38b
Author: Dalai Felinto
Date:   Fri Dec 2 12:21:48 2016 +0100
Branches: render-layers
https://developer.blender.org/rB91d7c345d48cecd3485882c8c4d006cc2eebb38b

Rename Collection > SceneCollection

We may want to re-use part of this struct (or concept) for groups and armatures. But filter is something specific to SceneCollections, so may as well keep it in a separate struct, and re-evaluate that once/if we get to it.

===================================================================

M	source/blender/blenkernel/BKE_collection.h
M	source/blender/blenkernel/BKE_layer.h
M	source/blender/blenkernel/intern/collection.c
M	source/blender/blenkernel/intern/layer.c
M	source/blender/blenloader/intern/versioning_280.c
M	source/blender/makesdna/DNA_layer_types.h

===================================================================

diff --git a/source/blender/blenkernel/BKE_collection.h b/source/blender/blenkernel/BKE_collection.h
index af43270..cf11202 100644
--- a/source/blender/blenkernel/BKE_collection.h
+++ b/source/blender/blenkernel/BKE_collection.h
@@ -31,15 +31,15 @@
 extern "C" {
 #endif
 
-struct Collection;
+struct SceneCollection;
 struct ListBase;
 struct Object;
 struct Scene;
 
-struct Collection *BKE_collection_add(struct Scene *scene, struct ListBase *lb, const char *name);
-void BKE_collection_remove(struct Scene *scene, struct Collection *collection);
-struct Collection *BKE_collection_master(struct Scene *scene);
-void BKE_collection_object_add(struct Scene *scene, struct Collection *collection, struct Object *object);
+struct SceneCollection *BKE_collection_add(struct Scene *scene, struct ListBase *lb, const char *name);
+void BKE_collection_remove(struct Scene *scene, struct SceneCollection *sc);
+struct SceneCollection *BKE_collection_master(struct Scene *scene);
+void BKE_collection_object_add(struct Scene *scene, struct SceneCollection *sc, struct Object *object);
 
 #ifdef __cplusplus
 }
diff --git a/source/blender/blenkernel/BKE_layer.h b/source/blender/blenkernel/BKE_layer.h
index ea8f930..81f3af6 100644
--- a/source/blender/blenkernel/BKE_layer.h
+++ b/source/blender/blenkernel/BKE_layer.h
@@ -34,7 +34,7 @@ extern "C" {
 #define TODO_LAYER_SYNC
 #define TODO_LAYER_OVERRIDE
 
-struct Collection;
+struct SceneCollection;
 struct CollectionBase;
 struct ID;
 struct Main;
@@ -47,7 +47,7 @@ bool BKE_scene_layer_remove(struct Main *bmain, struct Scene *scene, struct Scen
 
 void BKE_scene_layer_engine_set(struct SceneLayer *sl, const char *engine);
 
-struct CollectionBase *BKE_collection_link(struct SceneLayer *sl, struct Collection *cl);
+struct CollectionBase *BKE_collection_link(struct SceneLayer *sl, struct SceneCollection *sc);
 
 void BKE_collection_unlink(struct SceneLayer *sl, struct CollectionBase *cb);
 
diff --git a/source/blender/blenkernel/intern/collection.c b/source/blender/blenkernel/intern/collection.c
index b45c7a8..726a8cc 100644
--- a/source/blender/blenkernel/intern/collection.c
+++ b/source/blender/blenkernel/intern/collection.c
@@ -42,53 +42,53 @@
  * Add a collection to a collection ListBase and syncronize all render layers
  * The ListBase is NULL when the collection is to be added to the master collection
  */
-Collection *BKE_collection_add(Scene *scene, ListBase *lb, const char *name)
+SceneCollection *BKE_collection_add(Scene *scene, ListBase *lb, const char *name)
 {
-	Collection *cl = MEM_callocN(sizeof(Collection), "New Collection");
-	BLI_strncpy(cl->name, name, sizeof(cl->name));
-	BLI_uniquename(&scene->collections, cl, DATA_("Collection"), '.', offsetof(Collection, name), sizeof(cl->name));
+	SceneCollection *sc = MEM_callocN(sizeof(SceneCollection), "New Collection");
+	BLI_strncpy(sc->name, name, sizeof(sc->name));
+	BLI_uniquename(&scene->collections, sc, DATA_("Collection"), '.', offsetof(SceneCollection, name), sizeof(sc->name));
 
 	if (lb) {
-		BLI_addtail(lb, cl);
+		BLI_addtail(lb, sc);
 	}
 	else {
-		Collection *cl_master = BKE_collection_master(scene);
-		BLI_addtail(&cl_master->collections, cl);
+		SceneCollection *sc_master = BKE_collection_master(scene);
+		BLI_addtail(&sc_master->collections, sc);
 	}
 
 	TODO_LAYER_SYNC;
-	return cl;
+	return sc;
 }
 
 /* free the collection items recursively */
-static void collection_free(Collection *cl)
+static void collection_free(SceneCollection *sc)
 {
-	for (LinkData *link = cl->objects.first; link; link = link->next) {
+	for (LinkData *link = sc->objects.first; link; link = link->next) {
 		id_us_min(link->data);
 	}
 
-	for (LinkData *link = cl->filter_objects.first; link; link = link->next) {
+	for (LinkData *link = sc->filter_objects.first; link; link = link->next) {
 		id_us_min(link->data);
 	}
 
-	for (Collection *ncl = cl->collections.first; ncl; ncl = ncl->next) {
-		collection_free(ncl);
+	for (SceneCollection *nsc = sc->collections.first; nsc; nsc = nsc->next) {
+		collection_free(nsc);
 	}
-	BLI_freelistN(&cl->collections);
+	BLI_freelistN(&sc->collections);
 }
 
 /* unlink the collection recursively
  * return true if unlinked */
-static bool collection_remlink(Collection *cl, Collection *cl_gone)
+static bool collection_remlink(SceneCollection *sc, SceneCollection *sc_gone)
 {
-	for (Collection *ncl = cl->collections.first; ncl; ncl = ncl->next)
+	for (SceneCollection *nsc = sc->collections.first; nsc; nsc = nsc->next)
 	{
-		if (ncl == cl_gone) {
-			BLI_remlink(&cl->collections, cl_gone);
+		if (nsc == sc_gone) {
+			BLI_remlink(&sc->collections, sc_gone);
 			return true;
 		}
 
-		if (collection_remlink(ncl, cl_gone)) {
+		if (collection_remlink(nsc, sc_gone)) {
 			return true;
 		}
 	}
@@ -98,26 +98,26 @@ static bool collection_remlink(Collection *cl, Collection *cl_gone)
 /*
  * Remove a collection from the scene, and syncronize all render layers
  */
-void BKE_collection_remove(Scene *scene, Collection *cl)
+void BKE_collection_remove(Scene *scene, SceneCollection *sc)
 {
-	Collection *cl_master = BKE_collection_master(scene);
+	SceneCollection *sc_master = BKE_collection_master(scene);
 
 	/* unlink from the main collection tree */
-	collection_remlink(cl_master, cl);
+	collection_remlink(sc_master, sc);
 
 	/* clear the collection items */
-	collection_free(cl);
+	collection_free(sc);
 
 	/* TODO: check all layers that use this collection and clear them */
 	TODO_LAYER_SYNC;
 
-	MEM_freeN(cl);
+	MEM_freeN(sc);
 }
 
 /*
  * Returns the master collection
  */
-Collection *BKE_collection_master(Scene *scene)
+SceneCollection *BKE_collection_master(Scene *scene)
 {
 	return scene->collections.first;
 }
@@ -125,9 +125,9 @@ Collection *BKE_collection_master(Scene *scene)
 /*
  * Add object to collection
  */
-void BKE_collection_object_add(struct Scene *UNUSED(scene), struct Collection *cl, struct Object *ob)
+void BKE_collection_object_add(struct Scene *UNUSED(scene), struct SceneCollection *sc, struct Object *ob)
 {
-	BLI_addtail(&cl->objects, BLI_genericNodeN(ob));
+	BLI_addtail(&sc->objects, BLI_genericNodeN(ob));
 	id_us_plus((ID *)ob);
 	TODO_LAYER_SYNC;
 }
diff --git a/source/blender/blenkernel/intern/layer.c b/source/blender/blenkernel/intern/layer.c
index fc17979..c2a810e 100644
--- a/source/blender/blenkernel/intern/layer.c
+++ b/source/blender/blenkernel/intern/layer.c
@@ -41,7 +41,7 @@
 #include "MEM_guardedalloc.h"
 
 /* prototype */
-CollectionBase *collection_base_add(SceneLayer *sl, ListBase *lb, Collection *collection);
+CollectionBase *collection_base_add(SceneLayer *sl, ListBase *lb, SceneCollection *sc);
 
 /* RenderLayer */
 
@@ -54,8 +54,8 @@ SceneLayer *BKE_scene_layer_add(Scene *scene, const char *name)
 	SceneLayer *sl = MEM_callocN(sizeof(SceneLayer), "Scene Layer");
 	BLI_strncpy(sl->name, name, sizeof(sl->name));
 
-	Collection *cl = BKE_collection_master(scene);
-	collection_base_add(sl, &sl->collection_bases, cl);
+	SceneCollection *sc = BKE_collection_master(scene);
+	collection_base_add(sl, &sl->collection_bases, sc);
 	return sl;
 }
 
@@ -139,9 +139,9 @@ static ObjectBase *object_base_add(SceneLayer *sl, Object *ob)
  * Link a collection to a renderlayer
  * The collection needs to be created separately
  */
-CollectionBase *BKE_collection_link(SceneLayer *sl, Collection *cl)
+CollectionBase *BKE_collection_link(SceneLayer *sl, SceneCollection *sc)
 {
-	CollectionBase *base = collection_base_add(sl, &sl->collection_bases, cl);
+	CollectionBase *base = collection_base_add(sl, &sl->collection_bases, sc);
 	return base;
 }
 
@@ -189,25 +189,25 @@ static void object_base_populate(SceneLayer *sl, CollectionBase *cb, ListBase *o
 	}
 }
 
-static void collection_base_populate(SceneLayer *sl, CollectionBase *cb, Collection *cl)
+static void collection_base_populate(SceneLayer *sl, CollectionBase *cb, SceneCollection *sc)
 {
-	object_base_populate(sl, cb, &cl->objects);
-	object_base_populate(sl, cb, &cl->filter_objects);
+	object_base_populate(sl, cb, &sc->objects);
+	object_base_populate(sl, cb, &sc->filter_objects);
 
-	for (Collection *ncl = cl->collections.first; ncl; ncl = ncl->next) {
-		collection_base_add(sl, &cb->collection_bases, ncl);
+	for (SceneCollection *nsc = sc->collections.first; nsc; nsc = nsc->next) {
+		collection_base_add(sl, &cb->collection_bases, nsc);
 	}
 }
 
-CollectionBase *collection_base_add(SceneLayer *sl, ListBase *lb, Collection *cl)
+CollectionBase *collection_base_add(SceneLayer *sl, ListBase *lb, SceneCollection *sc)
 {
 	CollectionBase *cb = MEM_callocN(sizeof(CollectionBase), "Collection Base");
 	BLI_addtail(lb, cb);
 
-	cb->collection = cl;
+	cb->collection = sc;
 	cb->flag = COLLECTION_VISIBLE + COLLECTION_SELECTABLE + COLLECTION_FOLDED;
 
-	collection_base_populate(sl, cb, cl);
+	collection_base_populate(sl, cb, sc);
 	return cb;
 }
 
diff --git a/source/blender/blenloader/intern/versioning_280.c b/source/blender/blenloader/intern/versioning_280.c
index 16ed7e4..f9290f3 100644
--- a/source/blender/blenloader/intern/versioning_280.c
+++ b/source/blender/blenloader/intern/versioning_280.c
@@ -53,7 +53,7 @@ void blo_do_versions_280(FileData *fd, Library *UNUSED(lib), Main *main)
 
 			BKE_collection_add(scene, &scene->collections, "Master Collection");
 
-			Collection *collections[20] = {NULL};
+			SceneCollection *collections[20] = {NULL};
 			bool is_visible[20];
 
 			int lay_used = 0;
diff --git a/source/blender/makesdna/DNA_layer_types.h b/source/blender/makesdna/DNA_layer_types.h
index 602cea0..9573379 100644
--- a/source/blender/makesdna/DNA_layer_types.h
+++ b/source/blender/makesdna/DNA_layer_types.h
@@ -49,7 +49,7 @@ typedef struct CollectionOverride {
 
 typedef struct CollectionBase {
 	struct CollectionBase *next, *prev;
-	struct Collection *collection;
+	struct SceneCollection *collection;
 	short flag;
 	short pad[3];
 	ListBase collection_bases; /* synced with collection->collections */
@@ -57,14 +57,14 @@ typedef struct CollectionBase {
 	ListBase overrides;
 } CollectionBase;
 
-typedef struct Collection {
-	struct Collection *next, *prev;
+typedef struct SceneCollection {
+	struct SceneCollection *next, *prev;
 	char name[64]; /* MAX_NAME */
 	char filter

@@ Diff output truncated at 10240 characters. @@




More information about the Bf-blender-cvs mailing list