Blender
V3.3
source
blender
compositor
intern
COM_ConstantFolder.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 "
COM_defines.h
"
7
8
namespace
blender::compositor
{
9
10
class
NodeOperation;
11
class
NodeOperationBuilder;
12
class
ConstantOperation;
13
class
MemoryBuffer;
14
19
class
ConstantFolder
{
20
private
:
21
NodeOperationBuilder
&operations_builder_;
22
24
Map<ConstantOperation *, MemoryBuffer *>
constant_buffers_;
25
26
rcti
max_area_;
27
rcti
first_elem_area_;
28
29
public
:
34
ConstantFolder
(
NodeOperationBuilder
&operations_builder);
38
int
fold_operations
();
39
40
private
:
42
Vector<ConstantOperation *>
try_fold_operations(
Span<NodeOperation *>
operations);
43
ConstantOperation
*fold_operation(
NodeOperation
*operation);
44
45
MemoryBuffer
*create_constant_buffer(
DataType
data_type);
46
Vector<MemoryBuffer *>
get_constant_input_buffers(
NodeOperation
*operation);
47
void
delete_constant_buffers();
48
49
void
get_operation_output_operations(
NodeOperation
*operation,
50
Vector<NodeOperation *>
&r_outputs);
51
};
52
53
}
// namespace blender::compositor
COM_defines.h
blender::Map
Definition:
BLI_map.hh:108
blender::Span
Definition:
BLI_span.hh:73
blender::Vector
Definition:
BLI_vector.hh:64
blender::compositor::ConstantFolder
Definition:
COM_ConstantFolder.h:19
blender::compositor::ConstantFolder::fold_operations
int fold_operations()
Definition:
COM_ConstantFolder.cc:132
blender::compositor::ConstantFolder::ConstantFolder
ConstantFolder(NodeOperationBuilder &operations_builder)
Definition:
COM_ConstantFolder.cc:16
blender::compositor::ConstantOperation
Definition:
COM_ConstantOperation.h:17
blender::compositor::MemoryBuffer
a MemoryBuffer contains access to the data of a chunk
Definition:
COM_MemoryBuffer.h:43
blender::compositor::NodeOperationBuilder
Definition:
COM_NodeOperationBuilder.h:30
blender::compositor::NodeOperation
NodeOperation contains calculation logic.
Definition:
COM_NodeOperation.h:303
blender::compositor::DataType
DataType
possible data types for sockets
Definition:
COM_defines.h:30
blender::compositor
Definition:
COM_defines.h:10
rcti
Definition:
DNA_vec_types.h:62
Generated on Tue Oct 22 2024 13:18:25 for Blender by
doxygen
1.9.1