|
Blender
V2.93
|
#include <deg_node_id.h>
Inherits blender::deg::Node.
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 |
Public Member Functions inherited from blender::deg::Node | |
| Node () | |
| virtual | ~Node () |
| virtual OperationNode * | get_entry_operation () |
| virtual OperationNode * | get_exit_operation () |
| virtual NodeClass | get_class () const |
| MEM_CXX_CLASS_ALLOC_FUNCS ("Node") | |
Public Attributes | |
| ID_Type | id_type |
| ID * | id_orig |
| uint | id_orig_session_uuid |
| ID * | id_cow |
| Map< ComponentIDKey, ComponentNode * > | components |
| uint32_t | eval_flags |
| uint32_t | previous_eval_flags |
| DEGCustomDataMeshMasks | customdata_masks |
| DEGCustomDataMeshMasks | previous_customdata_masks |
| eDepsNode_LinkedState_Type | linked_state |
| bool | is_directly_visible |
| bool | is_collection_fully_expanded |
| bool | has_base |
| bool | is_user_modified |
| int | id_cow_recalc_backup |
| IDComponentsMask | visible_components_mask |
| IDComponentsMask | previously_visible_components_mask |
| DEG_DEPSNODE_DECLARE | |
Public Attributes inherited from blender::deg::Node | |
| string | name |
| NodeType | type |
| Relations | inlinks |
| Relations | outlinks |
| Stats | stats |
| int | custom_flags |
Additional Inherited Members | |
Public Types inherited from blender::deg::Node | |
| typedef Vector< Relation * > | Relations |
Definition at line 51 of file deg_node_id.h.
| blender::deg::IDNode::~IDNode | ( | ) |
Definition at line 125 of file deg_node_id.cc.
References destroy().
| ComponentNode * blender::deg::IDNode::add_component | ( | NodeType | type, |
| const char * | name = "" |
||
| ) |
Definition at line 168 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 130 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().
| void blender::deg::IDNode::finalize_build | ( | Depsgraph * | graph | ) |
Definition at line 195 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 162 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 204 of file deg_node_id.cc.
References BLI_assert, components, and result.
Referenced by finalize_build().
|
overridevirtual |
Reimplemented from blender::deg::Node.
Definition at line 152 of file deg_node_id.cc.
References BLI_snprintf(), id_cow, id_orig, is_directly_visible, blender::deg::Node::name, blender::deg::nodeTypeAsString(), and blender::deg::Node::type.
|
overridevirtual |
Reimplemented from blender::deg::Node.
Definition at line 77 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_directly_visible, is_user_modified, linked_state, ID::name, previous_customdata_masks, previous_eval_flags, previously_visible_components_mask, and visible_components_mask.
| void blender::deg::IDNode::init_copy_on_write | ( | ID * | id_cow_hint = nullptr | ) |
Definition at line 99 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 183 of file deg_node_id.cc.
References blender::deg::ANIMATION, components, blender::deg::DEG_UPDATE_SOURCE_RELATIONS, and graph.
| Map<ComponentIDKey, ComponentNode *> blender::deg::IDNode::components |
Definition at line 96 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(), destroy(), finalize_build(), find_component(), get_visible_components_mask(), and tag_update().
| DEGCustomDataMeshMasks blender::deg::IDNode::customdata_masks |
Definition at line 105 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 101 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 118 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 93 of file deg_node_id.h.
Referenced by blender::deg::clear_id_nodes_conditional(), blender::deg::deg_evaluate_copy_on_write(), blender::deg::deg_expand_copy_on_write_datablock(), blender::deg::deg_graph_build_finalize(), blender::deg::deg_update_copy_on_write_datablock(), destroy(), blender::deg::graph_id_tag_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 83 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(), blender::deg::deg_expand_copy_on_write_datablock(), DEG_get_id_from_handle(), blender::deg::deg_graph_build_finalize(), blender::deg::deg_update_copy_on_write_datablock(), destroy(), 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 89 of file deg_node_id.h.
Referenced by init().
| ID_Type blender::deg::IDNode::id_type |
Definition at line 80 of file deg_node_id.h.
Referenced by init().
| bool blender::deg::IDNode::is_collection_fully_expanded |
Definition at line 115 of file deg_node_id.h.
Referenced by init().
| bool blender::deg::IDNode::is_directly_visible |
Definition at line 111 of file deg_node_id.h.
Referenced by identifier(), and init().
| bool blender::deg::IDNode::is_user_modified |
Definition at line 121 of file deg_node_id.h.
Referenced by init().
| eDepsNode_LinkedState_Type blender::deg::IDNode::linked_state |
Definition at line 108 of file deg_node_id.h.
Referenced by init().
| DEGCustomDataMeshMasks blender::deg::IDNode::previous_customdata_masks |
Definition at line 106 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 102 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 init().
| IDComponentsMask blender::deg::IDNode::visible_components_mask |
Definition at line 126 of file deg_node_id.h.
Referenced by finalize_build(), and init().