Blender V4.5
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 (Depsgraph &depsgraph, 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 94 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 175 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 122 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 ( 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 98 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 138 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 124 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 133 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 82 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 121 of file deg_node_id.hh.

Referenced by init().

◆ is_cow_explicitly_tagged

bool blender::deg::IDNode::is_cow_explicitly_tagged

Definition at line 130 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 127 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 101 of file deg_node_id.hh.

Referenced by init().

◆ previous_customdata_masks

DEGCustomDataMeshMasks blender::deg::IDNode::previous_customdata_masks

Definition at line 99 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 95 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: