Blender
V3.3
source
blender
compositor
operations
COM_CurveBaseOperation.cc
Go to the documentation of this file.
1
/* SPDX-License-Identifier: GPL-2.0-or-later
2
* Copyright 2011 Blender Foundation. */
3
4
#include "
COM_CurveBaseOperation.h
"
5
6
#include "
BKE_colortools.h
"
7
8
namespace
blender::compositor
{
9
10
CurveBaseOperation::CurveBaseOperation
()
11
{
12
curve_mapping_
=
nullptr
;
13
flags_
.
can_be_constant
=
true
;
14
}
15
16
CurveBaseOperation::~CurveBaseOperation
()
17
{
18
if
(
curve_mapping_
) {
19
BKE_curvemapping_free
(
curve_mapping_
);
20
curve_mapping_
=
nullptr
;
21
}
22
}
23
24
void
CurveBaseOperation::init_execution
()
25
{
26
BKE_curvemapping_init
(
curve_mapping_
);
27
}
28
void
CurveBaseOperation::deinit_execution
()
29
{
30
if
(
curve_mapping_
) {
31
BKE_curvemapping_free
(
curve_mapping_
);
32
curve_mapping_
=
nullptr
;
33
}
34
}
35
36
void
CurveBaseOperation::set_curve_mapping
(
CurveMapping
*mapping)
37
{
38
/* duplicate the curve to avoid glitches while drawing, see bug T32374. */
39
if
(
curve_mapping_
) {
40
BKE_curvemapping_free
(
curve_mapping_
);
41
}
42
curve_mapping_
=
BKE_curvemapping_copy
(mapping);
43
}
44
45
}
// namespace blender::compositor
BKE_colortools.h
BKE_curvemapping_init
void BKE_curvemapping_init(struct CurveMapping *cumap)
Definition:
colortools.c:1235
BKE_curvemapping_copy
struct CurveMapping * BKE_curvemapping_copy(const struct CurveMapping *cumap)
BKE_curvemapping_free
void BKE_curvemapping_free(struct CurveMapping *cumap)
Definition:
colortools.c:103
COM_CurveBaseOperation.h
blender::compositor::CurveBaseOperation::set_curve_mapping
void set_curve_mapping(CurveMapping *mapping)
Definition:
COM_CurveBaseOperation.cc:36
blender::compositor::CurveBaseOperation::init_execution
void init_execution() override
Definition:
COM_CurveBaseOperation.cc:24
blender::compositor::CurveBaseOperation::deinit_execution
void deinit_execution() override
Definition:
COM_CurveBaseOperation.cc:28
blender::compositor::CurveBaseOperation::~CurveBaseOperation
~CurveBaseOperation()
Definition:
COM_CurveBaseOperation.cc:16
blender::compositor::CurveBaseOperation::CurveBaseOperation
CurveBaseOperation()
Definition:
COM_CurveBaseOperation.cc:10
blender::compositor::CurveBaseOperation::curve_mapping_
CurveMapping * curve_mapping_
Definition:
COM_CurveBaseOperation.h:17
blender::compositor::NodeOperation::flags_
NodeOperationFlags flags_
Definition:
COM_NodeOperation.h:347
blender::compositor
Definition:
COM_defines.h:10
CurveMapping
Definition:
DNA_color_types.h:59
blender::compositor::NodeOperationFlags::can_be_constant
bool can_be_constant
Definition:
COM_NodeOperation.h:238
Generated on Tue Oct 22 2024 13:18:25 for Blender by
doxygen
1.9.1