Blender
V3.3
source
blender
compositor
nodes
COM_CryptomatteNode.h
Go to the documentation of this file.
1
/* SPDX-License-Identifier: GPL-2.0-or-later
2
* Copyright 2018 Blender Foundation. */
3
4
#pragma once
5
6
#include "
BLI_string_ref.hh
"
7
#include "
BLI_vector.hh
"
8
9
#include "
COM_CryptomatteOperation.h
"
10
#include "
COM_Node.h
"
11
12
namespace
blender::compositor
{
13
18
class
CryptomatteBaseNode
:
public
Node
{
19
protected
:
20
CryptomatteBaseNode
(
bNode
*editor_node) :
Node
(editor_node)
21
{
22
/* pass */
23
}
24
25
public
:
26
void
convert_to_operations
(
NodeConverter
&converter,
27
const
CompositorContext
&
context
)
const override
;
28
29
protected
:
30
virtual
CryptomatteOperation
*
create_cryptomatte_operation
(
31
NodeConverter
&converter,
32
const
CompositorContext
&
context
,
33
const
bNode
&
node
,
34
const
NodeCryptomatte
*cryptomatte_settings)
const
= 0;
35
};
36
37
class
CryptomatteNode
:
public
CryptomatteBaseNode
{
38
public
:
39
CryptomatteNode
(
bNode
*editor_node) :
CryptomatteBaseNode
(editor_node)
40
{
41
/* pass */
42
}
43
44
protected
:
45
CryptomatteOperation
*
create_cryptomatte_operation
(
46
NodeConverter
&converter,
47
const
CompositorContext
&
context
,
48
const
bNode
&
node
,
49
const
NodeCryptomatte
*cryptomatte_settings)
const override
;
50
51
private
:
52
static
Vector<NodeOperation *>
create_input_operations(
const
CompositorContext
&
context
,
53
const
bNode
&
node
);
54
static
void
input_operations_from_render_source(
const
CompositorContext
&
context
,
55
const
bNode
&
node
,
56
Vector<NodeOperation *>
&r_input_operations);
57
static
void
input_operations_from_image_source(
const
CompositorContext
&
context
,
58
const
bNode
&
node
,
59
Vector<NodeOperation *>
&r_input_operations);
60
};
61
62
class
CryptomatteLegacyNode
:
public
CryptomatteBaseNode
{
63
public
:
64
CryptomatteLegacyNode
(
bNode
*editor_node) :
CryptomatteBaseNode
(editor_node)
65
{
66
/* pass */
67
}
68
69
protected
:
70
CryptomatteOperation
*
create_cryptomatte_operation
(
71
NodeConverter
&converter,
72
const
CompositorContext
&
context
,
73
const
bNode
&
node
,
74
const
NodeCryptomatte
*cryptomatte_settings)
const override
;
75
};
76
77
}
// namespace blender::compositor
BLI_string_ref.hh
BLI_vector.hh
COM_CryptomatteOperation.h
COM_Node.h
blender::Vector
Definition:
BLI_vector.hh:64
blender::compositor::CompositorContext
Overall context of the compositor.
Definition:
COM_CompositorContext.h:19
blender::compositor::CryptomatteBaseNode
CryptomatteNode.
Definition:
COM_CryptomatteNode.h:18
blender::compositor::CryptomatteBaseNode::create_cryptomatte_operation
virtual CryptomatteOperation * create_cryptomatte_operation(NodeConverter &converter, const CompositorContext &context, const bNode &node, const NodeCryptomatte *cryptomatte_settings) const =0
blender::compositor::CryptomatteBaseNode::CryptomatteBaseNode
CryptomatteBaseNode(bNode *editor_node)
Definition:
COM_CryptomatteNode.h:20
blender::compositor::CryptomatteBaseNode::convert_to_operations
void convert_to_operations(NodeConverter &converter, const CompositorContext &context) const override
convert node to operation
Definition:
COM_CryptomatteNode.cc:21
blender::compositor::CryptomatteLegacyNode
Definition:
COM_CryptomatteNode.h:62
blender::compositor::CryptomatteLegacyNode::create_cryptomatte_operation
CryptomatteOperation * create_cryptomatte_operation(NodeConverter &converter, const CompositorContext &context, const bNode &node, const NodeCryptomatte *cryptomatte_settings) const override
Definition:
COM_CryptomatteNode.cc:240
blender::compositor::CryptomatteLegacyNode::CryptomatteLegacyNode
CryptomatteLegacyNode(bNode *editor_node)
Definition:
COM_CryptomatteNode.h:64
blender::compositor::CryptomatteNode
Definition:
COM_CryptomatteNode.h:37
blender::compositor::CryptomatteNode::create_cryptomatte_operation
CryptomatteOperation * create_cryptomatte_operation(NodeConverter &converter, const CompositorContext &context, const bNode &node, const NodeCryptomatte *cryptomatte_settings) const override
Definition:
COM_CryptomatteNode.cc:216
blender::compositor::CryptomatteNode::CryptomatteNode
CryptomatteNode(bNode *editor_node)
Definition:
COM_CryptomatteNode.h:39
blender::compositor::CryptomatteOperation
Definition:
COM_CryptomatteOperation.h:10
blender::compositor::NodeConverter
Definition:
COM_NodeConverter.h:28
blender::compositor::Node
Definition:
COM_Node.h:24
node
OperationNode * node
Definition:
deg_builder_cycle.cc:38
blender::compositor
Definition:
COM_defines.h:10
blender::compositor::context
cl_context context
Definition:
COM_WorkScheduler.cc:73
NodeCryptomatte
Definition:
DNA_node_types.h:1148
bNode
Definition:
DNA_node_types.h:252
Generated on Tue Oct 22 2024 13:18:25 for Blender by
doxygen
1.9.1