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:
authorSergey Sharybin <sergey.vfx@gmail.com>2019-04-29 13:55:29 +0300
committerSergey Sharybin <sergey.vfx@gmail.com>2019-04-30 12:32:02 +0300
commitc8f3377d03531ec52fc8dd6fa5802679166997b8 (patch)
tree8a2ef328e1ccda447649a90cb54b6d1dc7ebd7d6 /source/blender/depsgraph/intern/builder/deg_builder.h
parent587ee46d884c7508017de2635372ffac8ef638a5 (diff)
Depsgraph: Add generic animated properties cache
Allows to speed up lookups like "is property FOO of data BAR animated". Can be used to optimize object's visibility check, but also allows to check animation on bones without too much of time penalty. The cache is shared between both nodes and relations builder. Currently is not used, just a boilerplate for an upcoming changes in an actual logic.
Diffstat (limited to 'source/blender/depsgraph/intern/builder/deg_builder.h')
-rw-r--r--source/blender/depsgraph/intern/builder/deg_builder.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/source/blender/depsgraph/intern/builder/deg_builder.h b/source/blender/depsgraph/intern/builder/deg_builder.h
index 310944f2f28..88df0e870f3 100644
--- a/source/blender/depsgraph/intern/builder/deg_builder.h
+++ b/source/blender/depsgraph/intern/builder/deg_builder.h
@@ -29,17 +29,20 @@ struct Main;
namespace DEG {
struct Depsgraph;
+class DepsgraphBuilderCache;
class DepsgraphBuilder {
public:
bool need_pull_base_into_graph(struct Base *base);
protected:
- DepsgraphBuilder(Main *bmain, Depsgraph *graph);
+ /* NOTE: The builder does NOT take ownership over any of those resources. */
+ DepsgraphBuilder(Main *bmain, Depsgraph *graph, DepsgraphBuilderCache *cache);
/* State which never changes, same for the whole builder time. */
Main *bmain_;
Depsgraph *graph_;
+ DepsgraphBuilderCache *cache_;
};
bool deg_check_base_available_for_build(const Depsgraph *graph, Base *base);