Blender V4.3
blender::deg::IDNode Struct Reference

#include <deg_node_id.hh>

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 (Depsgraph &depsgraph, ID *id_cow_hint=nullptr)
 
 ~IDNode ()
 
void destroy ()
 
virtual string identifier () const override
 
ComponentNodefind_component (NodeType type, const char *name="") const
 
ComponentNodeadd_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 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
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 35 of file deg_node_id.hh.

Constructor & Destructor Documentation

◆ ~IDNode()

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

Definition at line 108 of file deg_node_id.cc.

References destroy().

Member Function Documentation

◆ add_component()

ComponentNode * blender::deg::IDNode::add_component ( NodeType type,
const char * name = "" )

◆ destroy()

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

◆ finalize_build()

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

◆ find_component()

ComponentNode * blender::deg::IDNode::find_component ( NodeType type,
const char * name = "" ) const

◆ get_visible_components_mask()

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

Definition at line 189 of file deg_node_id.cc.

References BLI_assert, int, and result.

Referenced by finalize_build().

◆ identifier()

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

Generic identifier for Depsgraph Nodes.

Reimplemented from blender::deg::Node.

Definition at line 136 of file deg_node_id.cc.

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

◆ init()

◆ init_copy_on_write()

void blender::deg::IDNode::init_copy_on_write ( Depsgraph & depsgraph,
ID * id_cow_hint = nullptr )

◆ tag_update()

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

Member Data Documentation

◆ components

◆ customdata_masks

DEGCustomDataMeshMasks blender::deg::IDNode::customdata_masks

Definition at line 90 of file deg_node_id.hh.

Referenced by blender::deg::deg_graph_build_finalize(), and init().

◆ DEG_DEPSNODE_DECLARE

blender::deg::IDNode::DEG_DEPSNODE_DECLARE

Definition at line 130 of file deg_node_id.hh.

◆ eval_flags

uint32_t blender::deg::IDNode::eval_flags

◆ has_base

bool blender::deg::IDNode::has_base

Definition at line 116 of file deg_node_id.hh.

Referenced by blender::deg::deg_check_base_in_depsgraph(), and init().

◆ id_cow

◆ id_cow_recalc_backup

int blender::deg::IDNode::id_cow_recalc_backup

Definition at line 125 of file deg_node_id.hh.

Referenced by init().

◆ id_orig

◆ id_orig_session_uid

uint blender::deg::IDNode::id_orig_session_uid

Definition at line 74 of file deg_node_id.hh.

Referenced by init().

◆ id_type

◆ is_collection_fully_expanded

bool blender::deg::IDNode::is_collection_fully_expanded

Definition at line 113 of file deg_node_id.hh.

Referenced by init().

◆ is_cow_explicitly_tagged

bool blender::deg::IDNode::is_cow_explicitly_tagged

Definition at line 122 of file deg_node_id.hh.

Referenced by blender::deg::deg_update_eval_copy_datablock().

◆ 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 119 of file deg_node_id.hh.

Referenced by init().

◆ is_visible_on_build

bool blender::deg::IDNode::is_visible_on_build

◆ linked_state

eDepsNode_LinkedState_Type blender::deg::IDNode::linked_state

Definition at line 93 of file deg_node_id.hh.

Referenced by init().

◆ previous_customdata_masks

DEGCustomDataMeshMasks blender::deg::IDNode::previous_customdata_masks

Definition at line 91 of file deg_node_id.hh.

Referenced by blender::deg::deg_graph_build_finalize(), and init().

◆ previous_eval_flags

uint32_t blender::deg::IDNode::previous_eval_flags

Definition at line 87 of file deg_node_id.hh.

Referenced by blender::deg::deg_graph_build_finalize(), and init().

◆ 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: