Blender
V3.3
source
blender
compositor
nodes
COM_SwitchViewNode.cc
Go to the documentation of this file.
1
/* SPDX-License-Identifier: GPL-2.0-or-later
2
* Copyright 2015 Blender Foundation. */
3
4
#include "
COM_SwitchViewNode.h
"
5
6
namespace
blender::compositor
{
7
8
SwitchViewNode::SwitchViewNode
(
bNode
*editor_node) :
Node
(editor_node)
9
{
10
/* pass */
11
}
12
13
void
SwitchViewNode::convert_to_operations
(
NodeConverter
&converter,
14
const
CompositorContext
&
context
)
const
15
{
16
NodeOperationOutput
*
result
;
17
const
char
*view_name =
context
.get_view_name();
18
bNode
*bnode = this->
get_bnode
();
19
20
/* get the internal index of the socket with a matching name */
21
int
nr =
BLI_findstringindex
(&bnode->
inputs
, view_name, offsetof(
bNodeSocket
, name));
22
nr =
MAX2
(nr, 0);
23
24
result
= converter.
add_input_proxy
(
get_input_socket
(nr),
false
);
25
converter.
map_output_socket
(
get_output_socket
(0),
result
);
26
}
27
28
}
// namespace blender::compositor
result
double result
Definition:
BLI_expr_pylike_eval_test.cc:348
BLI_findstringindex
int BLI_findstringindex(const struct ListBase *listbase, const char *id, int offset) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1)
MAX2
#define MAX2(a, b)
Definition:
BLI_utildefines.h:94
COM_SwitchViewNode.h
blender::compositor::CompositorContext
Overall context of the compositor.
Definition:
COM_CompositorContext.h:19
blender::compositor::NodeConverter
Definition:
COM_NodeConverter.h:28
blender::compositor::NodeConverter::map_output_socket
void map_output_socket(NodeOutput *node_socket, NodeOperationOutput *operation_socket)
Definition:
COM_NodeConverter.cc:31
blender::compositor::NodeConverter::add_input_proxy
NodeOperationOutput * add_input_proxy(NodeInput *input, bool use_conversion)
Definition:
COM_NodeConverter.cc:66
blender::compositor::NodeOperationOutput
Definition:
COM_NodeOperation.h:132
blender::compositor::Node
Definition:
COM_Node.h:24
blender::compositor::Node::get_output_socket
NodeOutput * get_output_socket(unsigned int index=0) const
Definition:
COM_Node.cc:84
blender::compositor::Node::get_bnode
bNode * get_bnode() const
get the reference to the SDNA bNode struct
Definition:
COM_Node.h:64
blender::compositor::Node::get_input_socket
NodeInput * get_input_socket(unsigned int index) const
Definition:
COM_Node.cc:89
blender::compositor::SwitchViewNode::convert_to_operations
void convert_to_operations(NodeConverter &converter, const CompositorContext &context) const override
convert node to operation
Definition:
COM_SwitchViewNode.cc:13
blender::compositor::SwitchViewNode::SwitchViewNode
SwitchViewNode(bNode *editor_node)
Definition:
COM_SwitchViewNode.cc:8
blender::compositor
Definition:
COM_defines.h:10
blender::compositor::context
cl_context context
Definition:
COM_WorkScheduler.cc:73
bNodeSocket
Definition:
DNA_node_types.h:92
bNode
Definition:
DNA_node_types.h:252
bNode::inputs
ListBase inputs
Definition:
DNA_node_types.h:277
Generated on Tue Oct 22 2024 13:18:25 for Blender by
doxygen
1.9.1