Blender
V3.3
|
#include <deg_node_id.h>
Classes | |
struct | ComponentIDKey |
Public Member Functions | |
virtual void | init (const ID *id, const char *subdata) override |
void | init_copy_on_write (ID *id_cow_hint=nullptr) |
~IDNode () | |
void | destroy () |
virtual string | identifier () const override |
ComponentNode * | find_component (NodeType type, const char *name="") const |
ComponentNode * | add_component (NodeType type, const char *name="") |
virtual void | tag_update (Depsgraph *graph, eUpdateSource source) override |
void | finalize_build (Depsgraph *graph) |
IDComponentsMask | get_visible_components_mask () const |
![]() | |
Node () | |
virtual | ~Node () |
virtual OperationNode * | get_entry_operation () |
virtual OperationNode * | get_exit_operation () |
virtual NodeClass | get_class () const |
MEM_CXX_CLASS_ALLOC_FUNCS ("Node") | |
Additional Inherited Members | |
![]() | |
typedef Vector< Relation * > | Relations |
Definition at line 34 of file deg_node_id.h.
blender::deg::IDNode::~IDNode | ( | ) |
Definition at line 109 of file deg_node_id.cc.
References destroy().
ComponentNode * blender::deg::IDNode::add_component | ( | NodeType | type, |
const char * | name = "" |
||
) |
Definition at line 152 of file deg_node_id.cc.
References components, blender::deg::DepsNodeFactory::create_node(), find_component(), blender::deg::Node::name, blender::deg::ComponentNode::owner, blender::deg::Node::type, and blender::deg::type_get_factory().
void blender::deg::IDNode::destroy | ( | ) |
Definition at line 114 of file deg_node_id.cc.
References components, DEG_COW_PRINT, blender::deg::deg_free_copy_on_write_datablock(), ELEM, id_cow, id_orig, MEM_freeN, and ID::name.
Referenced by blender::deg::clear_id_nodes_conditional(), and ~IDNode().
Definition at line 179 of file deg_node_id.cc.
References components, get_visible_components_mask(), graph, and visible_components_mask.
Referenced by blender::deg::deg_graph_build_finalize().
ComponentNode * blender::deg::IDNode::find_component | ( | NodeType | type, |
const char * | name = "" |
||
) | const |
Definition at line 146 of file deg_node_id.cc.
References components, blender::deg::Node::name, and blender::deg::Node::type.
Referenced by add_component().
IDComponentsMask blender::deg::IDNode::get_visible_components_mask | ( | ) | const |
Definition at line 188 of file deg_node_id.cc.
References BLI_assert, components, and result.
Referenced by finalize_build().
|
overridevirtual |
Generic identifier for Depsgraph Nodes.
Reimplemented from blender::deg::Node.
Definition at line 136 of file deg_node_id.cc.
References BLI_snprintf(), id_cow, id_orig, is_visible_on_build, blender::deg::Node::name, blender::deg::nodeTypeAsString(), and blender::deg::Node::type.
Initialize 'id' node - from pointer data given.
Reimplemented from blender::deg::Node.
Definition at line 60 of file deg_node_id.cc.
References BLI_assert, customdata_masks, blender::deg::DEG_ID_LINKED_INDIRECTLY, eval_flags, GS, has_base, id, id_cow_recalc_backup, id_orig, id_orig_session_uuid, id_type, is_collection_fully_expanded, is_enabled_on_eval, is_user_modified, is_visible_on_build, linked_state, ID::name, previous_customdata_masks, previous_eval_flags, previously_visible_components_mask, and visible_components_mask.
Definition at line 83 of file deg_node_id.cc.
References BKE_libblock_alloc_notest(), blender::deg::deg_copy_on_write_is_needed(), DEG_COW_PRINT, blender::deg::deg_tag_copy_on_write_id(), GS, id_cow, id_orig, and ID::name.
|
overridevirtual |
Reimplemented from blender::deg::Node.
Definition at line 167 of file deg_node_id.cc.
References blender::deg::ANIMATION, components, blender::deg::DEG_UPDATE_SOURCE_RELATIONS, and graph.
Referenced by blender::deg::graph_tag_ids_for_visible_update().
Map<ComponentIDKey, ComponentNode *> blender::deg::IDNode::components |
Definition at line 80 of file deg_node_id.h.
Referenced by add_component(), blender::deg::deg_debug_graphviz_graph_relations(), blender::deg::deg_debug_graphviz_node(), blender::deg::deg_eval_stats_aggregate(), blender::deg::deg_graph_flush_visibility_flags(), destroy(), finalize_build(), find_component(), get_visible_components_mask(), and tag_update().
DEGCustomDataMeshMasks blender::deg::IDNode::customdata_masks |
Definition at line 89 of file deg_node_id.h.
Referenced by blender::deg::deg_graph_build_finalize(), and init().
blender::deg::IDNode::DEG_DEPSNODE_DECLARE |
Definition at line 129 of file deg_node_id.h.
uint32_t blender::deg::IDNode::eval_flags |
Definition at line 85 of file deg_node_id.h.
Referenced by blender::deg::deg_graph_build_finalize(), and init().
bool blender::deg::IDNode::has_base |
Definition at line 115 of file deg_node_id.h.
Referenced by blender::deg::deg_check_base_in_depsgraph(), and init().
ID* blender::deg::IDNode::id_cow |
Definition at line 77 of file deg_node_id.h.
Referenced by blender::deg::clear_id_nodes_conditional(), blender::deg::deg_evaluate_copy_on_write(), blender::deg::deg_evaluate_object_node_visibility(), blender::deg::deg_graph_build_finalize(), blender::deg::deg_update_copy_on_write_datablock(), destroy(), blender::deg::get_evaluated_id(), blender::deg::graph_id_tag_update(), blender::deg::graph_tag_ids_for_visible_update(), identifier(), and init_copy_on_write().
int blender::deg::IDNode::id_cow_recalc_backup |
Definition at line 124 of file deg_node_id.h.
Referenced by init().
ID* blender::deg::IDNode::id_orig |
Definition at line 67 of file deg_node_id.h.
Referenced by blender::deg::DepsgraphRelationBuilder::build_animdata_curves_targets(), blender::deg::DepsgraphRelationBuilder::build_driver_data(), blender::deg::clear_id_nodes_conditional(), blender::deg::deg_evaluate_copy_on_write(), DEG_get_id_from_handle(), blender::deg::deg_graph_build_finalize(), blender::deg::deg_update_copy_on_write_datablock(), destroy(), blender::deg::graph_tag_ids_for_visible_update(), identifier(), init(), init_copy_on_write(), and blender::deg::DepsgraphRelationBuilder::is_same_nodetree_node_dependency().
uint blender::deg::IDNode::id_orig_session_uuid |
Definition at line 73 of file deg_node_id.h.
Referenced by init().
ID_Type blender::deg::IDNode::id_type |
Definition at line 64 of file deg_node_id.h.
Referenced by init(), and blender::deg::ParametersComponentNode::need_tag_cow_before_update().
bool blender::deg::IDNode::is_collection_fully_expanded |
Definition at line 112 of file deg_node_id.h.
Referenced by init().
bool blender::deg::IDNode::is_cow_explicitly_tagged |
Definition at line 121 of file deg_node_id.h.
Referenced by blender::deg::deg_update_copy_on_write_datablock().
bool blender::deg::IDNode::is_enabled_on_eval |
Definition at line 108 of file deg_node_id.h.
Referenced by blender::deg::deg_evaluate_object_node_visibility(), blender::deg::deg_graph_flush_visibility_flags(), and init().
bool blender::deg::IDNode::is_user_modified |
Definition at line 118 of file deg_node_id.h.
Referenced by init().
bool blender::deg::IDNode::is_visible_on_build |
Definition at line 99 of file deg_node_id.h.
Referenced by blender::deg::deg_graph_flush_visibility_flags(), identifier(), and init().
eDepsNode_LinkedState_Type blender::deg::IDNode::linked_state |
Definition at line 92 of file deg_node_id.h.
Referenced by init().
DEGCustomDataMeshMasks blender::deg::IDNode::previous_customdata_masks |
Definition at line 90 of file deg_node_id.h.
Referenced by blender::deg::deg_graph_build_finalize(), and init().
uint32_t blender::deg::IDNode::previous_eval_flags |
Definition at line 86 of file deg_node_id.h.
Referenced by blender::deg::deg_graph_build_finalize(), and init().
IDComponentsMask blender::deg::IDNode::previously_visible_components_mask |
Definition at line 127 of file deg_node_id.h.
Referenced by blender::deg::graph_tag_ids_for_visible_update(), and init().
IDComponentsMask blender::deg::IDNode::visible_components_mask |
Definition at line 126 of file deg_node_id.h.
Referenced by finalize_build(), blender::deg::graph_tag_ids_for_visible_update(), and init().