Blender
V4.3
source
blender
compositor
nodes
COM_SceneTimeNode.cc
Go to the documentation of this file.
1
/* SPDX-FileCopyrightText: 2022 Blender Authors
2
*
3
* SPDX-License-Identifier: GPL-2.0-or-later */
4
5
#include "
COM_SceneTimeNode.h
"
6
7
#include "
COM_SetValueOperation.h
"
8
9
namespace
blender::compositor
{
10
11
SceneTimeNode::SceneTimeNode
(
bNode
*editor_node) :
Node
(editor_node)
12
{
13
/* pass */
14
}
15
16
void
SceneTimeNode::convert_to_operations
(
NodeConverter
&converter,
17
const
CompositorContext
&context)
const
18
{
19
SetValueOperation
*SecondOperation =
new
SetValueOperation
();
20
SetValueOperation
*frameOperation =
new
SetValueOperation
();
21
22
const
int
frameNumber = context.get_framenumber();
23
const
Scene
*scene = context.get_scene();
24
const
double
frameRate =
double
(scene->r.frs_sec) /
double
(scene->r.frs_sec_base);
25
26
SecondOperation->
set_value
(
float
(frameNumber / frameRate));
27
converter.
add_operation
(SecondOperation);
28
29
frameOperation->
set_value
(frameNumber);
30
converter.
add_operation
(frameOperation);
31
32
converter.
map_output_socket
(
get_output_socket
(0), SecondOperation->
get_output_socket
());
33
converter.
map_output_socket
(
get_output_socket
(1), frameOperation->
get_output_socket
());
34
}
35
36
}
// namespace blender::compositor
double
typedef double(DMatrix)[4][4]
COM_SceneTimeNode.h
COM_SetValueOperation.h
blender::compositor::CompositorContext
Overall context of the compositor.
Definition
COM_CompositorContext.h:27
blender::compositor::NodeConverter
Definition
COM_NodeConverter.h:29
blender::compositor::NodeConverter::map_output_socket
void map_output_socket(NodeOutput *node_socket, NodeOperationOutput *operation_socket)
Definition
COM_NodeConverter.cc:30
blender::compositor::NodeConverter::add_operation
void add_operation(NodeOperation *operation)
Definition
COM_NodeConverter.cc:20
blender::compositor::NodeOperation::get_output_socket
NodeOperationOutput * get_output_socket(unsigned int index=0)
Definition
COM_NodeOperation.cc:87
blender::compositor::Node
Definition
COM_Node.h:25
blender::compositor::Node::get_output_socket
NodeOutput * get_output_socket(unsigned int index=0) const
Definition
COM_Node.cc:85
blender::compositor::SceneTimeNode::convert_to_operations
void convert_to_operations(NodeConverter &converter, const CompositorContext &context) const override
convert node to operation
Definition
COM_SceneTimeNode.cc:16
blender::compositor::SceneTimeNode::SceneTimeNode
SceneTimeNode(bNode *editor_node)
Definition
COM_SceneTimeNode.cc:11
blender::compositor::SetValueOperation
Definition
COM_SetValueOperation.h:15
blender::compositor::SetValueOperation::set_value
void set_value(float value)
Definition
COM_SetValueOperation.h:34
blender::compositor
Definition
COM_JumpFloodingAlgorithm.cc:20
Scene
Definition
DNA_scene_types.h:1988
bNode
Definition
DNA_node_types.h:357
Generated on Thu Feb 6 2025 07:36:39 for Blender by
doxygen
1.11.0