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