Blender V4.3
pipeline_compositor.cc
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2020 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
6
9#include "intern/depsgraph.hh"
10
11namespace blender::deg {
12
13namespace {
14
15class CompositorDepsgraphNodeBuilder : public DepsgraphNodeBuilder {
16 public:
18
19 void build_idproperties(IDProperty * /*id_property*/) override {}
20};
21
22class CompositorDepsgraphRelationBuilder : public DepsgraphRelationBuilder {
23 public:
25
26 void build_idproperties(IDProperty * /*id_property*/) override {}
27};
28
29} // namespace
30
32 : AbstractBuilderPipeline(graph), nodetree_(nodetree)
33{
35}
36
37unique_ptr<DepsgraphNodeBuilder> CompositorBuilderPipeline::construct_node_builder()
38{
39 return std::make_unique<CompositorDepsgraphNodeBuilder>(bmain_, deg_graph_, &builder_cache_);
40}
41
42unique_ptr<DepsgraphRelationBuilder> CompositorBuilderPipeline::construct_relation_builder()
43{
44 return std::make_unique<CompositorDepsgraphRelationBuilder>(bmain_, deg_graph_, &builder_cache_);
45}
46
48{
50 node_builder.build_nodetree(nodetree_);
51}
52
54{
55 relation_builder.build_scene_render(scene_, view_layer_);
56 relation_builder.build_nodetree(nodetree_);
57}
58
59} // namespace blender::deg
virtual void build_relations(DepsgraphRelationBuilder &relation_builder) override
virtual void build_nodes(DepsgraphNodeBuilder &node_builder) override
unique_ptr< DepsgraphNodeBuilder > construct_node_builder() override
unique_ptr< DepsgraphRelationBuilder > construct_relation_builder() override
CompositorBuilderPipeline(::Depsgraph *graph, bNodeTree *nodetree)
virtual void build_scene_render(Scene *scene, ViewLayer *view_layer)
DepsgraphNodeBuilder(Main *bmain, Depsgraph *graph, DepsgraphBuilderCache *cache)
virtual void build_nodetree(bNodeTree *ntree)
virtual void build_scene_render(Scene *scene, ViewLayer *view_layer)
DepsgraphRelationBuilder(Main *bmain, Depsgraph *graph, DepsgraphBuilderCache *cache)
virtual void build_nodetree(bNodeTree *ntree)