Blender  V3.3
COM_ExecutionModel.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: GPL-2.0-or-later
2  * Copyright 2021 Blender Foundation. */
3 
4 #pragma once
5 
6 #include "BLI_span.hh"
7 
8 #include "DNA_vec_types.h"
9 
10 #ifdef WITH_CXX_GUARDEDALLOC
11 # include "MEM_guardedalloc.h"
12 #endif
13 
14 namespace blender::compositor {
15 
16 class CompositorContext;
17 class ExecutionSystem;
18 class NodeOperation;
19 
24  protected:
28  struct {
34 
39 
44 
45  public:
47 
48  virtual ~ExecutionModel()
49  {
50  }
51 
52  virtual void execute(ExecutionSystem &exec_system) = 0;
53 
54 #ifdef WITH_CXX_GUARDEDALLOC
55  MEM_CXX_CLASS_ALLOC_FUNCS("COM:BaseExecutionModel")
56 #endif
57 };
58 
59 } // namespace blender::compositor
Read Guarded memory(de)allocation.
Overall context of the compositor.
virtual void execute(ExecutionSystem &exec_system)=0
ExecutionModel(CompositorContext &context, Span< NodeOperation * > operations)
struct blender::compositor::ExecutionModel::@178 border_
the ExecutionSystem contains the whole compositor tree.