diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2017-10-20 13:28:25 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2017-10-20 13:28:25 +0300 |
commit | 0fdc0f8bbddf2913e784f4abc75972c76cabcc3a (patch) | |
tree | dc5fc387cc7dc60fe72fe0e7bd851f13a470a665 /source/blender/blenkernel/BKE_scene.h | |
parent | 86d75d5d9839009d14f816f1f50a224ef37612a7 (diff) |
Depsgraph: Introduce hash of dependency graphs in the scene level
The idea is following: we do need to have multiple dependency graphs to denote
different scene layers (depsgraph should only contain objects from a specific
scene layer), and we also want to support same scene layer to be evaluated to
a different state in different windows. In order to achieve that we do need to
have a list or hash (for faster lookup presumably) somewhere. To keep things
easier for now, it will be a scene which owns that hash. This seems to make
sense anyway, since dependency graph only points to data which is owned by
scene.
This commit only introduces some basic API and hash itself stored in DNA, there
is no changes in behavior. See this as a first step towards getting rid of
scene-global dependency graph.
Diffstat (limited to 'source/blender/blenkernel/BKE_scene.h')
-rw-r--r-- | source/blender/blenkernel/BKE_scene.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/source/blender/blenkernel/BKE_scene.h b/source/blender/blenkernel/BKE_scene.h index b31cd1742a2..8e2e37bf39a 100644 --- a/source/blender/blenkernel/BKE_scene.h +++ b/source/blender/blenkernel/BKE_scene.h @@ -215,6 +215,10 @@ void BKE_scene_multiview_videos_dimensions_get(const struct RenderData *r int BKE_scene_multiview_num_videos_get(const struct RenderData *rd); /* depsgraph */ +void BKE_scene_allocate_depsgraph_hash(struct Scene *scene); +void BKE_scene_ensure_depsgraph_hash(struct Scene *scene); +void BKE_scene_free_depsgraph_hash(struct Scene *scene); + struct Depsgraph *BKE_scene_get_depsgraph(struct Scene *scene, struct SceneLayer *scene_layer); #ifdef __cplusplus |