|
Blender V5.0
|
#include <deg_node_component.hh>
Inherits blender::deg::Node.
Inherited by blender::deg::AudioComponentNode, blender::deg::BoneComponentNode, and blender::deg::ParametersComponentNode.
Classes | |
| struct | OperationIDKey |
Public Attributes | |
| IDNode * | owner |
| Map< ComponentNode::OperationIDKey, OperationNode * > * | operations_map |
| Vector< OperationNode * > | operations |
| OperationNode * | entry_operation |
| OperationNode * | exit_operation |
| bool | possibly_affects_visible_id |
| bool | affects_visible_id |
| Public Attributes inherited from blender::deg::Node | |
| std::string | name |
| NodeType | type |
| Relations | inlinks |
| Relations | outlinks |
| Stats | stats |
| int | custom_flags |
Additional Inherited Members | |
| Public Types inherited from blender::deg::Node | |
| using | Relations = Vector<Relation *> |
Definition at line 32 of file deg_node_component.hh.
| blender::deg::ComponentNode::ComponentNode | ( | ) |
Definition at line 36 of file deg_node_component.cc.
References affects_visible_id, entry_operation, exit_operation, false, nullptr, operations_map, and possibly_affects_visible_id.
|
override |
Definition at line 52 of file deg_node_component.cc.
References clear_operations(), and operations_map.
| OperationNode * blender::deg::ComponentNode::add_operation | ( | const DepsEvalOperationCb & | op, |
| OperationCode | opcode, | ||
| const StringRef | name = "", | ||
| int | name_tag = -1 ) |
Create a new node for representing an operation and add this to graph
| opcode | The operation to perform. |
| name | An optional identifier for operation. It will be used to tell operation nodes with the same code apart. For example, parameter operation code will have name set to the corresponding custom property name |
| name_tag | An optional integer tag for the name. Is an additional way to tell operations apart. For example, RNA path to an array property will have the same opcode of PARAMETERS, name corresponding to the property name, and name tag corresponding to the array index within the property. |
Definition at line 127 of file deg_node_component.cc.
References BLI_assert_msg, blender::deg::DepsNodeFactory::create_node(), blender::deg::OperationNode::evaluate, find_operation(), identifier(), blender::deg::OperationNode::identifier(), blender::deg::Node::name, blender::deg::OperationNode::name_tag, blender::deg::OperationNode::opcode, blender::deg::OPERATION, operations_map, blender::deg::OperationNode::owner, and blender::deg::type_get_factory().
Referenced by blender::deg::DepsgraphNodeBuilder::add_id_node(), and blender::deg::DepsgraphNodeBuilder::add_operation_node().
| void blender::deg::ComponentNode::clear_operations | ( | ) |
Definition at line 174 of file deg_node_component.cc.
References operations, and operations_map.
Referenced by ~ComponentNode().
|
inlinevirtual |
Definition at line 131 of file deg_node_component.hh.
| void blender::deg::ComponentNode::finalize_build | ( | Depsgraph * | graph | ) |
Definition at line 246 of file deg_node_component.cc.
References operations, and operations_map.
| OperationNode * blender::deg::ComponentNode::find_operation | ( | OperationCode | opcode, |
| StringRef | name = "", | ||
| int | name_tag = -1 ) const |
Definition at line 86 of file deg_node_component.cc.
References find_operation(), and blender::deg::Node::name.
| OperationNode * blender::deg::ComponentNode::find_operation | ( | OperationIDKey | key | ) | const |
Definition at line 67 of file deg_node_component.cc.
References blender::deg::ComponentNode::OperationIDKey::name, blender::deg::ComponentNode::OperationIDKey::name_tag, blender::deg::ComponentNode::OperationIDKey::opcode, operations, and operations_map.
Referenced by add_operation(), blender::deg::DepsgraphNodeBuilder::add_operation_node(), blender::deg::deg_evaluate_object_modifiers_mode_node_visibility(), blender::deg::DepsgraphRelationBuilder::find_node(), blender::deg::RNANodeQuery::find_node(), find_operation(), blender::deg::DepsgraphNodeBuilder::find_operation_node(), get_operation(), has_operation(), and operation_needs_update().
|
overridevirtual |
Reimplemented from blender::deg::Node.
Definition at line 204 of file deg_node_component.cc.
References entry_operation, operations, and operations_map.
|
overridevirtual |
Reimplemented from blender::deg::Node.
Definition at line 225 of file deg_node_component.cc.
References exit_operation, operations, and operations_map.
| OperationNode * blender::deg::ComponentNode::get_operation | ( | OperationCode | opcode, |
| StringRef | name = "", | ||
| int | name_tag = -1 ) const |
Definition at line 108 of file deg_node_component.cc.
References get_operation(), and blender::deg::Node::name.
| OperationNode * blender::deg::ComponentNode::get_operation | ( | OperationIDKey | key | ) | const |
Definition at line 94 of file deg_node_component.cc.
References BLI_assert_msg, find_operation(), identifier(), and blender::deg::ComponentNode::OperationIDKey::identifier().
Referenced by get_operation().
| bool blender::deg::ComponentNode::has_operation | ( | OperationCode | opcode, |
| StringRef | name = "", | ||
| int | name_tag = -1 ) const |
Definition at line 121 of file deg_node_component.cc.
References has_operation(), and blender::deg::Node::name.
| bool blender::deg::ComponentNode::has_operation | ( | OperationIDKey | key | ) | const |
Definition at line 116 of file deg_node_component.cc.
References find_operation().
Referenced by has_operation().
|
overridevirtual |
Generic identifier for Depsgraph Nodes.
Reimplemented from blender::deg::Node.
Definition at line 58 of file deg_node_component.cc.
References affects_visible_id, blender::deg::Node::name, blender::deg::Node::type, blender::deg::type_get_factory(), and blender::deg::DepsNodeFactory::type_name().
Referenced by add_operation(), blender::deg::DepsgraphNodeBuilder::add_operation_node(), and get_operation().
|
overridevirtual |
Initialize 'component' node - from pointer data given.
Reimplemented from blender::deg::Node.
Definition at line 45 of file deg_node_component.cc.
Referenced by blender::deg::BoneComponentNode::init().
|
inlinevirtual |
Reimplemented in blender::deg::AudioComponentNode, and blender::deg::ParametersComponentNode.
Definition at line 138 of file deg_node_component.hh.
Referenced by blender::deg::deg_debug_graphviz_relation_arrowhead().
| void blender::deg::ComponentNode::set_entry_operation | ( | OperationNode * | op_node | ) |
Definition at line 162 of file deg_node_component.cc.
References BLI_assert, and entry_operation.
| void blender::deg::ComponentNode::set_exit_operation | ( | OperationNode * | op_node | ) |
Definition at line 168 of file deg_node_component.cc.
References BLI_assert, and exit_operation.
|
overridevirtual |
Reimplemented from blender::deg::Node.
Definition at line 188 of file deg_node_component.cc.
References operations, and operations_map.
| bool blender::deg::ComponentNode::affects_visible_id |
Definition at line 153 of file deg_node_component.hh.
Referenced by ComponentNode(), blender::deg::deg_graph_flush_visibility_flags(), and identifier().
| OperationNode* blender::deg::ComponentNode::entry_operation |
Definition at line 128 of file deg_node_component.hh.
Referenced by blender::deg::DepsgraphNodeBuilder::build_rigidbody(), ComponentNode(), get_entry_operation(), and set_entry_operation().
| OperationNode* blender::deg::ComponentNode::exit_operation |
Definition at line 129 of file deg_node_component.hh.
Referenced by ComponentNode(), get_exit_operation(), and set_exit_operation().
| Vector<OperationNode *> blender::deg::ComponentNode::operations |
Definition at line 126 of file deg_node_component.hh.
Referenced by clear_operations(), blender::deg::deg_debug_graphviz_node(), finalize_build(), find_operation(), get_entry_operation(), get_exit_operation(), and tag_update().
| Map<ComponentNode::OperationIDKey, OperationNode *>* blender::deg::ComponentNode::operations_map |
Definition at line 122 of file deg_node_component.hh.
Referenced by add_operation(), clear_operations(), ComponentNode(), finalize_build(), find_operation(), get_entry_operation(), get_exit_operation(), tag_update(), and ~ComponentNode().
| IDNode* blender::deg::ComponentNode::owner |
Definition at line 116 of file deg_node_component.hh.
Referenced by blender::deg::IDNode::add_component(), blender::deg::DepsgraphNodeBuilder::add_component_node(), blender::deg::DepsgraphRelationBuilder::add_depends_on_transform_relation(), blender::deg::DepsgraphRelationBuilder::build_animdata_fcurve_target(), blender::deg::DepsgraphRelationBuilder::build_copy_on_write_relations(), blender::deg::deg_eval_stats_aggregate(), DEG_get_id_from_handle(), blender::deg::deg_graph_flush_updates(), blender::deg::deg_graph_flush_visibility_flags(), blender::deg::DepsgraphRelationBuilder::is_same_bone_dependency(), blender::deg::DepsgraphRelationBuilder::is_same_nodetree_node_dependency(), blender::deg::ParametersComponentNode::need_tag_cow_before_update(), and blender::deg::PersistentOperationKey::PersistentOperationKey().
| bool blender::deg::ComponentNode::possibly_affects_visible_id |
Definition at line 147 of file deg_node_component.hh.
Referenced by ComponentNode(), and blender::deg::deg_graph_flush_visibility_flags().