Cleanup: convert compositor nodes to c++
- Many cleanups of to use list base - Some variable changes These change is needed to migrate to the new socket builder API Reviewed By: manzanilla Differential Revision: https://developer.blender.org/D12366
This commit is contained in:
parent
87e315c237
commit
c7a7c3f5e5
|
@ -45,93 +45,93 @@ set(INC
|
|||
|
||||
|
||||
set(SRC
|
||||
composite/nodes/node_composite_alphaOver.c
|
||||
composite/nodes/node_composite_antialiasing.c
|
||||
composite/nodes/node_composite_bilateralblur.c
|
||||
composite/nodes/node_composite_blur.c
|
||||
composite/nodes/node_composite_bokehblur.c
|
||||
composite/nodes/node_composite_bokehimage.c
|
||||
composite/nodes/node_composite_boxmask.c
|
||||
composite/nodes/node_composite_brightness.c
|
||||
composite/nodes/node_composite_channelMatte.c
|
||||
composite/nodes/node_composite_chromaMatte.c
|
||||
composite/nodes/node_composite_colorMatte.c
|
||||
composite/nodes/node_composite_colorSpill.c
|
||||
composite/nodes/node_composite_colorbalance.c
|
||||
composite/nodes/node_composite_colorcorrection.c
|
||||
composite/nodes/node_composite_common.c
|
||||
composite/nodes/node_composite_composite.c
|
||||
composite/nodes/node_composite_cornerpin.c
|
||||
composite/nodes/node_composite_crop.c
|
||||
composite/nodes/node_composite_alphaOver.cc
|
||||
composite/nodes/node_composite_antialiasing.cc
|
||||
composite/nodes/node_composite_bilateralblur.cc
|
||||
composite/nodes/node_composite_blur.cc
|
||||
composite/nodes/node_composite_bokehblur.cc
|
||||
composite/nodes/node_composite_bokehimage.cc
|
||||
composite/nodes/node_composite_boxmask.cc
|
||||
composite/nodes/node_composite_brightness.cc
|
||||
composite/nodes/node_composite_channelMatte.cc
|
||||
composite/nodes/node_composite_chromaMatte.cc
|
||||
composite/nodes/node_composite_colorMatte.cc
|
||||
composite/nodes/node_composite_colorSpill.cc
|
||||
composite/nodes/node_composite_colorbalance.cc
|
||||
composite/nodes/node_composite_colorcorrection.cc
|
||||
composite/nodes/node_composite_common.cc
|
||||
composite/nodes/node_composite_composite.cc
|
||||
composite/nodes/node_composite_cornerpin.cc
|
||||
composite/nodes/node_composite_crop.cc
|
||||
composite/nodes/node_composite_cryptomatte.cc
|
||||
composite/nodes/node_composite_curves.c
|
||||
composite/nodes/node_composite_defocus.c
|
||||
composite/nodes/node_composite_denoise.c
|
||||
composite/nodes/node_composite_despeckle.c
|
||||
composite/nodes/node_composite_diffMatte.c
|
||||
composite/nodes/node_composite_dilate.c
|
||||
composite/nodes/node_composite_directionalblur.c
|
||||
composite/nodes/node_composite_displace.c
|
||||
composite/nodes/node_composite_distanceMatte.c
|
||||
composite/nodes/node_composite_doubleEdgeMask.c
|
||||
composite/nodes/node_composite_ellipsemask.c
|
||||
composite/nodes/node_composite_exposure.c
|
||||
composite/nodes/node_composite_filter.c
|
||||
composite/nodes/node_composite_flip.c
|
||||
composite/nodes/node_composite_gamma.c
|
||||
composite/nodes/node_composite_glare.c
|
||||
composite/nodes/node_composite_hueSatVal.c
|
||||
composite/nodes/node_composite_huecorrect.c
|
||||
composite/nodes/node_composite_idMask.c
|
||||
composite/nodes/node_composite_image.c
|
||||
composite/nodes/node_composite_inpaint.c
|
||||
composite/nodes/node_composite_invert.c
|
||||
composite/nodes/node_composite_keying.c
|
||||
composite/nodes/node_composite_keyingscreen.c
|
||||
composite/nodes/node_composite_lensdist.c
|
||||
composite/nodes/node_composite_levels.c
|
||||
composite/nodes/node_composite_lummaMatte.c
|
||||
composite/nodes/node_composite_mapRange.c
|
||||
composite/nodes/node_composite_mapUV.c
|
||||
composite/nodes/node_composite_mapValue.c
|
||||
composite/nodes/node_composite_mask.c
|
||||
composite/nodes/node_composite_math.c
|
||||
composite/nodes/node_composite_mixrgb.c
|
||||
composite/nodes/node_composite_movieclip.c
|
||||
composite/nodes/node_composite_moviedistortion.c
|
||||
composite/nodes/node_composite_normal.c
|
||||
composite/nodes/node_composite_normalize.c
|
||||
composite/nodes/node_composite_outputFile.c
|
||||
composite/nodes/node_composite_pixelate.c
|
||||
composite/nodes/node_composite_planetrackdeform.c
|
||||
composite/nodes/node_composite_posterize.c
|
||||
composite/nodes/node_composite_premulkey.c
|
||||
composite/nodes/node_composite_rgb.c
|
||||
composite/nodes/node_composite_rotate.c
|
||||
composite/nodes/node_composite_scale.c
|
||||
composite/nodes/node_composite_sepcombHSVA.c
|
||||
composite/nodes/node_composite_sepcombRGBA.c
|
||||
composite/nodes/node_composite_sepcombYCCA.c
|
||||
composite/nodes/node_composite_sepcombYUVA.c
|
||||
composite/nodes/node_composite_setalpha.c
|
||||
composite/nodes/node_composite_splitViewer.c
|
||||
composite/nodes/node_composite_stabilize2d.c
|
||||
composite/nodes/node_composite_sunbeams.c
|
||||
composite/nodes/node_composite_switch.c
|
||||
composite/nodes/node_composite_switchview.c
|
||||
composite/nodes/node_composite_texture.c
|
||||
composite/nodes/node_composite_tonemap.c
|
||||
composite/nodes/node_composite_trackpos.c
|
||||
composite/nodes/node_composite_transform.c
|
||||
composite/nodes/node_composite_translate.c
|
||||
composite/nodes/node_composite_valToRgb.c
|
||||
composite/nodes/node_composite_value.c
|
||||
composite/nodes/node_composite_vecBlur.c
|
||||
composite/nodes/node_composite_viewer.c
|
||||
composite/nodes/node_composite_zcombine.c
|
||||
composite/nodes/node_composite_curves.cc
|
||||
composite/nodes/node_composite_defocus.cc
|
||||
composite/nodes/node_composite_denoise.cc
|
||||
composite/nodes/node_composite_despeckle.cc
|
||||
composite/nodes/node_composite_diffMatte.cc
|
||||
composite/nodes/node_composite_dilate.cc
|
||||
composite/nodes/node_composite_directionalblur.cc
|
||||
composite/nodes/node_composite_displace.cc
|
||||
composite/nodes/node_composite_distanceMatte.cc
|
||||
composite/nodes/node_composite_doubleEdgeMask.cc
|
||||
composite/nodes/node_composite_ellipsemask.cc
|
||||
composite/nodes/node_composite_exposure.cc
|
||||
composite/nodes/node_composite_filter.cc
|
||||
composite/nodes/node_composite_flip.cc
|
||||
composite/nodes/node_composite_gamma.cc
|
||||
composite/nodes/node_composite_glare.cc
|
||||
composite/nodes/node_composite_hueSatVal.cc
|
||||
composite/nodes/node_composite_huecorrect.cc
|
||||
composite/nodes/node_composite_idMask.cc
|
||||
composite/nodes/node_composite_image.cc
|
||||
composite/nodes/node_composite_inpaint.cc
|
||||
composite/nodes/node_composite_invert.cc
|
||||
composite/nodes/node_composite_keying.cc
|
||||
composite/nodes/node_composite_keyingscreen.cc
|
||||
composite/nodes/node_composite_lensdist.cc
|
||||
composite/nodes/node_composite_levels.cc
|
||||
composite/nodes/node_composite_lummaMatte.cc
|
||||
composite/nodes/node_composite_mapRange.cc
|
||||
composite/nodes/node_composite_mapUV.cc
|
||||
composite/nodes/node_composite_mapValue.cc
|
||||
composite/nodes/node_composite_mask.cc
|
||||
composite/nodes/node_composite_math.cc
|
||||
composite/nodes/node_composite_mixrgb.cc
|
||||
composite/nodes/node_composite_movieclip.cc
|
||||
composite/nodes/node_composite_moviedistortion.cc
|
||||
composite/nodes/node_composite_normal.cc
|
||||
composite/nodes/node_composite_normalize.cc
|
||||
composite/nodes/node_composite_outputFile.cc
|
||||
composite/nodes/node_composite_pixelate.cc
|
||||
composite/nodes/node_composite_planetrackdeform.cc
|
||||
composite/nodes/node_composite_posterize.cc
|
||||
composite/nodes/node_composite_premulkey.cc
|
||||
composite/nodes/node_composite_rgb.cc
|
||||
composite/nodes/node_composite_rotate.cc
|
||||
composite/nodes/node_composite_scale.cc
|
||||
composite/nodes/node_composite_sepcombHSVA.cc
|
||||
composite/nodes/node_composite_sepcombRGBA.cc
|
||||
composite/nodes/node_composite_sepcombYCCA.cc
|
||||
composite/nodes/node_composite_sepcombYUVA.cc
|
||||
composite/nodes/node_composite_setalpha.cc
|
||||
composite/nodes/node_composite_splitViewer.cc
|
||||
composite/nodes/node_composite_stabilize2d.cc
|
||||
composite/nodes/node_composite_sunbeams.cc
|
||||
composite/nodes/node_composite_switch.cc
|
||||
composite/nodes/node_composite_switchview.cc
|
||||
composite/nodes/node_composite_texture.cc
|
||||
composite/nodes/node_composite_tonemap.cc
|
||||
composite/nodes/node_composite_trackpos.cc
|
||||
composite/nodes/node_composite_transform.cc
|
||||
composite/nodes/node_composite_translate.cc
|
||||
composite/nodes/node_composite_valToRgb.cc
|
||||
composite/nodes/node_composite_value.cc
|
||||
composite/nodes/node_composite_vecBlur.cc
|
||||
composite/nodes/node_composite_viewer.cc
|
||||
composite/nodes/node_composite_zcombine.cc
|
||||
|
||||
composite/node_composite_tree.c
|
||||
composite/node_composite_util.c
|
||||
composite/node_composite_tree.cc
|
||||
composite/node_composite_util.cc
|
||||
|
||||
function/nodes/legacy/node_fn_random_float.cc
|
||||
|
||||
|
@ -383,7 +383,7 @@ set(SRC
|
|||
intern/node_util.c
|
||||
intern/type_conversions.cc
|
||||
|
||||
composite/node_composite_util.h
|
||||
composite/node_composite_util.hh
|
||||
function/node_function_util.hh
|
||||
shader/node_shader_util.h
|
||||
geometry/node_geometry_util.hh
|
||||
|
|
|
@ -145,7 +145,7 @@ void node_cmp_rlayers_register_pass(struct bNodeTree *ntree,
|
|||
struct Scene *scene,
|
||||
struct ViewLayer *view_layer,
|
||||
const char *name,
|
||||
int type);
|
||||
eNodeSocketDatatype type);
|
||||
const char *node_cmp_rlayers_sock_to_pass(int sock_index);
|
||||
|
||||
void register_node_type_cmp_custom_group(bNodeType *ntype);
|
||||
|
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup nodes
|
||||
*/
|
||||
|
||||
#include <stdio.h>
|
||||
#include <cstdio>
|
||||
|
||||
#include "DNA_color_types.h"
|
||||
#include "DNA_node_types.h"
|
||||
|
@ -41,7 +41,7 @@
|
|||
#include "RNA_access.h"
|
||||
|
||||
#include "NOD_composite.h"
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
#ifdef WITH_COMPOSITOR
|
||||
# include "COM_compositor.h"
|
||||
|
@ -55,7 +55,7 @@ static void composite_get_from_context(const bContext *C,
|
|||
{
|
||||
Scene *scene = CTX_data_scene(C);
|
||||
|
||||
*r_from = NULL;
|
||||
*r_from = nullptr;
|
||||
*r_id = &scene->id;
|
||||
*r_ntree = scene->nodetree;
|
||||
}
|
||||
|
@ -77,19 +77,16 @@ static void foreach_nodeclass(Scene *UNUSED(scene), void *calldata, bNodeClassCa
|
|||
|
||||
static void free_node_cache(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
bNodeSocket *sock;
|
||||
|
||||
for (sock = node->outputs.first; sock; sock = sock->next) {
|
||||
LISTBASE_FOREACH (bNodeSocket *, sock, &node->outputs) {
|
||||
if (sock->cache) {
|
||||
sock->cache = NULL;
|
||||
sock->cache = nullptr;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static void free_cache(bNodeTree *ntree)
|
||||
{
|
||||
bNode *node;
|
||||
for (node = ntree->nodes.first; node; node = node->next) {
|
||||
LISTBASE_FOREACH (bNode *, node, &ntree->nodes) {
|
||||
free_node_cache(ntree, node);
|
||||
}
|
||||
}
|
||||
|
@ -98,9 +95,9 @@ static void free_cache(bNodeTree *ntree)
|
|||
static void localize(bNodeTree *localtree, bNodeTree *ntree)
|
||||
{
|
||||
|
||||
bNode *node = ntree->nodes.first;
|
||||
bNode *local_node = localtree->nodes.first;
|
||||
while (node != NULL) {
|
||||
bNode *node = (bNode *)ntree->nodes.first;
|
||||
bNode *local_node = (bNode *)localtree->nodes.first;
|
||||
while (node != nullptr) {
|
||||
|
||||
/* Ensure new user input gets handled ok. */
|
||||
node->need_exec = 0;
|
||||
|
@ -115,16 +112,16 @@ static void localize(bNodeTree *localtree, bNodeTree *ntree)
|
|||
local_node->id = (ID *)node->id;
|
||||
}
|
||||
else {
|
||||
local_node->id = NULL;
|
||||
local_node->id = nullptr;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
bNodeSocket *output_sock = node->outputs.first;
|
||||
bNodeSocket *local_output_sock = local_node->outputs.first;
|
||||
while (output_sock != NULL) {
|
||||
bNodeSocket *output_sock = (bNodeSocket *)node->outputs.first;
|
||||
bNodeSocket *local_output_sock = (bNodeSocket *)local_node->outputs.first;
|
||||
while (output_sock != nullptr) {
|
||||
local_output_sock->cache = output_sock->cache;
|
||||
output_sock->cache = NULL;
|
||||
output_sock->cache = nullptr;
|
||||
/* This is actually link to original: someone was just lazy enough and tried to save few
|
||||
* bytes in the cost of readability. */
|
||||
local_output_sock->new_sock = output_sock;
|
||||
|
@ -151,7 +148,7 @@ static void local_merge(Main *bmain, bNodeTree *localtree, bNodeTree *ntree)
|
|||
/* move over the compbufs and previews */
|
||||
BKE_node_preview_merge_tree(ntree, localtree, true);
|
||||
|
||||
for (lnode = localtree->nodes.first; lnode; lnode = lnode->next) {
|
||||
for (lnode = (bNode *)localtree->nodes.first; lnode; lnode = lnode->next) {
|
||||
if (ntreeNodeExists(ntree, lnode->new_node)) {
|
||||
if (ELEM(lnode->type, CMP_NODE_VIEWER, CMP_NODE_SPLITVIEWER)) {
|
||||
if (lnode->id && (lnode->flag & NODE_DO_OUTPUT)) {
|
||||
|
@ -165,18 +162,19 @@ static void local_merge(Main *bmain, bNodeTree *localtree, bNodeTree *ntree)
|
|||
* copied back to original node */
|
||||
if (lnode->storage) {
|
||||
if (lnode->new_node->storage) {
|
||||
BKE_tracking_distortion_free(lnode->new_node->storage);
|
||||
BKE_tracking_distortion_free((MovieDistortion *)lnode->new_node->storage);
|
||||
}
|
||||
|
||||
lnode->new_node->storage = BKE_tracking_distortion_copy(lnode->storage);
|
||||
lnode->new_node->storage = BKE_tracking_distortion_copy(
|
||||
(MovieDistortion *)lnode->storage);
|
||||
}
|
||||
}
|
||||
|
||||
for (lsock = lnode->outputs.first; lsock; lsock = lsock->next) {
|
||||
for (lsock = (bNodeSocket *)lnode->outputs.first; lsock; lsock = lsock->next) {
|
||||
if (ntreeOutputExists(lnode->new_node, lsock->new_sock)) {
|
||||
lsock->new_sock->cache = lsock->cache;
|
||||
lsock->cache = NULL;
|
||||
lsock->new_sock = NULL;
|
||||
lsock->cache = nullptr;
|
||||
lsock->new_sock = nullptr;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -216,8 +214,8 @@ bNodeTreeType *ntreeType_Composite;
|
|||
|
||||
void register_node_tree_type_cmp(void)
|
||||
{
|
||||
bNodeTreeType *tt = ntreeType_Composite = MEM_callocN(sizeof(bNodeTreeType),
|
||||
"compositor node tree type");
|
||||
bNodeTreeType *tt = ntreeType_Composite = (bNodeTreeType *)MEM_callocN(
|
||||
sizeof(bNodeTreeType), "compositor node tree type");
|
||||
|
||||
tt->type = NTREE_COMPOSIT;
|
||||
strcpy(tt->idname, "CompositorNodeTree");
|
||||
|
@ -241,9 +239,6 @@ void register_node_tree_type_cmp(void)
|
|||
ntreeTypeAdd(tt);
|
||||
}
|
||||
|
||||
extern void *COM_linker_hack; /* Quiet warning. */
|
||||
void *COM_linker_hack = NULL;
|
||||
|
||||
void ntreeCompositExecTree(Scene *scene,
|
||||
bNodeTree *ntree,
|
||||
RenderData *rd,
|
||||
|
@ -276,13 +271,11 @@ void ntreeCompositExecTree(Scene *scene,
|
|||
*/
|
||||
void ntreeCompositUpdateRLayers(bNodeTree *ntree)
|
||||
{
|
||||
bNode *node;
|
||||
|
||||
if (ntree == NULL) {
|
||||
if (ntree == nullptr) {
|
||||
return;
|
||||
}
|
||||
|
||||
for (node = ntree->nodes.first; node; node = node->next) {
|
||||
LISTBASE_FOREACH (bNode *, node, &ntree->nodes) {
|
||||
if (node->type == CMP_NODE_R_LAYERS) {
|
||||
node_cmp_rlayers_outputs(ntree, node);
|
||||
}
|
||||
|
@ -295,13 +288,11 @@ void ntreeCompositRegisterPass(bNodeTree *ntree,
|
|||
const char *name,
|
||||
eNodeSocketDatatype type)
|
||||
{
|
||||
bNode *node;
|
||||
|
||||
if (ntree == NULL) {
|
||||
if (ntree == nullptr) {
|
||||
return;
|
||||
}
|
||||
|
||||
for (node = ntree->nodes.first; node; node = node->next) {
|
||||
LISTBASE_FOREACH (bNode *, node, &ntree->nodes) {
|
||||
if (node->type == CMP_NODE_R_LAYERS) {
|
||||
node_cmp_rlayers_register_pass(ntree, node, scene, view_layer, name, type);
|
||||
}
|
||||
|
@ -317,11 +308,10 @@ void ntreeCompositTagRender(Scene *scene)
|
|||
* This is still rather weak though,
|
||||
* ideally render struct would store own main AND original G_MAIN. */
|
||||
|
||||
for (Scene *sce_iter = G_MAIN->scenes.first; sce_iter; sce_iter = sce_iter->id.next) {
|
||||
for (Scene *sce_iter = (Scene *)G_MAIN->scenes.first; sce_iter;
|
||||
sce_iter = (Scene *)sce_iter->id.next) {
|
||||
if (sce_iter->nodetree) {
|
||||
bNode *node;
|
||||
|
||||
for (node = sce_iter->nodetree->nodes.first; node; node = node->next) {
|
||||
LISTBASE_FOREACH (bNode *, node, &sce_iter->nodetree->nodes) {
|
||||
if (node->id == (ID *)scene || node->type == CMP_NODE_COMPOSITE) {
|
||||
nodeUpdate(sce_iter->nodetree, node);
|
||||
}
|
||||
|
@ -336,13 +326,11 @@ void ntreeCompositTagRender(Scene *scene)
|
|||
/* XXX after render animation system gets a refresh, this call allows composite to end clean */
|
||||
void ntreeCompositClearTags(bNodeTree *ntree)
|
||||
{
|
||||
bNode *node;
|
||||
|
||||
if (ntree == NULL) {
|
||||
if (ntree == nullptr) {
|
||||
return;
|
||||
}
|
||||
|
||||
for (node = ntree->nodes.first; node; node = node->next) {
|
||||
LISTBASE_FOREACH (bNode *, node, &ntree->nodes) {
|
||||
node->need_exec = 0;
|
||||
if (node->type == NODE_GROUP) {
|
||||
ntreeCompositClearTags((bNodeTree *)node->id);
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup nodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
bool cmp_node_poll_default(bNodeType *UNUSED(ntype),
|
||||
bNodeTree *ntree,
|
||||
|
@ -36,11 +36,10 @@ bool cmp_node_poll_default(bNodeType *UNUSED(ntype),
|
|||
|
||||
void cmp_node_update_default(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
bNodeSocket *sock;
|
||||
for (sock = node->outputs.first; sock; sock = sock->next) {
|
||||
LISTBASE_FOREACH (bNodeSocket *, sock, &node->outputs) {
|
||||
if (sock->cache) {
|
||||
// free_compbuf(sock->cache);
|
||||
// sock->cache = NULL;
|
||||
// sock->cache = nullptr;
|
||||
}
|
||||
}
|
||||
node->need_exec = 1;
|
|
@ -48,19 +48,11 @@
|
|||
/* only for forward declarations */
|
||||
#include "NOD_composite.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#define CMP_SCALE_MAX 12000
|
||||
|
||||
bool cmp_node_poll_default(struct bNodeType *ntype,
|
||||
struct bNodeTree *ntree,
|
||||
const char **r_disabled_info);
|
||||
const char **r_disabled_hint);
|
||||
void cmp_node_update_default(struct bNodeTree *ntree, struct bNode *node);
|
||||
void cmp_node_type_base(
|
||||
struct bNodeType *ntype, int type, const char *name, short nclass, short flag);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** ALPHAOVER ******************** */
|
||||
static bNodeSocketTemplate cmp_node_alphaover_in[] = {
|
|
@ -23,7 +23,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** Anti-Aliasing (SMAA 1x) ******************** */
|
||||
|
||||
|
@ -34,7 +34,8 @@ static bNodeSocketTemplate cmp_node_antialiasing_out[] = {{SOCK_RGBA, N_("Image"
|
|||
|
||||
static void node_composit_init_antialiasing(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
NodeAntiAliasingData *data = MEM_callocN(sizeof(NodeAntiAliasingData), "node antialiasing data");
|
||||
NodeAntiAliasingData *data = (NodeAntiAliasingData *)MEM_callocN(sizeof(NodeAntiAliasingData),
|
||||
"node antialiasing data");
|
||||
|
||||
data->threshold = CMP_DEFAULT_SMAA_THRESHOLD;
|
||||
data->contrast_limit = CMP_DEFAULT_SMAA_CONTRAST_LIMIT;
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** BILATERALBLUR ******************** */
|
||||
static bNodeSocketTemplate cmp_node_bilateralblur_in[] = {
|
||||
|
@ -36,8 +36,8 @@ static bNodeSocketTemplate cmp_node_bilateralblur_out[] = {
|
|||
|
||||
static void node_composit_init_bilateralblur(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
NodeBilateralBlurData *nbbd = MEM_callocN(sizeof(NodeBilateralBlurData),
|
||||
"node bilateral blur data");
|
||||
NodeBilateralBlurData *nbbd = (NodeBilateralBlurData *)MEM_callocN(sizeof(NodeBilateralBlurData),
|
||||
"node bilateral blur data");
|
||||
node->storage = nbbd;
|
||||
nbbd->iter = 1;
|
||||
nbbd->sigma_color = 0.3;
|
|
@ -22,7 +22,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** BLUR ******************** */
|
||||
static bNodeSocketTemplate cmp_node_blur_in[] = {
|
||||
|
@ -33,7 +33,7 @@ static bNodeSocketTemplate cmp_node_blur_out[] = {{SOCK_RGBA, N_("Image")}, {-1,
|
|||
|
||||
static void node_composit_init_blur(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
NodeBlurData *data = MEM_callocN(sizeof(NodeBlurData), "node blur data");
|
||||
NodeBlurData *data = (NodeBlurData *)MEM_callocN(sizeof(NodeBlurData), "node blur data");
|
||||
data->filtertype = R_FILTER_GAUSS;
|
||||
node->storage = data;
|
||||
}
|
|
@ -22,7 +22,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "../node_composite_util.h"
|
||||
#include "../node_composite_util.hh"
|
||||
|
||||
/* **************** BLUR ******************** */
|
||||
static bNodeSocketTemplate cmp_node_bokehblur_in[] = {
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "../node_composite_util.h"
|
||||
#include "../node_composite_util.hh"
|
||||
|
||||
/* **************** Bokeh image Tools ******************** */
|
||||
|
||||
|
@ -32,7 +32,7 @@ static bNodeSocketTemplate cmp_node_bokehimage_out[] = {
|
|||
|
||||
static void node_composit_init_bokehimage(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
NodeBokehImage *data = MEM_callocN(sizeof(NodeBokehImage), "NodeBokehImage");
|
||||
NodeBokehImage *data = (NodeBokehImage *)MEM_callocN(sizeof(NodeBokehImage), "NodeBokehImage");
|
||||
data->angle = 0.0f;
|
||||
data->flaps = 5;
|
||||
data->rounding = 0.0f;
|
||||
|
@ -46,7 +46,7 @@ void register_node_type_cmp_bokehimage(void)
|
|||
static bNodeType ntype;
|
||||
|
||||
cmp_node_type_base(&ntype, CMP_NODE_BOKEHIMAGE, "Bokeh Image", NODE_CLASS_INPUT, NODE_PREVIEW);
|
||||
node_type_socket_templates(&ntype, NULL, cmp_node_bokehimage_out);
|
||||
node_type_socket_templates(&ntype, nullptr, cmp_node_bokehimage_out);
|
||||
node_type_init(&ntype, node_composit_init_bokehimage);
|
||||
node_type_storage(
|
||||
&ntype, "NodeBokehImage", node_free_standard_storage, node_copy_standard_storage);
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "../node_composite_util.h"
|
||||
#include "../node_composite_util.hh"
|
||||
|
||||
/* **************** SCALAR MATH ******************** */
|
||||
static bNodeSocketTemplate cmp_node_boxmask_in[] = {
|
||||
|
@ -34,7 +34,7 @@ static bNodeSocketTemplate cmp_node_boxmask_out[] = {
|
|||
|
||||
static void node_composit_init_boxmask(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
NodeBoxMask *data = MEM_callocN(sizeof(NodeBoxMask), "NodeBoxMask");
|
||||
NodeBoxMask *data = (NodeBoxMask *)MEM_callocN(sizeof(NodeBoxMask), "NodeBoxMask");
|
||||
data->x = 0.5;
|
||||
data->y = 0.5;
|
||||
data->width = 0.2;
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** Brigh and contrsast ******************** */
|
||||
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* ******************* Channel Matte Node ********************************* */
|
||||
static bNodeSocketTemplate cmp_node_channel_matte_in[] = {
|
||||
|
@ -37,7 +37,7 @@ static bNodeSocketTemplate cmp_node_channel_matte_out[] = {
|
|||
|
||||
static void node_composit_init_channel_matte(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
NodeChroma *c = MEM_callocN(sizeof(NodeChroma), "node chroma");
|
||||
NodeChroma *c = (NodeChroma *)MEM_callocN(sizeof(NodeChroma), "node chroma");
|
||||
node->storage = c;
|
||||
c->t1 = 1.0f;
|
||||
c->t2 = 0.0f;
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* ******************* Chroma Key ********************************************************** */
|
||||
static bNodeSocketTemplate cmp_node_chroma_in[] = {
|
||||
|
@ -38,7 +38,7 @@ static bNodeSocketTemplate cmp_node_chroma_out[] = {
|
|||
|
||||
static void node_composit_init_chroma_matte(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
NodeChroma *c = MEM_callocN(sizeof(NodeChroma), "node chroma");
|
||||
NodeChroma *c = (NodeChroma *)MEM_callocN(sizeof(NodeChroma), "node chroma");
|
||||
node->storage = c;
|
||||
c->t1 = DEG2RADF(30.0f);
|
||||
c->t2 = DEG2RADF(10.0f);
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* ******************* Color Key ********************************************************** */
|
||||
static bNodeSocketTemplate cmp_node_color_in[] = {
|
||||
|
@ -38,7 +38,7 @@ static bNodeSocketTemplate cmp_node_color_out[] = {
|
|||
|
||||
static void node_composit_init_color_matte(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
NodeChroma *c = MEM_callocN(sizeof(NodeChroma), "node color");
|
||||
NodeChroma *c = (NodeChroma *)MEM_callocN(sizeof(NodeChroma), "node color");
|
||||
node->storage = c;
|
||||
c->t1 = 0.01f;
|
||||
c->t2 = 0.1f;
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* ******************* Color Spill Suppression ********************************* */
|
||||
static bNodeSocketTemplate cmp_node_color_spill_in[] = {
|
||||
|
@ -37,7 +37,7 @@ static bNodeSocketTemplate cmp_node_color_spill_out[] = {
|
|||
|
||||
static void node_composit_init_color_spill(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
NodeColorspill *ncs = MEM_callocN(sizeof(NodeColorspill), "node colorspill");
|
||||
NodeColorspill *ncs = (NodeColorspill *)MEM_callocN(sizeof(NodeColorspill), "node colorspill");
|
||||
node->storage = ncs;
|
||||
node->custom1 = 2; /* green channel */
|
||||
node->custom2 = 0; /* simple limit algorithm */
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* ******************* Color Balance ********************************* */
|
||||
static bNodeSocketTemplate cmp_node_colorbalance_in[] = {
|
||||
|
@ -43,10 +43,9 @@ static bNodeSocketTemplate cmp_node_colorbalance_out[] = {
|
|||
|
||||
void ntreeCompositColorBalanceSyncFromLGG(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
NodeColorBalance *n = node->storage;
|
||||
int c;
|
||||
NodeColorBalance *n = (NodeColorBalance *)node->storage;
|
||||
|
||||
for (c = 0; c < 3; c++) {
|
||||
for (int c = 0; c < 3; c++) {
|
||||
n->slope[c] = (2.0f - n->lift[c]) * n->gain[c];
|
||||
n->offset[c] = (n->lift[c] - 1.0f) * n->gain[c];
|
||||
n->power[c] = (n->gamma[c] != 0.0f) ? 1.0f / n->gamma[c] : 1000000.0f;
|
||||
|
@ -55,10 +54,9 @@ void ntreeCompositColorBalanceSyncFromLGG(bNodeTree *UNUSED(ntree), bNode *node)
|
|||
|
||||
void ntreeCompositColorBalanceSyncFromCDL(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
NodeColorBalance *n = node->storage;
|
||||
int c;
|
||||
NodeColorBalance *n = (NodeColorBalance *)node->storage;
|
||||
|
||||
for (c = 0; c < 3; c++) {
|
||||
for (int c = 0; c < 3; c++) {
|
||||
float d = n->slope[c] + n->offset[c];
|
||||
n->lift[c] = (d != 0.0f ? n->slope[c] + 2.0f * n->offset[c] / d : 0.0f);
|
||||
n->gain[c] = d;
|
||||
|
@ -68,7 +66,8 @@ void ntreeCompositColorBalanceSyncFromCDL(bNodeTree *UNUSED(ntree), bNode *node)
|
|||
|
||||
static void node_composit_init_colorbalance(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
NodeColorBalance *n = node->storage = MEM_callocN(sizeof(NodeColorBalance), "node colorbalance");
|
||||
NodeColorBalance *n = (NodeColorBalance *)MEM_callocN(sizeof(NodeColorBalance),
|
||||
"node colorbalance");
|
||||
|
||||
n->lift[0] = n->lift[1] = n->lift[2] = 1.0f;
|
||||
n->gamma[0] = n->gamma[1] = n->gamma[2] = 1.0f;
|
||||
|
@ -77,6 +76,7 @@ static void node_composit_init_colorbalance(bNodeTree *UNUSED(ntree), bNode *nod
|
|||
n->slope[0] = n->slope[1] = n->slope[2] = 1.0f;
|
||||
n->offset[0] = n->offset[1] = n->offset[2] = 0.0f;
|
||||
n->power[0] = n->power[1] = n->power[2] = 1.0f;
|
||||
node->storage = n;
|
||||
}
|
||||
|
||||
void register_node_type_cmp_colorbalance(void)
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* ******************* Color Balance ********************************* */
|
||||
static bNodeSocketTemplate cmp_node_colorcorrection_in[] = {
|
||||
|
@ -37,8 +37,8 @@ static bNodeSocketTemplate cmp_node_colorcorrection_out[] = {
|
|||
|
||||
static void node_composit_init_colorcorrection(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
NodeColorCorrection *n = node->storage = MEM_callocN(sizeof(NodeColorCorrection),
|
||||
"node colorcorrection");
|
||||
NodeColorCorrection *n = (NodeColorCorrection *)MEM_callocN(sizeof(NodeColorCorrection),
|
||||
"node colorcorrection");
|
||||
n->startmidtones = 0.2f;
|
||||
n->endmidtones = 0.7f;
|
||||
n->master.contrast = 1.0f;
|
||||
|
@ -62,6 +62,7 @@ static void node_composit_init_colorcorrection(bNodeTree *UNUSED(ntree), bNode *
|
|||
n->highlights.lift = 0.0f;
|
||||
n->highlights.saturation = 1.0f;
|
||||
node->custom1 = 7; // red + green + blue enabled
|
||||
node->storage = n;
|
||||
}
|
||||
|
||||
void register_node_type_cmp_colorcorrection(void)
|
|
@ -26,7 +26,7 @@
|
|||
|
||||
#include "NOD_common.h"
|
||||
#include "node_common.h"
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
#include "BKE_node.h"
|
||||
|
||||
|
@ -46,10 +46,10 @@ void register_node_type_cmp_group(void)
|
|||
ntype.insert_link = node_insert_link_default;
|
||||
ntype.update_internal_links = node_update_internal_links_default;
|
||||
ntype.rna_ext.srna = RNA_struct_find("CompositorNodeGroup");
|
||||
BLI_assert(ntype.rna_ext.srna != NULL);
|
||||
BLI_assert(ntype.rna_ext.srna != nullptr);
|
||||
RNA_struct_blender_type_set(ntype.rna_ext.srna, &ntype);
|
||||
|
||||
node_type_socket_templates(&ntype, NULL, NULL);
|
||||
node_type_socket_templates(&ntype, nullptr, nullptr);
|
||||
node_type_size(&ntype, 140, 60, 400);
|
||||
node_type_label(&ntype, node_group_label);
|
||||
node_type_group_update(&ntype, node_group_update);
|
||||
|
@ -60,13 +60,13 @@ void register_node_type_cmp_group(void)
|
|||
void register_node_type_cmp_custom_group(bNodeType *ntype)
|
||||
{
|
||||
/* These methods can be overridden but need a default implementation otherwise. */
|
||||
if (ntype->poll == NULL) {
|
||||
if (ntype->poll == nullptr) {
|
||||
ntype->poll = cmp_node_poll_default;
|
||||
}
|
||||
if (ntype->insert_link == NULL) {
|
||||
if (ntype->insert_link == nullptr) {
|
||||
ntype->insert_link = node_insert_link_default;
|
||||
}
|
||||
if (ntype->update_internal_links == NULL) {
|
||||
if (ntype->update_internal_links == nullptr) {
|
||||
ntype->update_internal_links = node_update_internal_links_default;
|
||||
}
|
||||
}
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** COMPOSITE ******************** */
|
||||
static bNodeSocketTemplate cmp_node_composite_in[] = {
|
||||
|
@ -36,10 +36,10 @@ void register_node_type_cmp_composite(void)
|
|||
static bNodeType ntype;
|
||||
|
||||
cmp_node_type_base(&ntype, CMP_NODE_COMPOSITE, "Composite", NODE_CLASS_OUTPUT, NODE_PREVIEW);
|
||||
node_type_socket_templates(&ntype, cmp_node_composite_in, NULL);
|
||||
node_type_socket_templates(&ntype, cmp_node_composite_in, nullptr);
|
||||
|
||||
/* Do not allow muting for this node. */
|
||||
node_type_internal_links(&ntype, NULL);
|
||||
node_type_internal_links(&ntype, nullptr);
|
||||
|
||||
nodeRegisterType(&ntype);
|
||||
}
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
static bNodeSocketTemplate inputs[] = {
|
||||
{SOCK_RGBA, N_("Image"), 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 1.0f, PROP_NONE},
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** Crop ******************** */
|
||||
|
||||
|
@ -36,7 +36,7 @@ static bNodeSocketTemplate cmp_node_crop_out[] = {
|
|||
|
||||
static void node_composit_init_crop(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
NodeTwoXYs *nxy = MEM_callocN(sizeof(NodeTwoXYs), "node xy data");
|
||||
NodeTwoXYs *nxy = (NodeTwoXYs *)MEM_callocN(sizeof(NodeTwoXYs), "node xy data");
|
||||
node->storage = nxy;
|
||||
nxy->x1 = 0;
|
||||
nxy->x2 = 0;
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
#include "BLI_assert.h"
|
||||
#include "BLI_dynstr.h"
|
||||
|
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** CURVE Time ******************** */
|
||||
|
||||
|
@ -43,7 +43,7 @@ void register_node_type_cmp_curve_time(void)
|
|||
static bNodeType ntype;
|
||||
|
||||
cmp_node_type_base(&ntype, CMP_NODE_TIME, "Time", NODE_CLASS_INPUT, 0);
|
||||
node_type_socket_templates(&ntype, NULL, cmp_node_time_out);
|
||||
node_type_socket_templates(&ntype, nullptr, cmp_node_time_out);
|
||||
node_type_size(&ntype, 140, 100, 320);
|
||||
node_type_init(&ntype, node_composit_init_curves_time);
|
||||
node_type_storage(&ntype, "CurveMapping", node_free_curves, node_copy_curves);
|
|
@ -21,9 +21,9 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
#include <limits.h>
|
||||
#include <climits>
|
||||
|
||||
/* ************ qdn: Defocus node ****************** */
|
||||
static bNodeSocketTemplate cmp_node_defocus_in[] = {
|
||||
|
@ -39,7 +39,7 @@ static bNodeSocketTemplate cmp_node_defocus_out[] = {
|
|||
static void node_composit_init_defocus(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
/* qdn: defocus node */
|
||||
NodeDefocus *nbd = MEM_callocN(sizeof(NodeDefocus), "node defocus data");
|
||||
NodeDefocus *nbd = (NodeDefocus *)MEM_callocN(sizeof(NodeDefocus), "node defocus data");
|
||||
nbd->bktype = 0;
|
||||
nbd->rotation = 0.0f;
|
||||
nbd->preview = 1;
|
|
@ -23,7 +23,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
static bNodeSocketTemplate cmp_node_denoise_in[] = {
|
||||
{SOCK_RGBA, N_("Image"), 1.0f, 1.0f, 1.0f, 1.0f, 0.0f, 1.0f},
|
||||
|
@ -34,7 +34,7 @@ static bNodeSocketTemplate cmp_node_denoise_out[] = {{SOCK_RGBA, N_("Image")}, {
|
|||
|
||||
static void node_composit_init_denonise(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
NodeDenoise *ndg = MEM_callocN(sizeof(NodeDenoise), "node denoise data");
|
||||
NodeDenoise *ndg = (NodeDenoise *)MEM_callocN(sizeof(NodeDenoise), "node denoise data");
|
||||
ndg->hdr = true;
|
||||
ndg->prefilter = CMP_NODE_DENOISE_PREFILTER_ACCURATE;
|
||||
node->storage = ndg;
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** FILTER ******************** */
|
||||
static bNodeSocketTemplate cmp_node_despeckle_in[] = {
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* ******************* channel Difference Matte ********************************* */
|
||||
static bNodeSocketTemplate cmp_node_diff_matte_in[] = {
|
||||
|
@ -38,7 +38,7 @@ static bNodeSocketTemplate cmp_node_diff_matte_out[] = {
|
|||
|
||||
static void node_composit_init_diff_matte(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
NodeChroma *c = MEM_callocN(sizeof(NodeChroma), "node chroma");
|
||||
NodeChroma *c = (NodeChroma *)MEM_callocN(sizeof(NodeChroma), "node chroma");
|
||||
node->storage = c;
|
||||
c->t1 = 0.1f;
|
||||
c->t2 = 0.1f;
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** Dilate/Erode ******************** */
|
||||
|
||||
|
@ -31,7 +31,8 @@ static bNodeSocketTemplate cmp_node_dilateerode_out[] = {{SOCK_FLOAT, N_("Mask")
|
|||
|
||||
static void node_composit_init_dilateerode(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
NodeDilateErode *data = MEM_callocN(sizeof(NodeDilateErode), "NodeDilateErode");
|
||||
NodeDilateErode *data = (NodeDilateErode *)MEM_callocN(sizeof(NodeDilateErode),
|
||||
"NodeDilateErode");
|
||||
data->falloff = PROP_SMOOTH;
|
||||
node->storage = data;
|
||||
}
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
static bNodeSocketTemplate cmp_node_dblur_in[] = {{SOCK_RGBA, N_("Image"), 1.0f, 1.0f, 1.0f, 1.0f},
|
||||
{-1, ""}};
|
||||
|
@ -30,7 +30,7 @@ static bNodeSocketTemplate cmp_node_dblur_out[] = {{SOCK_RGBA, N_("Image")}, {-1
|
|||
|
||||
static void node_composit_init_dblur(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
NodeDBlurData *ndbd = MEM_callocN(sizeof(NodeDBlurData), "node dblur data");
|
||||
NodeDBlurData *ndbd = (NodeDBlurData *)MEM_callocN(sizeof(NodeDBlurData), "node dblur data");
|
||||
node->storage = ndbd;
|
||||
ndbd->iter = 1;
|
||||
ndbd->center_x = 0.5;
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** Displace ******************** */
|
||||
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* ******************* channel Distance Matte ********************************* */
|
||||
static bNodeSocketTemplate cmp_node_distance_matte_in[] = {
|
||||
|
@ -38,7 +38,7 @@ static bNodeSocketTemplate cmp_node_distance_matte_out[] = {
|
|||
|
||||
static void node_composit_init_distance_matte(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
NodeChroma *c = MEM_callocN(sizeof(NodeChroma), "node chroma");
|
||||
NodeChroma *c = (NodeChroma *)MEM_callocN(sizeof(NodeChroma), "node chroma");
|
||||
node->storage = c;
|
||||
c->channel = 1;
|
||||
c->t1 = 0.1f;
|
|
@ -20,7 +20,7 @@
|
|||
/** \file
|
||||
* \ingroup cmpnodes
|
||||
*/
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
/* **************** Double Edge Mask ******************** */
|
||||
|
||||
static bNodeSocketTemplate cmp_node_doubleedgemask_in[] = {
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "../node_composite_util.h"
|
||||
#include "../node_composite_util.hh"
|
||||
|
||||
/* **************** SCALAR MATH ******************** */
|
||||
static bNodeSocketTemplate cmp_node_ellipsemask_in[] = {
|
||||
|
@ -34,7 +34,8 @@ static bNodeSocketTemplate cmp_node_ellipsemask_out[] = {
|
|||
|
||||
static void node_composit_init_ellipsemask(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
NodeEllipseMask *data = MEM_callocN(sizeof(NodeEllipseMask), "NodeEllipseMask");
|
||||
NodeEllipseMask *data = (NodeEllipseMask *)MEM_callocN(sizeof(NodeEllipseMask),
|
||||
"NodeEllipseMask");
|
||||
data->x = 0.5;
|
||||
data->y = 0.5;
|
||||
data->width = 0.2;
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** Exposure ******************** */
|
||||
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** FILTER ******************** */
|
||||
static bNodeSocketTemplate cmp_node_filter_in[] = {
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** Flip ******************** */
|
||||
static bNodeSocketTemplate cmp_node_flip_in[] = {
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** Gamma Tools ******************** */
|
||||
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
static bNodeSocketTemplate cmp_node_glare_in[] = {
|
||||
{SOCK_RGBA, N_("Image"), 1.0f, 1.0f, 1.0f, 1.0f},
|
||||
|
@ -34,7 +34,7 @@ static bNodeSocketTemplate cmp_node_glare_out[] = {
|
|||
|
||||
static void node_composit_init_glare(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
NodeGlare *ndg = MEM_callocN(sizeof(NodeGlare), "node glare data");
|
||||
NodeGlare *ndg = (NodeGlare *)MEM_callocN(sizeof(NodeGlare), "node glare data");
|
||||
ndg->quality = 1;
|
||||
ndg->type = 2;
|
||||
ndg->iter = 3;
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** Hue Saturation ******************** */
|
||||
static bNodeSocketTemplate cmp_node_hue_sat_in[] = {
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
static bNodeSocketTemplate cmp_node_huecorrect_in[] = {
|
||||
{SOCK_FLOAT, N_("Fac"), 1.0f, 0.0f, 0.0f, 1.0f, 0.0f, 1.0f, PROP_FACTOR},
|
||||
|
@ -36,12 +36,13 @@ static bNodeSocketTemplate cmp_node_huecorrect_out[] = {
|
|||
|
||||
static void node_composit_init_huecorrect(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
CurveMapping *cumapping = node->storage = BKE_curvemapping_add(1, 0.0f, 0.0f, 1.0f, 1.0f);
|
||||
int c;
|
||||
node->storage = BKE_curvemapping_add(1, 0.0f, 0.0f, 1.0f, 1.0f);
|
||||
|
||||
CurveMapping *cumapping = (CurveMapping *)node->storage;
|
||||
|
||||
cumapping->preset = CURVE_PRESET_MID9;
|
||||
|
||||
for (c = 0; c < 3; c++) {
|
||||
for (int c = 0; c < 3; c++) {
|
||||
CurveMap *cuma = &cumapping->cm[c];
|
||||
BKE_curvemap_reset(cuma, &cumapping->clipr, cumapping->preset, CURVEMAP_SLOPE_POSITIVE);
|
||||
}
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** ID Mask ******************** */
|
||||
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
#include "BLI_linklist.h"
|
||||
#include "BLI_utildefines.h"
|
||||
|
@ -84,16 +84,17 @@ static void cmp_node_image_add_pass_output(bNodeTree *ntree,
|
|||
LinkNodePair *available_sockets,
|
||||
int *prev_index)
|
||||
{
|
||||
bNodeSocket *sock = BLI_findstring(&node->outputs, name, offsetof(bNodeSocket, name));
|
||||
bNodeSocket *sock = (bNodeSocket *)BLI_findstring(
|
||||
&node->outputs, name, offsetof(bNodeSocket, name));
|
||||
|
||||
/* Replace if types don't match. */
|
||||
if (sock && sock->type != type) {
|
||||
nodeRemoveSocket(ntree, node, sock);
|
||||
sock = NULL;
|
||||
sock = nullptr;
|
||||
}
|
||||
|
||||
/* Create socket if it doesn't exist yet. */
|
||||
if (sock == NULL) {
|
||||
if (sock == nullptr) {
|
||||
if (rres_index >= 0) {
|
||||
sock = node_add_socket_from_template(
|
||||
ntree, node, &cmp_node_rlayers_out[rres_index], SOCK_OUT);
|
||||
|
@ -102,18 +103,19 @@ static void cmp_node_image_add_pass_output(bNodeTree *ntree,
|
|||
sock = nodeAddStaticSocket(ntree, node, SOCK_OUT, type, PROP_NONE, name, name);
|
||||
}
|
||||
/* extra socket info */
|
||||
NodeImageLayer *sockdata = MEM_callocN(sizeof(NodeImageLayer), "node image layer");
|
||||
NodeImageLayer *sockdata = (NodeImageLayer *)MEM_callocN(sizeof(NodeImageLayer),
|
||||
"node image layer");
|
||||
sock->storage = sockdata;
|
||||
}
|
||||
|
||||
NodeImageLayer *sockdata = sock->storage;
|
||||
NodeImageLayer *sockdata = (NodeImageLayer *)sock->storage;
|
||||
if (sockdata) {
|
||||
BLI_strncpy(sockdata->pass_name, passname, sizeof(sockdata->pass_name));
|
||||
}
|
||||
|
||||
/* Reorder sockets according to order that passes are added. */
|
||||
const int after_index = (*prev_index)++;
|
||||
bNodeSocket *after_sock = BLI_findlink(&node->outputs, after_index);
|
||||
bNodeSocket *after_sock = (bNodeSocket *)BLI_findlink(&node->outputs, after_index);
|
||||
BLI_remlink(&node->outputs, sock);
|
||||
BLI_insertlinkafter(&node->outputs, after_sock, sock);
|
||||
|
||||
|
@ -128,8 +130,8 @@ static void cmp_node_image_create_outputs(bNodeTree *ntree,
|
|||
ImBuf *ibuf;
|
||||
int prev_index = -1;
|
||||
if (ima) {
|
||||
ImageUser *iuser = node->storage;
|
||||
ImageUser load_iuser = {NULL};
|
||||
ImageUser *iuser = (ImageUser *)node->storage;
|
||||
ImageUser load_iuser = {nullptr};
|
||||
int offset = BKE_image_sequence_guess_offset(ima);
|
||||
|
||||
/* It is possible that image user in this node is not
|
||||
|
@ -144,15 +146,14 @@ static void cmp_node_image_create_outputs(bNodeTree *ntree,
|
|||
load_iuser.framenr = offset;
|
||||
|
||||
/* make sure ima->type is correct */
|
||||
ibuf = BKE_image_acquire_ibuf(ima, &load_iuser, NULL);
|
||||
ibuf = BKE_image_acquire_ibuf(ima, &load_iuser, nullptr);
|
||||
|
||||
if (ima->rr) {
|
||||
RenderLayer *rl = BLI_findlink(&ima->rr->layers, iuser->layer);
|
||||
RenderLayer *rl = (RenderLayer *)BLI_findlink(&ima->rr->layers, iuser->layer);
|
||||
|
||||
if (rl) {
|
||||
RenderPass *rpass;
|
||||
for (rpass = rl->passes.first; rpass; rpass = rpass->next) {
|
||||
int type;
|
||||
LISTBASE_FOREACH (RenderPass *, rpass, &rl->passes) {
|
||||
eNodeSocketDatatype type;
|
||||
if (rpass->channels == 1) {
|
||||
type = SOCK_FLOAT;
|
||||
}
|
||||
|
@ -182,7 +183,7 @@ static void cmp_node_image_create_outputs(bNodeTree *ntree,
|
|||
&prev_index);
|
||||
}
|
||||
}
|
||||
BKE_image_release_ibuf(ima, ibuf, NULL);
|
||||
BKE_image_release_ibuf(ima, ibuf, nullptr);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
@ -219,14 +220,14 @@ static void cmp_node_image_create_outputs(bNodeTree *ntree,
|
|||
available_sockets,
|
||||
&prev_index);
|
||||
}
|
||||
BKE_image_release_ibuf(ima, ibuf, NULL);
|
||||
BKE_image_release_ibuf(ima, ibuf, nullptr);
|
||||
}
|
||||
}
|
||||
|
||||
typedef struct RLayerUpdateData {
|
||||
struct RLayerUpdateData {
|
||||
LinkNodePair *available_sockets;
|
||||
int prev_index;
|
||||
} RLayerUpdateData;
|
||||
};
|
||||
|
||||
void node_cmp_rlayers_register_pass(bNodeTree *ntree,
|
||||
bNode *node,
|
||||
|
@ -235,13 +236,13 @@ void node_cmp_rlayers_register_pass(bNodeTree *ntree,
|
|||
const char *name,
|
||||
eNodeSocketDatatype type)
|
||||
{
|
||||
RLayerUpdateData *data = node->storage;
|
||||
RLayerUpdateData *data = (RLayerUpdateData *)node->storage;
|
||||
|
||||
if (scene == NULL || view_layer == NULL || data == NULL || node->id != (ID *)scene) {
|
||||
if (scene == nullptr || view_layer == nullptr || data == nullptr || node->id != (ID *)scene) {
|
||||
return;
|
||||
}
|
||||
|
||||
ViewLayer *node_view_layer = BLI_findlink(&scene->view_layers, node->custom1);
|
||||
ViewLayer *node_view_layer = (ViewLayer *)BLI_findlink(&scene->view_layers, node->custom1);
|
||||
if (node_view_layer != view_layer) {
|
||||
return;
|
||||
}
|
||||
|
@ -281,7 +282,7 @@ static void cmp_node_rlayer_create_outputs_cb(void *UNUSED(userdata),
|
|||
* unless we want to register that for every other temp Main we could generate??? */
|
||||
ntreeCompositRegisterPass(scene->nodetree, scene, view_layer, name, type);
|
||||
|
||||
for (Scene *sce = G_MAIN->scenes.first; sce; sce = sce->id.next) {
|
||||
for (Scene *sce = (Scene *)G_MAIN->scenes.first; sce; sce = (Scene *)sce->id.next) {
|
||||
if (sce->nodetree && sce != scene) {
|
||||
ntreeCompositRegisterPass(sce->nodetree, scene, view_layer, name, type);
|
||||
}
|
||||
|
@ -297,16 +298,17 @@ static void cmp_node_rlayer_create_outputs(bNodeTree *ntree,
|
|||
if (scene) {
|
||||
RenderEngineType *engine_type = RE_engines_find(scene->r.engine);
|
||||
if (engine_type && engine_type->update_render_passes) {
|
||||
ViewLayer *view_layer = BLI_findlink(&scene->view_layers, node->custom1);
|
||||
ViewLayer *view_layer = (ViewLayer *)BLI_findlink(&scene->view_layers, node->custom1);
|
||||
if (view_layer) {
|
||||
RLayerUpdateData *data = MEM_mallocN(sizeof(RLayerUpdateData), "render layer update data");
|
||||
RLayerUpdateData *data = (RLayerUpdateData *)MEM_mallocN(sizeof(RLayerUpdateData),
|
||||
"render layer update data");
|
||||
data->available_sockets = available_sockets;
|
||||
data->prev_index = -1;
|
||||
node->storage = data;
|
||||
|
||||
RenderEngine *engine = RE_engine_create(engine_type);
|
||||
RE_engine_update_render_passes(
|
||||
engine, scene, view_layer, cmp_node_rlayer_create_outputs_cb, NULL);
|
||||
engine, scene, view_layer, cmp_node_rlayer_create_outputs_cb, nullptr);
|
||||
RE_engine_free(engine);
|
||||
|
||||
if ((scene->r.mode & R_EDGE_FRS) &&
|
||||
|
@ -315,7 +317,7 @@ static void cmp_node_rlayer_create_outputs(bNodeTree *ntree,
|
|||
}
|
||||
|
||||
MEM_freeN(data);
|
||||
node->storage = NULL;
|
||||
node->storage = nullptr;
|
||||
|
||||
return;
|
||||
}
|
||||
|
@ -348,8 +350,7 @@ static void cmp_node_rlayer_create_outputs(bNodeTree *ntree,
|
|||
static void cmp_node_image_verify_outputs(bNodeTree *ntree, bNode *node, bool rlayer)
|
||||
{
|
||||
bNodeSocket *sock, *sock_next;
|
||||
LinkNodePair available_sockets = {NULL, NULL};
|
||||
int sock_index;
|
||||
LinkNodePair available_sockets = {nullptr, nullptr};
|
||||
|
||||
/* XXX make callback */
|
||||
if (rlayer) {
|
||||
|
@ -369,15 +370,15 @@ static void cmp_node_image_verify_outputs(bNodeTree *ntree, bNode *node, bool rl
|
|||
* the first 31 passes to belong to a specific pass type.
|
||||
* So, we keep those 31 always allocated before the others as well,
|
||||
* even if they have no links attached. */
|
||||
sock_index = 0;
|
||||
for (sock = node->outputs.first; sock; sock = sock_next, sock_index++) {
|
||||
int sock_index = 0;
|
||||
for (sock = (bNodeSocket *)node->outputs.first; sock; sock = sock_next, sock_index++) {
|
||||
sock_next = sock->next;
|
||||
if (BLI_linklist_index(available_sockets.list, sock) >= 0) {
|
||||
sock->flag &= ~(SOCK_UNAVAIL | SOCK_HIDDEN);
|
||||
}
|
||||
else {
|
||||
bNodeLink *link;
|
||||
for (link = ntree->links.first; link; link = link->next) {
|
||||
for (link = (bNodeLink *)ntree->links.first; link; link = link->next) {
|
||||
if (link->fromsock == sock) {
|
||||
break;
|
||||
}
|
||||
|
@ -392,7 +393,7 @@ static void cmp_node_image_verify_outputs(bNodeTree *ntree, bNode *node, bool rl
|
|||
}
|
||||
}
|
||||
|
||||
BLI_linklist_free(available_sockets.list, NULL);
|
||||
BLI_linklist_free(available_sockets.list, nullptr);
|
||||
}
|
||||
|
||||
static void cmp_node_image_update(bNodeTree *ntree, bNode *node)
|
||||
|
@ -407,7 +408,7 @@ static void cmp_node_image_update(bNodeTree *ntree, bNode *node)
|
|||
|
||||
static void node_composit_init_image(bNodeTree *ntree, bNode *node)
|
||||
{
|
||||
ImageUser *iuser = MEM_callocN(sizeof(ImageUser), "node image user");
|
||||
ImageUser *iuser = (ImageUser *)MEM_callocN(sizeof(ImageUser), "node image user");
|
||||
node->storage = iuser;
|
||||
iuser->frames = 1;
|
||||
iuser->sfra = 1;
|
||||
|
@ -420,10 +421,8 @@ static void node_composit_init_image(bNodeTree *ntree, bNode *node)
|
|||
|
||||
static void node_composit_free_image(bNode *node)
|
||||
{
|
||||
bNodeSocket *sock;
|
||||
|
||||
/* free extra socket info */
|
||||
for (sock = node->outputs.first; sock; sock = sock->next) {
|
||||
LISTBASE_FOREACH (bNodeSocket *, sock, &node->outputs) {
|
||||
MEM_freeN(sock->storage);
|
||||
}
|
||||
|
||||
|
@ -436,9 +435,9 @@ static void node_composit_copy_image(bNodeTree *UNUSED(dest_ntree),
|
|||
{
|
||||
dest_node->storage = MEM_dupallocN(src_node->storage);
|
||||
|
||||
const bNodeSocket *src_output_sock = src_node->outputs.first;
|
||||
bNodeSocket *dest_output_sock = dest_node->outputs.first;
|
||||
while (dest_output_sock != NULL) {
|
||||
const bNodeSocket *src_output_sock = (bNodeSocket *)src_node->outputs.first;
|
||||
bNodeSocket *dest_output_sock = (bNodeSocket *)dest_node->outputs.first;
|
||||
while (dest_output_sock != nullptr) {
|
||||
dest_output_sock->storage = MEM_dupallocN(src_output_sock->storage);
|
||||
|
||||
src_output_sock = src_output_sock->next;
|
||||
|
@ -469,7 +468,7 @@ void node_cmp_rlayers_outputs(bNodeTree *ntree, bNode *node)
|
|||
const char *node_cmp_rlayers_sock_to_pass(int sock_index)
|
||||
{
|
||||
if (sock_index >= NUM_LEGACY_SOCKETS) {
|
||||
return NULL;
|
||||
return nullptr;
|
||||
}
|
||||
const char *name = cmp_node_rlayers_out[sock_index].name;
|
||||
/* Exception for alpha, which is derived from Combined. */
|
||||
|
@ -479,14 +478,16 @@ const char *node_cmp_rlayers_sock_to_pass(int sock_index)
|
|||
static void node_composit_init_rlayers(const bContext *C, PointerRNA *ptr)
|
||||
{
|
||||
Scene *scene = CTX_data_scene(C);
|
||||
bNode *node = ptr->data;
|
||||
bNode *node = (bNode *)ptr->data;
|
||||
int sock_index = 0;
|
||||
|
||||
node->id = &scene->id;
|
||||
id_us_plus(node->id);
|
||||
|
||||
for (bNodeSocket *sock = node->outputs.first; sock; sock = sock->next, sock_index++) {
|
||||
NodeImageLayer *sockdata = MEM_callocN(sizeof(NodeImageLayer), "node image layer");
|
||||
for (bNodeSocket *sock = (bNodeSocket *)node->outputs.first; sock;
|
||||
sock = sock->next, sock_index++) {
|
||||
NodeImageLayer *sockdata = (NodeImageLayer *)MEM_callocN(sizeof(NodeImageLayer),
|
||||
"node image layer");
|
||||
sock->storage = sockdata;
|
||||
|
||||
BLI_strncpy(sockdata->pass_name,
|
||||
|
@ -510,13 +511,13 @@ static bool node_composit_poll_rlayers(bNodeType *UNUSED(ntype),
|
|||
* Render layers node can only be used in local scene->nodetree,
|
||||
* since it directly links to the scene.
|
||||
*/
|
||||
for (scene = G.main->scenes.first; scene; scene = scene->id.next) {
|
||||
for (scene = (Scene *)G.main->scenes.first; scene; scene = (Scene *)scene->id.next) {
|
||||
if (scene->nodetree == ntree) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (scene == NULL) {
|
||||
if (scene == nullptr) {
|
||||
*r_disabled_hint = "The node tree must be the compositing node tree of any scene in the file";
|
||||
return false;
|
||||
}
|
||||
|
@ -525,10 +526,8 @@ static bool node_composit_poll_rlayers(bNodeType *UNUSED(ntype),
|
|||
|
||||
static void node_composit_free_rlayers(bNode *node)
|
||||
{
|
||||
bNodeSocket *sock;
|
||||
|
||||
/* free extra socket info */
|
||||
for (sock = node->outputs.first; sock; sock = sock->next) {
|
||||
LISTBASE_FOREACH (bNodeSocket *, sock, &node->outputs) {
|
||||
if (sock->storage) {
|
||||
MEM_freeN(sock->storage);
|
||||
}
|
||||
|
@ -540,9 +539,9 @@ static void node_composit_copy_rlayers(bNodeTree *UNUSED(dest_ntree),
|
|||
const bNode *src_node)
|
||||
{
|
||||
/* copy extra socket info */
|
||||
const bNodeSocket *src_output_sock = src_node->outputs.first;
|
||||
bNodeSocket *dest_output_sock = dest_node->outputs.first;
|
||||
while (dest_output_sock != NULL) {
|
||||
const bNodeSocket *src_output_sock = (bNodeSocket *)src_node->outputs.first;
|
||||
bNodeSocket *dest_output_sock = (bNodeSocket *)dest_node->outputs.first;
|
||||
while (dest_output_sock != nullptr) {
|
||||
dest_output_sock->storage = MEM_dupallocN(src_output_sock->storage);
|
||||
|
||||
src_output_sock = src_output_sock->next;
|
||||
|
@ -562,10 +561,10 @@ void register_node_type_cmp_rlayers(void)
|
|||
static bNodeType ntype;
|
||||
|
||||
cmp_node_type_base(&ntype, CMP_NODE_R_LAYERS, "Render Layers", NODE_CLASS_INPUT, NODE_PREVIEW);
|
||||
node_type_socket_templates(&ntype, NULL, cmp_node_rlayers_out);
|
||||
node_type_socket_templates(&ntype, nullptr, cmp_node_rlayers_out);
|
||||
ntype.initfunc_api = node_composit_init_rlayers;
|
||||
ntype.poll = node_composit_poll_rlayers;
|
||||
node_type_storage(&ntype, NULL, node_composit_free_rlayers, node_composit_copy_rlayers);
|
||||
node_type_storage(&ntype, nullptr, node_composit_free_rlayers, node_composit_copy_rlayers);
|
||||
node_type_update(&ntype, cmp_node_rlayers_update);
|
||||
node_type_init(&ntype, node_cmp_rlayers_outputs);
|
||||
node_type_size_preset(&ntype, NODE_SIZE_LARGE);
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** Inpaint/ ******************** */
|
||||
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** INVERT ******************** */
|
||||
static bNodeSocketTemplate cmp_node_invert_in[] = {
|
|
@ -27,7 +27,7 @@
|
|||
|
||||
#include "BLI_math_base.h"
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** Translate ******************** */
|
||||
|
||||
|
@ -48,9 +48,7 @@ static bNodeSocketTemplate cmp_node_keying_out[] = {
|
|||
|
||||
static void node_composit_init_keying(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
NodeKeyingData *data;
|
||||
|
||||
data = MEM_callocN(sizeof(NodeKeyingData), "node keying data");
|
||||
NodeKeyingData *data = (NodeKeyingData *)MEM_callocN(sizeof(NodeKeyingData), "node keying data");
|
||||
|
||||
data->screen_balance = 0.5f;
|
||||
data->despill_balance = 0.5f;
|
||||
|
@ -59,7 +57,6 @@ static void node_composit_init_keying(bNodeTree *UNUSED(ntree), bNode *node)
|
|||
data->edge_kernel_tolerance = 0.1f;
|
||||
data->clip_black = 0.0f;
|
||||
data->clip_white = 1.0f;
|
||||
|
||||
node->storage = data;
|
||||
}
|
||||
|
|
@ -26,7 +26,7 @@
|
|||
#include "BLI_math_base.h"
|
||||
#include "BLI_math_color.h"
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** Translate ******************** */
|
||||
|
||||
|
@ -37,10 +37,8 @@ static bNodeSocketTemplate cmp_node_keyingscreen_out[] = {
|
|||
|
||||
static void node_composit_init_keyingscreen(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
NodeKeyingScreenData *data;
|
||||
|
||||
data = MEM_callocN(sizeof(NodeKeyingScreenData), "node keyingscreen data");
|
||||
|
||||
NodeKeyingScreenData *data = (NodeKeyingScreenData *)MEM_callocN(sizeof(NodeKeyingScreenData),
|
||||
"node keyingscreen data");
|
||||
node->storage = data;
|
||||
}
|
||||
|
||||
|
@ -49,7 +47,7 @@ void register_node_type_cmp_keyingscreen(void)
|
|||
static bNodeType ntype;
|
||||
|
||||
cmp_node_type_base(&ntype, CMP_NODE_KEYINGSCREEN, "Keying Screen", NODE_CLASS_MATTE, 0);
|
||||
node_type_socket_templates(&ntype, NULL, cmp_node_keyingscreen_out);
|
||||
node_type_socket_templates(&ntype, nullptr, cmp_node_keyingscreen_out);
|
||||
node_type_init(&ntype, node_composit_init_keyingscreen);
|
||||
node_type_storage(
|
||||
&ntype, "NodeKeyingScreenData", node_free_standard_storage, node_copy_standard_storage);
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
static bNodeSocketTemplate cmp_node_lensdist_in[] = {
|
||||
{SOCK_RGBA, N_("Image"), 1.0f, 1.0f, 1.0f, 1.0f},
|
||||
|
@ -36,7 +36,7 @@ static bNodeSocketTemplate cmp_node_lensdist_out[] = {
|
|||
|
||||
static void node_composit_init_lensdist(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
NodeLensDist *nld = MEM_callocN(sizeof(NodeLensDist), "node lensdist data");
|
||||
NodeLensDist *nld = (NodeLensDist *)MEM_callocN(sizeof(NodeLensDist), "node lensdist data");
|
||||
nld->jit = nld->proj = nld->fit = 0;
|
||||
node->storage = nld;
|
||||
}
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** LEVELS ******************** */
|
||||
static bNodeSocketTemplate cmp_node_view_levels_in[] = {
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* ******************* Luma Matte Node ********************************* */
|
||||
static bNodeSocketTemplate cmp_node_luma_matte_in[] = {
|
||||
|
@ -37,7 +37,7 @@ static bNodeSocketTemplate cmp_node_luma_matte_out[] = {
|
|||
|
||||
static void node_composit_init_luma_matte(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
NodeChroma *c = MEM_callocN(sizeof(NodeChroma), "node chroma");
|
||||
NodeChroma *c = (NodeChroma *)MEM_callocN(sizeof(NodeChroma), "node chroma");
|
||||
node->storage = c;
|
||||
c->t1 = 1.0f;
|
||||
c->t2 = 0.0f;
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** MAP VALUE ******************** */
|
||||
static bNodeSocketTemplate cmp_node_map_range_in[] = {
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** Map UV ******************** */
|
||||
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** MAP VALUE ******************** */
|
||||
static bNodeSocketTemplate cmp_node_map_value_in[] = {
|
|
@ -23,7 +23,7 @@
|
|||
|
||||
#include "DNA_mask_types.h"
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** Translate ******************** */
|
||||
|
||||
|
@ -31,7 +31,7 @@ static bNodeSocketTemplate cmp_node_mask_out[] = {{SOCK_FLOAT, "Mask"}, {-1, ""}
|
|||
|
||||
static void node_composit_init_mask(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
NodeMask *data = MEM_callocN(sizeof(NodeMask), "NodeMask");
|
||||
NodeMask *data = (NodeMask *)MEM_callocN(sizeof(NodeMask), "NodeMask");
|
||||
data->size_x = data->size_y = 256;
|
||||
node->storage = data;
|
||||
|
||||
|
@ -41,7 +41,7 @@ static void node_composit_init_mask(bNodeTree *UNUSED(ntree), bNode *node)
|
|||
|
||||
static void node_mask_label(bNodeTree *UNUSED(ntree), bNode *node, char *label, int maxlen)
|
||||
{
|
||||
if (node->id != NULL) {
|
||||
if (node->id != nullptr) {
|
||||
BLI_strncpy(label, node->id->name + 2, maxlen);
|
||||
}
|
||||
else {
|
||||
|
@ -54,7 +54,7 @@ void register_node_type_cmp_mask(void)
|
|||
static bNodeType ntype;
|
||||
|
||||
cmp_node_type_base(&ntype, CMP_NODE_MASK, "Mask", NODE_CLASS_INPUT, 0);
|
||||
node_type_socket_templates(&ntype, NULL, cmp_node_mask_out);
|
||||
node_type_socket_templates(&ntype, nullptr, cmp_node_mask_out);
|
||||
node_type_init(&ntype, node_composit_init_mask);
|
||||
node_type_label(&ntype, node_mask_label);
|
||||
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** SCALAR MATH ******************** */
|
||||
static bNodeSocketTemplate cmp_node_math_in[] = {
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** MIX RGB ******************** */
|
||||
static bNodeSocketTemplate cmp_node_mix_rgb_in[] = {
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
#include "BKE_context.h"
|
||||
#include "BKE_lib_id.h"
|
||||
|
@ -38,9 +38,10 @@ static bNodeSocketTemplate cmp_node_movieclip_out[] = {
|
|||
|
||||
static void init(const bContext *C, PointerRNA *ptr)
|
||||
{
|
||||
bNode *node = ptr->data;
|
||||
bNode *node = (bNode *)ptr->data;
|
||||
Scene *scene = CTX_data_scene(C);
|
||||
MovieClipUser *user = MEM_callocN(sizeof(MovieClipUser), "node movie clip user");
|
||||
MovieClipUser *user = (MovieClipUser *)MEM_callocN(sizeof(MovieClipUser),
|
||||
"node movie clip user");
|
||||
|
||||
node->id = (ID *)scene->clip;
|
||||
id_us_plus(node->id);
|
||||
|
@ -53,7 +54,7 @@ void register_node_type_cmp_movieclip(void)
|
|||
static bNodeType ntype;
|
||||
|
||||
cmp_node_type_base(&ntype, CMP_NODE_MOVIECLIP, "Movie Clip", NODE_CLASS_INPUT, NODE_PREVIEW);
|
||||
node_type_socket_templates(&ntype, NULL, cmp_node_movieclip_out);
|
||||
node_type_socket_templates(&ntype, nullptr, cmp_node_movieclip_out);
|
||||
ntype.initfunc_api = init;
|
||||
node_type_storage(
|
||||
&ntype, "MovieClipUser", node_free_standard_storage, node_copy_standard_storage);
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
#include "BKE_context.h"
|
||||
#include "BKE_lib_id.h"
|
||||
|
@ -50,7 +50,7 @@ static void label(bNodeTree *UNUSED(ntree), bNode *node, char *label, int maxlen
|
|||
|
||||
static void init(const bContext *C, PointerRNA *ptr)
|
||||
{
|
||||
bNode *node = ptr->data;
|
||||
bNode *node = (bNode *)ptr->data;
|
||||
Scene *scene = CTX_data_scene(C);
|
||||
|
||||
node->id = (ID *)scene->clip;
|
||||
|
@ -60,16 +60,16 @@ static void init(const bContext *C, PointerRNA *ptr)
|
|||
static void storage_free(bNode *node)
|
||||
{
|
||||
if (node->storage) {
|
||||
BKE_tracking_distortion_free(node->storage);
|
||||
BKE_tracking_distortion_free((MovieDistortion *)node->storage);
|
||||
}
|
||||
|
||||
node->storage = NULL;
|
||||
node->storage = nullptr;
|
||||
}
|
||||
|
||||
static void storage_copy(bNodeTree *UNUSED(dest_ntree), bNode *dest_node, const bNode *src_node)
|
||||
{
|
||||
if (src_node->storage) {
|
||||
dest_node->storage = BKE_tracking_distortion_copy(src_node->storage);
|
||||
dest_node->storage = BKE_tracking_distortion_copy((MovieDistortion *)src_node->storage);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -82,7 +82,7 @@ void register_node_type_cmp_moviedistortion(void)
|
|||
node_type_label(&ntype, label);
|
||||
|
||||
ntype.initfunc_api = init;
|
||||
node_type_storage(&ntype, NULL, storage_free, storage_copy);
|
||||
node_type_storage(&ntype, nullptr, storage_free, storage_copy);
|
||||
|
||||
nodeRegisterType(&ntype);
|
||||
}
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** NORMAL ******************** */
|
||||
static bNodeSocketTemplate cmp_node_normal_in[] = {
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** NORMALIZE single channel, useful for Z buffer ******************** */
|
||||
static bNodeSocketTemplate cmp_node_normalize_in[] = {
|
|
@ -23,13 +23,13 @@
|
|||
|
||||
#include "BLI_string_utils.h"
|
||||
#include "BLI_utildefines.h"
|
||||
#include <string.h>
|
||||
#include <cstring>
|
||||
|
||||
#include "BKE_context.h"
|
||||
|
||||
#include "RNA_access.h"
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
#include "intern/openexr/openexr_multi.h"
|
||||
|
||||
|
@ -38,14 +38,15 @@
|
|||
/* find unique path */
|
||||
static bool unique_path_unique_check(void *arg, const char *name)
|
||||
{
|
||||
struct {
|
||||
struct Args {
|
||||
ListBase *lb;
|
||||
bNodeSocket *sock;
|
||||
} *data = arg;
|
||||
bNodeSocket *sock;
|
||||
for (sock = data->lb->first; sock; sock = sock->next) {
|
||||
};
|
||||
Args *data = (Args *)arg;
|
||||
|
||||
LISTBASE_FOREACH (bNodeSocket *, sock, data->lb) {
|
||||
if (sock != data->sock) {
|
||||
NodeImageMultiFileSocket *sockdata = sock->storage;
|
||||
NodeImageMultiFileSocket *sockdata = (NodeImageMultiFileSocket *)sock->storage;
|
||||
if (STREQ(sockdata->path, name)) {
|
||||
return true;
|
||||
}
|
||||
|
@ -67,11 +68,11 @@ void ntreeCompositOutputFileUniquePath(ListBase *list,
|
|||
data.sock = sock;
|
||||
|
||||
/* See if we are given an empty string */
|
||||
if (ELEM(NULL, sock, defname)) {
|
||||
if (ELEM(nullptr, sock, defname)) {
|
||||
return;
|
||||
}
|
||||
|
||||
sockdata = sock->storage;
|
||||
sockdata = (NodeImageMultiFileSocket *)sock->storage;
|
||||
BLI_uniquename_cb(
|
||||
unique_path_unique_check, &data, defname, delim, sockdata->path, sizeof(sockdata->path));
|
||||
}
|
||||
|
@ -79,14 +80,15 @@ void ntreeCompositOutputFileUniquePath(ListBase *list,
|
|||
/* find unique EXR layer */
|
||||
static bool unique_layer_unique_check(void *arg, const char *name)
|
||||
{
|
||||
struct {
|
||||
struct Args {
|
||||
ListBase *lb;
|
||||
bNodeSocket *sock;
|
||||
} *data = arg;
|
||||
bNodeSocket *sock;
|
||||
for (sock = data->lb->first; sock; sock = sock->next) {
|
||||
};
|
||||
Args *data = (Args *)arg;
|
||||
|
||||
LISTBASE_FOREACH (bNodeSocket *, sock, data->lb) {
|
||||
if (sock != data->sock) {
|
||||
NodeImageMultiFileSocket *sockdata = sock->storage;
|
||||
NodeImageMultiFileSocket *sockdata = (NodeImageMultiFileSocket *)sock->storage;
|
||||
if (STREQ(sockdata->layer, name)) {
|
||||
return true;
|
||||
}
|
||||
|
@ -99,7 +101,6 @@ void ntreeCompositOutputFileUniqueLayer(ListBase *list,
|
|||
const char defname[],
|
||||
char delim)
|
||||
{
|
||||
NodeImageMultiFileSocket *sockdata;
|
||||
struct {
|
||||
ListBase *lb;
|
||||
bNodeSocket *sock;
|
||||
|
@ -108,11 +109,11 @@ void ntreeCompositOutputFileUniqueLayer(ListBase *list,
|
|||
data.sock = sock;
|
||||
|
||||
/* See if we are given an empty string */
|
||||
if (ELEM(NULL, sock, defname)) {
|
||||
if (ELEM(nullptr, sock, defname)) {
|
||||
return;
|
||||
}
|
||||
|
||||
sockdata = sock->storage;
|
||||
NodeImageMultiFileSocket *sockdata = (NodeImageMultiFileSocket *)sock->storage;
|
||||
BLI_uniquename_cb(
|
||||
unique_layer_unique_check, &data, defname, delim, sockdata->layer, sizeof(sockdata->layer));
|
||||
}
|
||||
|
@ -122,12 +123,13 @@ bNodeSocket *ntreeCompositOutputFileAddSocket(bNodeTree *ntree,
|
|||
const char *name,
|
||||
ImageFormatData *im_format)
|
||||
{
|
||||
NodeImageMultiFile *nimf = node->storage;
|
||||
bNodeSocket *sock = nodeAddStaticSocket(ntree, node, SOCK_IN, SOCK_RGBA, PROP_NONE, NULL, name);
|
||||
NodeImageMultiFile *nimf = (NodeImageMultiFile *)node->storage;
|
||||
bNodeSocket *sock = nodeAddStaticSocket(
|
||||
ntree, node, SOCK_IN, SOCK_RGBA, PROP_NONE, nullptr, name);
|
||||
|
||||
/* create format data for the input socket */
|
||||
NodeImageMultiFileSocket *sockdata = MEM_callocN(sizeof(NodeImageMultiFileSocket),
|
||||
"socket image format");
|
||||
NodeImageMultiFileSocket *sockdata = (NodeImageMultiFileSocket *)MEM_callocN(
|
||||
sizeof(NodeImageMultiFileSocket), "socket image format");
|
||||
sock->storage = sockdata;
|
||||
|
||||
BLI_strncpy_utf8(sockdata->path, name, sizeof(sockdata->path));
|
||||
|
@ -155,8 +157,8 @@ bNodeSocket *ntreeCompositOutputFileAddSocket(bNodeTree *ntree,
|
|||
|
||||
int ntreeCompositOutputFileRemoveActiveSocket(bNodeTree *ntree, bNode *node)
|
||||
{
|
||||
NodeImageMultiFile *nimf = node->storage;
|
||||
bNodeSocket *sock = BLI_findlink(&node->inputs, nimf->active_input);
|
||||
NodeImageMultiFile *nimf = (NodeImageMultiFile *)node->storage;
|
||||
bNodeSocket *sock = (bNodeSocket *)BLI_findlink(&node->inputs, nimf->active_input);
|
||||
int totinputs = BLI_listbase_count(&node->inputs);
|
||||
|
||||
if (!sock) {
|
||||
|
@ -176,14 +178,14 @@ int ntreeCompositOutputFileRemoveActiveSocket(bNodeTree *ntree, bNode *node)
|
|||
|
||||
void ntreeCompositOutputFileSetPath(bNode *node, bNodeSocket *sock, const char *name)
|
||||
{
|
||||
NodeImageMultiFileSocket *sockdata = sock->storage;
|
||||
NodeImageMultiFileSocket *sockdata = (NodeImageMultiFileSocket *)sock->storage;
|
||||
BLI_strncpy_utf8(sockdata->path, name, sizeof(sockdata->path));
|
||||
ntreeCompositOutputFileUniquePath(&node->inputs, sock, name, '_');
|
||||
}
|
||||
|
||||
void ntreeCompositOutputFileSetLayer(bNode *node, bNodeSocket *sock, const char *name)
|
||||
{
|
||||
NodeImageMultiFileSocket *sockdata = sock->storage;
|
||||
NodeImageMultiFileSocket *sockdata = (NodeImageMultiFileSocket *)sock->storage;
|
||||
BLI_strncpy_utf8(sockdata->layer, name, sizeof(sockdata->layer));
|
||||
ntreeCompositOutputFileUniqueLayer(&node->inputs, sock, name, '_');
|
||||
}
|
||||
|
@ -193,9 +195,10 @@ static void init_output_file(const bContext *C, PointerRNA *ptr)
|
|||
{
|
||||
Scene *scene = CTX_data_scene(C);
|
||||
bNodeTree *ntree = (bNodeTree *)ptr->owner_id;
|
||||
bNode *node = ptr->data;
|
||||
NodeImageMultiFile *nimf = MEM_callocN(sizeof(NodeImageMultiFile), "node image multi file");
|
||||
ImageFormatData *format = NULL;
|
||||
bNode *node = (bNode *)ptr->data;
|
||||
NodeImageMultiFile *nimf = (NodeImageMultiFile *)MEM_callocN(sizeof(NodeImageMultiFile),
|
||||
"node image multi file");
|
||||
ImageFormatData *format = nullptr;
|
||||
node->storage = nimf;
|
||||
|
||||
if (scene) {
|
||||
|
@ -219,10 +222,8 @@ static void init_output_file(const bContext *C, PointerRNA *ptr)
|
|||
|
||||
static void free_output_file(bNode *node)
|
||||
{
|
||||
bNodeSocket *sock;
|
||||
|
||||
/* free storage data in sockets */
|
||||
for (sock = node->inputs.first; sock; sock = sock->next) {
|
||||
LISTBASE_FOREACH (bNodeSocket *, sock, &node->inputs) {
|
||||
MEM_freeN(sock->storage);
|
||||
}
|
||||
|
||||
|
@ -238,37 +239,35 @@ static void copy_output_file(bNodeTree *UNUSED(dest_ntree),
|
|||
dest_node->storage = MEM_dupallocN(src_node->storage);
|
||||
|
||||
/* duplicate storage data in sockets */
|
||||
for (src_sock = src_node->inputs.first, dest_sock = dest_node->inputs.first;
|
||||
for (src_sock = (bNodeSocket *)src_node->inputs.first,
|
||||
dest_sock = (bNodeSocket *)dest_node->inputs.first;
|
||||
src_sock && dest_sock;
|
||||
src_sock = src_sock->next, dest_sock = dest_sock->next) {
|
||||
src_sock = src_sock->next, dest_sock = (bNodeSocket *)dest_sock->next) {
|
||||
dest_sock->storage = MEM_dupallocN(src_sock->storage);
|
||||
}
|
||||
}
|
||||
|
||||
static void update_output_file(bNodeTree *ntree, bNode *node)
|
||||
{
|
||||
bNodeSocket *sock, *sock_next;
|
||||
PointerRNA ptr;
|
||||
|
||||
/* XXX fix for T36706: remove invalid sockets added with bpy API.
|
||||
* This is not ideal, but prevents crashes from missing storage.
|
||||
* FileOutput node needs a redesign to support this properly.
|
||||
*/
|
||||
for (sock = node->inputs.first; sock; sock = sock_next) {
|
||||
sock_next = sock->next;
|
||||
if (sock->storage == NULL) {
|
||||
LISTBASE_FOREACH (bNodeSocket *, sock, &node->inputs) {
|
||||
if (sock->storage == nullptr) {
|
||||
nodeRemoveSocket(ntree, node, sock);
|
||||
}
|
||||
}
|
||||
for (sock = node->outputs.first; sock; sock = sock_next) {
|
||||
sock_next = sock->next;
|
||||
LISTBASE_FOREACH (bNodeSocket *, sock, &node->outputs) {
|
||||
nodeRemoveSocket(ntree, node, sock);
|
||||
}
|
||||
|
||||
cmp_node_update_default(ntree, node);
|
||||
|
||||
/* automatically update the socket type based on linked input */
|
||||
for (sock = node->inputs.first; sock; sock = sock->next) {
|
||||
LISTBASE_FOREACH (bNodeSocket *, sock, &node->inputs) {
|
||||
if (sock->link) {
|
||||
RNA_pointer_create((ID *)ntree, &RNA_NodeSocket, sock, &ptr);
|
||||
RNA_enum_set(&ptr, "type", sock->link->fromsock->type);
|
||||
|
@ -281,7 +280,7 @@ void register_node_type_cmp_output_file(void)
|
|||
static bNodeType ntype;
|
||||
|
||||
cmp_node_type_base(&ntype, CMP_NODE_OUTPUT_FILE, "File Output", NODE_CLASS_OUTPUT, NODE_PREVIEW);
|
||||
node_type_socket_templates(&ntype, NULL, NULL);
|
||||
node_type_socket_templates(&ntype, nullptr, nullptr);
|
||||
ntype.initfunc_api = init_output_file;
|
||||
node_type_storage(&ntype, "NodeImageMultiFile", free_output_file, copy_output_file);
|
||||
node_type_update(&ntype, update_output_file);
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** Pixelate ******************** */
|
||||
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
static bNodeSocketTemplate cmp_node_planetrackdeform_in[] = {
|
||||
{SOCK_RGBA, N_("Image"), 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 1.0f, PROP_NONE}, {-1, ""}};
|
||||
|
@ -34,8 +34,8 @@ static bNodeSocketTemplate cmp_node_planetrackdeform_out[] = {
|
|||
|
||||
static void init(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
NodePlaneTrackDeformData *data = MEM_callocN(sizeof(NodePlaneTrackDeformData),
|
||||
"node plane track deform data");
|
||||
NodePlaneTrackDeformData *data = (NodePlaneTrackDeformData *)MEM_callocN(
|
||||
sizeof(NodePlaneTrackDeformData), "node plane track deform data");
|
||||
data->motion_blur_samples = 16;
|
||||
data->motion_blur_shutter = 0.5f;
|
||||
node->storage = data;
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** Posterize ******************** */
|
||||
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** Premul and Key Alpha Convert ******************** */
|
||||
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** RGB ******************** */
|
||||
static bNodeSocketTemplate cmp_node_rgb_out[] = {
|
||||
|
@ -34,7 +34,7 @@ void register_node_type_cmp_rgb(void)
|
|||
static bNodeType ntype;
|
||||
|
||||
cmp_node_type_base(&ntype, CMP_NODE_RGB, "RGB", NODE_CLASS_INPUT, 0);
|
||||
node_type_socket_templates(&ntype, NULL, cmp_node_rgb_out);
|
||||
node_type_socket_templates(&ntype, nullptr, cmp_node_rgb_out);
|
||||
node_type_size_preset(&ntype, NODE_SIZE_SMALL);
|
||||
|
||||
nodeRegisterType(&ntype);
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** Rotate ******************** */
|
||||
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** Scale ******************** */
|
||||
|
||||
|
@ -38,7 +38,7 @@ static void node_composite_update_scale(bNodeTree *UNUSED(ntree), bNode *node)
|
|||
bool use_xy_scale = ELEM(node->custom1, CMP_SCALE_RELATIVE, CMP_SCALE_ABSOLUTE);
|
||||
|
||||
/* Only show X/Y scale factor inputs for modes using them! */
|
||||
for (sock = node->inputs.first; sock; sock = sock->next) {
|
||||
for (sock = (bNodeSocket *)node->inputs.first; sock; sock = sock->next) {
|
||||
if (STR_ELEM(sock->name, "X", "Y")) {
|
||||
if (use_xy_scale) {
|
||||
sock->flag &= ~SOCK_UNAVAIL;
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** SEPARATE HSVA ******************** */
|
||||
static bNodeSocketTemplate cmp_node_sephsva_in[] = {
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** SEPARATE RGBA ******************** */
|
||||
static bNodeSocketTemplate cmp_node_seprgba_in[] = {
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** SEPARATE YCCA ******************** */
|
||||
static bNodeSocketTemplate cmp_node_sepycca_in[] = {
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** SEPARATE YUVA ******************** */
|
||||
static bNodeSocketTemplate cmp_node_sepyuva_in[] = {
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** SET ALPHA ******************** */
|
||||
static bNodeSocketTemplate cmp_node_setalpha_in[] = {
|
||||
|
@ -36,7 +36,7 @@ static bNodeSocketTemplate cmp_node_setalpha_out[] = {
|
|||
|
||||
static void node_composit_init_setalpha(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
NodeSetAlpha *settings = MEM_callocN(sizeof(NodeSetAlpha), __func__);
|
||||
NodeSetAlpha *settings = (NodeSetAlpha *)MEM_callocN(sizeof(NodeSetAlpha), __func__);
|
||||
node->storage = settings;
|
||||
settings->mode = CMP_NODE_SETALPHA_MODE_APPLY;
|
||||
}
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
#include "BKE_global.h"
|
||||
#include "BKE_image.h"
|
||||
|
@ -35,7 +35,7 @@ static bNodeSocketTemplate cmp_node_splitviewer_in[] = {
|
|||
|
||||
static void node_composit_init_splitviewer(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
ImageUser *iuser = MEM_callocN(sizeof(ImageUser), "node image user");
|
||||
ImageUser *iuser = (ImageUser *)MEM_callocN(sizeof(ImageUser), "node image user");
|
||||
node->storage = iuser;
|
||||
iuser->sfra = 1;
|
||||
iuser->ok = 1;
|
||||
|
@ -50,12 +50,12 @@ void register_node_type_cmp_splitviewer(void)
|
|||
|
||||
cmp_node_type_base(
|
||||
&ntype, CMP_NODE_SPLITVIEWER, "Split Viewer", NODE_CLASS_OUTPUT, NODE_PREVIEW);
|
||||
node_type_socket_templates(&ntype, cmp_node_splitviewer_in, NULL);
|
||||
node_type_socket_templates(&ntype, cmp_node_splitviewer_in, nullptr);
|
||||
node_type_init(&ntype, node_composit_init_splitviewer);
|
||||
node_type_storage(&ntype, "ImageUser", node_free_standard_storage, node_copy_standard_storage);
|
||||
|
||||
/* Do not allow muting for this node. */
|
||||
node_type_internal_links(&ntype, NULL);
|
||||
node_type_internal_links(&ntype, nullptr);
|
||||
|
||||
nodeRegisterType(&ntype);
|
||||
}
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
#include "BKE_context.h"
|
||||
#include "BKE_lib_id.h"
|
||||
|
@ -40,7 +40,7 @@ static bNodeSocketTemplate cmp_node_stabilize2d_out[] = {
|
|||
|
||||
static void init(const bContext *C, PointerRNA *ptr)
|
||||
{
|
||||
bNode *node = ptr->data;
|
||||
bNode *node = (bNode *)ptr->data;
|
||||
Scene *scene = CTX_data_scene(C);
|
||||
|
||||
node->id = (ID *)scene->clip;
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
static bNodeSocketTemplate inputs[] = {
|
||||
{SOCK_RGBA, N_("Image"), 1.0f, 1.0f, 1.0f, 1.0f},
|
||||
|
@ -34,11 +34,10 @@ static bNodeSocketTemplate outputs[] = {
|
|||
|
||||
static void init(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
NodeSunBeams *data = MEM_callocN(sizeof(NodeSunBeams), "sun beams node");
|
||||
NodeSunBeams *data = (NodeSunBeams *)MEM_callocN(sizeof(NodeSunBeams), "sun beams node");
|
||||
|
||||
data->source[0] = 0.5f;
|
||||
data->source[1] = 0.5f;
|
||||
|
||||
node->storage = data;
|
||||
}
|
||||
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "../node_composite_util.h"
|
||||
#include "../node_composite_util.hh"
|
||||
|
||||
/* **************** MIX RGB ******************** */
|
||||
static bNodeSocketTemplate cmp_node_switch_in[] = {
|
|
@ -25,7 +25,7 @@
|
|||
#include "BKE_context.h"
|
||||
#include "BKE_lib_id.h"
|
||||
|
||||
#include "../node_composite_util.h"
|
||||
#include "../node_composite_util.hh"
|
||||
|
||||
/* **************** SWITCH VIEW ******************** */
|
||||
static bNodeSocketTemplate cmp_node_switch_view_out[] = {
|
||||
|
@ -37,26 +37,23 @@ static bNodeSocket *ntreeCompositSwitchViewAddSocket(bNodeTree *ntree,
|
|||
bNode *node,
|
||||
const char *name)
|
||||
{
|
||||
bNodeSocket *sock = nodeAddStaticSocket(ntree, node, SOCK_IN, SOCK_RGBA, PROP_NONE, NULL, name);
|
||||
bNodeSocket *sock = nodeAddStaticSocket(
|
||||
ntree, node, SOCK_IN, SOCK_RGBA, PROP_NONE, nullptr, name);
|
||||
return sock;
|
||||
}
|
||||
|
||||
static void cmp_node_switch_view_sanitycheck(bNodeTree *ntree, bNode *node)
|
||||
{
|
||||
bNodeSocket *sock;
|
||||
|
||||
if (!BLI_listbase_is_empty(&node->inputs)) {
|
||||
return;
|
||||
}
|
||||
|
||||
sock = ntreeCompositSwitchViewAddSocket(ntree, node, "No View");
|
||||
bNodeSocket *sock = ntreeCompositSwitchViewAddSocket(ntree, node, "No View");
|
||||
sock->flag |= SOCK_HIDDEN;
|
||||
}
|
||||
|
||||
static void cmp_node_switch_view_update(bNodeTree *ntree, bNode *node)
|
||||
{
|
||||
bNodeSocket *sock;
|
||||
SceneRenderView *srv;
|
||||
Scene *scene = (Scene *)node->id;
|
||||
|
||||
/* only update when called from the operator button */
|
||||
|
@ -64,7 +61,7 @@ static void cmp_node_switch_view_update(bNodeTree *ntree, bNode *node)
|
|||
return;
|
||||
}
|
||||
|
||||
if (scene == NULL) {
|
||||
if (scene == nullptr) {
|
||||
nodeRemoveAllSockets(ntree, node);
|
||||
/* make sure there is always one socket */
|
||||
cmp_node_switch_view_sanitycheck(ntree, node);
|
||||
|
@ -72,11 +69,12 @@ static void cmp_node_switch_view_update(bNodeTree *ntree, bNode *node)
|
|||
}
|
||||
|
||||
/* remove the views that were removed */
|
||||
sock = node->inputs.last;
|
||||
bNodeSocket *sock = (bNodeSocket *)node->inputs.last;
|
||||
while (sock) {
|
||||
srv = BLI_findstring(&scene->r.views, sock->name, offsetof(SceneRenderView, name));
|
||||
SceneRenderView *srv = (SceneRenderView *)BLI_findstring(
|
||||
&scene->r.views, sock->name, offsetof(SceneRenderView, name));
|
||||
|
||||
if (srv == NULL) {
|
||||
if (srv == nullptr) {
|
||||
bNodeSocket *sock_del = sock;
|
||||
sock = sock->prev;
|
||||
nodeRemoveSocket(ntree, node, sock_del);
|
||||
|
@ -94,10 +92,10 @@ static void cmp_node_switch_view_update(bNodeTree *ntree, bNode *node)
|
|||
}
|
||||
|
||||
/* add the new views */
|
||||
for (srv = scene->r.views.first; srv; srv = srv->next) {
|
||||
sock = BLI_findstring(&node->inputs, srv->name, offsetof(bNodeSocket, name));
|
||||
LISTBASE_FOREACH (SceneRenderView *, srv, &scene->r.views) {
|
||||
sock = (bNodeSocket *)BLI_findstring(&node->inputs, srv->name, offsetof(bNodeSocket, name));
|
||||
|
||||
if (sock == NULL) {
|
||||
if (sock == nullptr) {
|
||||
sock = ntreeCompositSwitchViewAddSocket(ntree, node, srv->name);
|
||||
}
|
||||
|
||||
|
@ -117,10 +115,7 @@ static void init_switch_view(const bContext *C, PointerRNA *ptr)
|
|||
{
|
||||
Scene *scene = CTX_data_scene(C);
|
||||
bNodeTree *ntree = (bNodeTree *)ptr->owner_id;
|
||||
bNode *node = ptr->data;
|
||||
SceneRenderView *srv;
|
||||
bNodeSocket *sock;
|
||||
int nr;
|
||||
bNode *node = (bNode *)ptr->data;
|
||||
|
||||
/* store scene for updates */
|
||||
node->id = (ID *)scene;
|
||||
|
@ -129,8 +124,8 @@ static void init_switch_view(const bContext *C, PointerRNA *ptr)
|
|||
if (scene) {
|
||||
RenderData *rd = &scene->r;
|
||||
|
||||
for (nr = 0, srv = rd->views.first; srv; srv = srv->next, nr++) {
|
||||
sock = ntreeCompositSwitchViewAddSocket(ntree, node, srv->name);
|
||||
LISTBASE_FOREACH (SceneRenderView *, srv, &rd->views) {
|
||||
bNodeSocket *sock = ntreeCompositSwitchViewAddSocket(ntree, node, srv->name);
|
||||
|
||||
if (srv->viewflag & SCE_VIEW_DISABLE) {
|
||||
sock->flag |= SOCK_HIDDEN;
|
||||
|
@ -147,7 +142,7 @@ void register_node_type_cmp_switch_view(void)
|
|||
static bNodeType ntype;
|
||||
|
||||
cmp_node_type_base(&ntype, CMP_NODE_SWITCH_VIEW, "Switch View", NODE_CLASS_CONVERTER, 0);
|
||||
node_type_socket_templates(&ntype, NULL, cmp_node_switch_view_out);
|
||||
node_type_socket_templates(&ntype, nullptr, cmp_node_switch_view_out);
|
||||
|
||||
ntype.initfunc_api = init_switch_view;
|
||||
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** TEXTURE ******************** */
|
||||
static bNodeSocketTemplate cmp_node_texture_in[] = {
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
static bNodeSocketTemplate cmp_node_tonemap_in[] = {
|
||||
{SOCK_RGBA, N_("Image"), 1.0f, 1.0f, 1.0f, 1.0f},
|
||||
|
@ -34,7 +34,7 @@ static bNodeSocketTemplate cmp_node_tonemap_out[] = {
|
|||
|
||||
static void node_composit_init_tonemap(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
NodeTonemap *ntm = MEM_callocN(sizeof(NodeTonemap), "node tonemap data");
|
||||
NodeTonemap *ntm = (NodeTonemap *)MEM_callocN(sizeof(NodeTonemap), "node tonemap data");
|
||||
ntm->type = 1;
|
||||
ntm->key = 0.18;
|
||||
ntm->offset = 1;
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
static bNodeSocketTemplate cmp_node_trackpos_out[] = {
|
||||
{SOCK_FLOAT, N_("X")},
|
||||
|
@ -32,7 +32,8 @@ static bNodeSocketTemplate cmp_node_trackpos_out[] = {
|
|||
|
||||
static void init(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
NodeTrackPosData *data = MEM_callocN(sizeof(NodeTrackPosData), "node track position data");
|
||||
NodeTrackPosData *data = (NodeTrackPosData *)MEM_callocN(sizeof(NodeTrackPosData),
|
||||
"node track position data");
|
||||
|
||||
node->storage = data;
|
||||
}
|
||||
|
@ -42,7 +43,7 @@ void register_node_type_cmp_trackpos(void)
|
|||
static bNodeType ntype;
|
||||
|
||||
cmp_node_type_base(&ntype, CMP_NODE_TRACKPOS, "Track Position", NODE_CLASS_INPUT, 0);
|
||||
node_type_socket_templates(&ntype, NULL, cmp_node_trackpos_out);
|
||||
node_type_socket_templates(&ntype, nullptr, cmp_node_trackpos_out);
|
||||
node_type_init(&ntype, init);
|
||||
node_type_storage(
|
||||
&ntype, "NodeTrackPosData", node_free_standard_storage, node_copy_standard_storage);
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** Transform ******************** */
|
||||
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** Translate ******************** */
|
||||
|
||||
|
@ -38,7 +38,8 @@ static bNodeSocketTemplate cmp_node_translate_out[] = {
|
|||
|
||||
static void node_composit_init_translate(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
NodeTranslateData *data = MEM_callocN(sizeof(NodeTranslateData), "node translate data");
|
||||
NodeTranslateData *data = (NodeTranslateData *)MEM_callocN(sizeof(NodeTranslateData),
|
||||
"node translate data");
|
||||
node->storage = data;
|
||||
}
|
||||
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** VALTORGB ******************** */
|
||||
static bNodeSocketTemplate cmp_node_valtorgb_in[] = {
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** VALUE ******************** */
|
||||
static bNodeSocketTemplate cmp_node_value_out[] = {
|
||||
|
@ -34,7 +34,7 @@ void register_node_type_cmp_value(void)
|
|||
static bNodeType ntype;
|
||||
|
||||
cmp_node_type_base(&ntype, CMP_NODE_VALUE, "Value", NODE_CLASS_INPUT, 0);
|
||||
node_type_socket_templates(&ntype, NULL, cmp_node_value_out);
|
||||
node_type_socket_templates(&ntype, nullptr, cmp_node_value_out);
|
||||
node_type_size_preset(&ntype, NODE_SIZE_SMALL);
|
||||
|
||||
nodeRegisterType(&ntype);
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** VECTOR BLUR ******************** */
|
||||
static bNodeSocketTemplate cmp_node_vecblur_in[] = {
|
||||
|
@ -33,7 +33,7 @@ static bNodeSocketTemplate cmp_node_vecblur_out[] = {{SOCK_RGBA, N_("Image")}, {
|
|||
|
||||
static void node_composit_init_vecblur(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
NodeBlurData *nbd = MEM_callocN(sizeof(NodeBlurData), "node blur data");
|
||||
NodeBlurData *nbd = (NodeBlurData *)MEM_callocN(sizeof(NodeBlurData), "node blur data");
|
||||
node->storage = nbd;
|
||||
nbd->samples = 32;
|
||||
nbd->fac = 1.0f;
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
#include "BKE_global.h"
|
||||
#include "BKE_image.h"
|
||||
|
@ -35,7 +35,7 @@ static bNodeSocketTemplate cmp_node_viewer_in[] = {
|
|||
|
||||
static void node_composit_init_viewer(bNodeTree *UNUSED(ntree), bNode *node)
|
||||
{
|
||||
ImageUser *iuser = MEM_callocN(sizeof(ImageUser), "node image user");
|
||||
ImageUser *iuser = (ImageUser *)MEM_callocN(sizeof(ImageUser), "node image user");
|
||||
node->storage = iuser;
|
||||
iuser->sfra = 1;
|
||||
iuser->ok = 1;
|
||||
|
@ -50,11 +50,11 @@ void register_node_type_cmp_viewer(void)
|
|||
static bNodeType ntype;
|
||||
|
||||
cmp_node_type_base(&ntype, CMP_NODE_VIEWER, "Viewer", NODE_CLASS_OUTPUT, NODE_PREVIEW);
|
||||
node_type_socket_templates(&ntype, cmp_node_viewer_in, NULL);
|
||||
node_type_socket_templates(&ntype, cmp_node_viewer_in, nullptr);
|
||||
node_type_init(&ntype, node_composit_init_viewer);
|
||||
node_type_storage(&ntype, "ImageUser", node_free_standard_storage, node_copy_standard_storage);
|
||||
|
||||
node_type_internal_links(&ntype, NULL);
|
||||
node_type_internal_links(&ntype, nullptr);
|
||||
|
||||
nodeRegisterType(&ntype);
|
||||
}
|
|
@ -21,7 +21,7 @@
|
|||
* \ingroup cmpnodes
|
||||
*/
|
||||
|
||||
#include "node_composite_util.h"
|
||||
#include "node_composite_util.hh"
|
||||
|
||||
/* **************** Z COMBINE ******************** */
|
||||
/* lazy coder NOTE: node->custom2 is abused to send signal. */
|
|
@ -373,13 +373,6 @@ void WM_init(bContext *C, int argc, const char **argv)
|
|||
|
||||
BLI_strncpy(G.lib, BKE_main_blendfile_path_from_global(), sizeof(G.lib));
|
||||
|
||||
#ifdef WITH_COMPOSITOR
|
||||
if (1) {
|
||||
extern void *COM_linker_hack;
|
||||
COM_linker_hack = COM_execute;
|
||||
}
|
||||
#endif
|
||||
|
||||
wm_homefile_read_post(C, params_file_read_post);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue