Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDalai Felinto <dfelinto@gmail.com>2017-11-06 22:44:39 +0300
committerDalai Felinto <dfelinto@gmail.com>2017-11-06 22:51:16 +0300
commit535adcdaa3cc83c62abe211b0f645cf0a8237eba (patch)
tree790dd333d70745c38a8b7cfdb42122d509d24383 /source/blender/depsgraph/DEG_depsgraph_query.h
parentfacdc15fdd32c36abcdd4166c539a3c1b98c3966 (diff)
Depsgraph: Iterates over ID Nodes instead of Bases
Although this works by itself, it should actually happen after: "Reshuffle collections base flags evaluation, make it so object is gathering its base flags from collections." Meanwhile we have one single hacky function (deg_flush_base_flags_and_settings) to be removed once the task above is tackled. Reviewers: sergey Differential Revision: https://developer.blender.org/D2899
Diffstat (limited to 'source/blender/depsgraph/DEG_depsgraph_query.h')
-rw-r--r--source/blender/depsgraph/DEG_depsgraph_query.h10
1 files changed, 6 insertions, 4 deletions
diff --git a/source/blender/depsgraph/DEG_depsgraph_query.h b/source/blender/depsgraph/DEG_depsgraph_query.h
index 1020d4e606e..59158ef0454 100644
--- a/source/blender/depsgraph/DEG_depsgraph_query.h
+++ b/source/blender/depsgraph/DEG_depsgraph_query.h
@@ -33,6 +33,8 @@
#ifndef __DEG_DEPSGRAPH_QUERY_H__
#define __DEG_DEPSGRAPH_QUERY_H__
+#include "BLI_ghash.h"
+
#include "DEG_depsgraph.h"
struct ID;
@@ -81,9 +83,6 @@ typedef struct DEGObjectsIteratorData {
struct Scene *scene;
struct EvaluationContext eval_ctx;
- /* TODO(sergey): Base should never be a thing coming FROM depsgraph. */
- struct Base *base;
- int base_flag;
int flag;
/* **** Iteration over dupli-list. *** */
@@ -102,13 +101,16 @@ typedef struct DEGObjectsIteratorData {
* other users of the iterator.
*/
struct Object temp_dupli_object;
+
+ /* **** ghash **** */
+ struct GHashIterator gh_iter;
+
} DEGObjectsIteratorData;
void DEG_objects_iterator_begin(struct BLI_Iterator *iter, DEGObjectsIteratorData *data);
void DEG_objects_iterator_next(struct BLI_Iterator *iter);
void DEG_objects_iterator_end(struct BLI_Iterator *iter);
-/* Temporary hacky solution waiting for cow depsgraph implementation. */
#define DEG_OBJECT_ITER(graph_, instance_, flag_) \
{ \
DEGObjectsIteratorData data_ = { \