Blender V5.0
blender::deg::IDNode Struct Reference

#include <deg_node_id.hh>

Inherits blender::deg::Node.

Classes

struct  ComponentIDKey

Public Member Functions

void init (const ID *id, const char *subdata) override
void init_copy_on_write (ID *id_cow_hint=nullptr)
 ~IDNode () override
void destroy ()
std::string identifier () const override
ComponentNodefind_component (NodeType type, StringRef name="") const
ComponentNodeadd_component (NodeType type, StringRef name="")
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 OperationNodeget_entry_operation ()
virtual OperationNodeget_exit_operation ()
virtual NodeClass get_class () const
 MEM_CXX_CLASS_ALLOC_FUNCS ("Node")

Public Attributes

ID_Type id_type
IDid_orig
uint id_orig_session_uid
IDid_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_visible_on_build
bool is_enabled_on_eval
bool is_collection_fully_expanded
bool has_base
bool is_user_modified
bool is_cow_explicitly_tagged
int id_cow_recalc_backup
IDComponentsMask visible_components_mask
IDComponentsMask previously_visible_components_mask
 DEG_DEPSNODE_DECLARE
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 *>

Detailed Description

Definition at line 39 of file deg_node_id.hh.

Constructor & Destructor Documentation

◆ ~IDNode()

blender::deg::IDNode::~IDNode ( )
override

Definition at line 95 of file deg_node_id.cc.

References destroy().

Member Function Documentation

◆ add_component()

◆ destroy()

void blender::deg::IDNode::destroy ( )

◆ finalize_build()

void blender::deg::IDNode::finalize_build ( Depsgraph * graph)

◆ find_component()

◆ get_visible_components_mask()

IDComponentsMask blender::deg::IDNode::get_visible_components_mask ( ) const

Definition at line 176 of file deg_node_id.cc.

References BLI_assert, components, and result.

Referenced by finalize_build().

◆ identifier()

std::string blender::deg::IDNode::identifier ( ) const
overridevirtual

Generic identifier for Depsgraph Nodes.

Reimplemented from blender::deg::Node.

Definition at line 123 of file deg_node_id.cc.

References id_cow, id_orig, is_visible_on_build, blender::deg::Node::name, blender::deg::nodeTypeAsString(), SNPRINTF, and blender::deg::Node::type.

◆ init()

◆ init_copy_on_write()

void blender::deg::IDNode::init_copy_on_write ( ID * id_cow_hint = nullptr)

◆ tag_update()

void blender::deg::IDNode::tag_update ( Depsgraph * graph,
eUpdateSource source )
overridevirtual

Member Data Documentation

◆ components

◆ customdata_masks

◆ DEG_DEPSNODE_DECLARE

blender::deg::IDNode::DEG_DEPSNODE_DECLARE

Definition at line 138 of file deg_node_id.hh.

◆ eval_flags

◆ has_base

bool blender::deg::IDNode::has_base

◆ id_cow

◆ id_cow_recalc_backup

int blender::deg::IDNode::id_cow_recalc_backup

Definition at line 133 of file deg_node_id.hh.

Referenced by DEG_ids_clear_recalc(), DEG_ids_restore_recalc(), and init().

◆ id_orig

◆ id_orig_session_uid

uint blender::deg::IDNode::id_orig_session_uid

Definition at line 82 of file deg_node_id.hh.

Referenced by blender::deg::DepsgraphNodeBuilder::begin_build(), and init().

◆ id_type

ID_Type blender::deg::IDNode::id_type

◆ is_collection_fully_expanded

bool blender::deg::IDNode::is_collection_fully_expanded

Definition at line 121 of file deg_node_id.hh.

Referenced by blender::deg::DepsgraphNodeBuilder::build_collection(), and init().

◆ is_cow_explicitly_tagged

bool blender::deg::IDNode::is_cow_explicitly_tagged

◆ is_enabled_on_eval

bool blender::deg::IDNode::is_enabled_on_eval

◆ is_user_modified

bool blender::deg::IDNode::is_user_modified

Definition at line 127 of file deg_node_id.hh.

Referenced by DEG_ids_clear_recalc(), and init().

◆ is_visible_on_build

◆ linked_state

◆ previous_customdata_masks

DEGCustomDataMeshMasks blender::deg::IDNode::previous_customdata_masks

◆ previous_eval_flags

uint32_t blender::deg::IDNode::previous_eval_flags

◆ previously_visible_components_mask

IDComponentsMask blender::deg::IDNode::previously_visible_components_mask

◆ visible_components_mask

IDComponentsMask blender::deg::IDNode::visible_components_mask

The documentation for this struct was generated from the following files: