Blender V4.3
node_composite_tree.cc File Reference
#include <cstdio>
#include "BLI_string.h"
#include "DNA_color_types.h"
#include "DNA_node_types.h"
#include "DNA_scene_types.h"
#include "BKE_context.hh"
#include "BKE_global.hh"
#include "BKE_image.hh"
#include "BKE_main.hh"
#include "BKE_node.hh"
#include "BKE_node_runtime.hh"
#include "BKE_node_tree_update.hh"
#include "BKE_tracking.h"
#include "UI_resources.hh"
#include "node_common.h"
#include "RNA_prototypes.hh"
#include "NOD_composite.hh"
#include "node_composite_util.hh"

Go to the source code of this file.

Functions

static void composite_get_from_context (const bContext *C, blender::bke::bNodeTreeType *, bNodeTree **r_ntree, ID **r_id, ID **r_from)
 
static void foreach_nodeclass (void *calldata, blender::bke::bNodeClassCallback func)
 
static void localize (bNodeTree *localtree, bNodeTree *ntree)
 
static void local_merge (Main *bmain, bNodeTree *localtree, bNodeTree *ntree)
 
static void update (bNodeTree *ntree)
 
static void composite_node_add_init (bNodeTree *, bNode *bnode)
 
static bool composite_node_tree_socket_type_valid (blender::bke::bNodeTreeType *, blender::bke::bNodeSocketType *socket_type)
 
void register_node_tree_type_cmp ()
 
void ntreeCompositExecTree (Render *render, Scene *scene, bNodeTree *ntree, RenderData *rd, const char *view_name, blender::realtime_compositor::RenderContext *render_context, blender::realtime_compositor::Profiler *profiler)
 
void ntreeCompositUpdateRLayers (bNodeTree *ntree)
 
void ntreeCompositTagRender (Scene *scene)
 
void ntreeCompositClearTags (bNodeTree *ntree)
 
void ntreeCompositTagNeedExec (bNode *node)
 

Variables

blender::bke::bNodeTreeTypentreeType_Composite
 

Function Documentation

◆ composite_get_from_context()

static void composite_get_from_context ( const bContext * C,
blender::bke::bNodeTreeType * ,
bNodeTree ** r_ntree,
ID ** r_id,
ID ** r_from )
static

Definition at line 39 of file node_composite_tree.cc.

References CTX_data_scene().

Referenced by register_node_tree_type_cmp().

◆ composite_node_add_init()

static void composite_node_add_init ( bNodeTree * ,
bNode * bnode )
static

Definition at line 134 of file node_composite_tree.cc.

References bNode::flag, NODE_CLASS_INPUT, and bNode::typeinfo.

Referenced by register_node_tree_type_cmp().

◆ composite_node_tree_socket_type_valid()

static bool composite_node_tree_socket_type_valid ( blender::bke::bNodeTreeType * ,
blender::bke::bNodeSocketType * socket_type )
static

◆ foreach_nodeclass()

◆ local_merge()

◆ localize()

static void localize ( bNodeTree * localtree,
bNodeTree * ntree )
static

◆ ntreeCompositClearTags()

void ntreeCompositClearTags ( bNodeTree * ntree)

Definition at line 237 of file node_composite_tree.cc.

References NODE_GROUP, and ntreeCompositClearTags().

Referenced by ntreeCompositClearTags(), and render_endjob().

◆ ntreeCompositExecTree()

void ntreeCompositExecTree ( Render * render,
Scene * scene,
bNodeTree * ntree,
RenderData * rd,
const char * view_name,
blender::realtime_compositor::RenderContext * render_context,
blender::realtime_compositor::Profiler * profiler )

◆ ntreeCompositTagNeedExec()

void ntreeCompositTagNeedExec ( bNode * node)

Definition at line 253 of file node_composite_tree.cc.

◆ ntreeCompositTagRender()

void ntreeCompositTagRender ( Scene * scene)

Called from render pipeline, to tag render input and output. need to do all scenes, to prevent errors when you re-render 1 scene.

Definition at line 213 of file node_composite_tree.cc.

References BKE_ntree_update_main(), BKE_ntree_update_tag_node_property(), CMP_NODE_COMPOSITE, and G_MAIN.

Referenced by do_render_compositor(), blender::ed::space_node::node_read_viewlayers_exec(), and render_init_from_main().

◆ ntreeCompositUpdateRLayers()

void ntreeCompositUpdateRLayers ( bNodeTree * ntree)

Update the outputs of the render layer nodes. Since the outputs depend on the render engine, this part is a bit complex:

Definition at line 195 of file node_composite_tree.cc.

References CMP_NODE_CRYPTOMATTE_SOURCE_RENDER, and node_cmp_rlayers_outputs().

Referenced by ED_render_engine_changed(), view_layer_add_aov_exec(), view_layer_add_lightgroup_exec(), view_layer_add_used_lightgroups_exec(), view_layer_remove_aov_exec(), view_layer_remove_lightgroup_exec(), view_layer_remove_unused_lightgroups_exec(), and wm_file_read_post().

◆ register_node_tree_type_cmp()

◆ update()

Variable Documentation

◆ ntreeType_Composite