46 const bNode *parent_node_;
53 DerivedNodeTree *derived_tree_;
55 friend DerivedNodeTree;
74 const bNode *bnode_ =
nullptr;
88 operator bool()
const;
124 operator bool()
const;
215 std::string
to_dot()
const;
219 const bNode *parent_node,
222 void destruct_context_recursively(
DTreeContext *context);
224 void foreach_node_in_context_recursive(
const DTreeContext &context,
248 return parent_context_;
258 return instance_key_;
263 return children_.lookup_default(&node,
nullptr);
268 return *derived_tree_;
273 return parent_context_ ==
nullptr;
298inline DNode::operator bool()
const
300 return bnode_ !=
nullptr;
321 return {context_, &bnode_->input_socket(index)};
326 return {context_, &bnode_->output_socket(index)};
331 return {context_, bnode_->input_by_identifier(identifier)};
336 return {context_, bnode_->output_by_identifier(identifier)};
349 bsocket->runtime->owner_node->runtime->owner_tree == &
context->btree());
372inline DSocket::operator bool()
const
439 return *root_context_;
#define BLI_STRUCT_EQUALITY_OPERATORS_2(Type, m1, m2)
unsigned long long int uint64_t
bNodeInstanceKey instance_key() const
DInputSocket input_by_identifier(StringRef identifier) const
const DTreeContext * context() const
const bNode * bnode() const
const bNode * operator->() const
const bNode & operator*() const
DOutputSocket output_by_identifier(StringRef identifier) const
FunctionRef< void(DInputSocket, const TargetSocketPathInfo &path_info)> ForeachTargetSocketFn
DInputSocket get_corresponding_group_node_input() const
DInputSocket get_active_corresponding_group_output_socket() const
void foreach_target_socket(ForeachTargetSocketFn target_fn) const
const bNodeSocket * operator->() const
const bNodeSocket * bsocket_
const DTreeContext * context() const
const bNodeSocket & operator*() const
const DTreeContext * context_
const bNodeSocket * bsocket() const
const DTreeContext * child_context(const bNode &node) const
const DTreeContext * parent_context() const
const bNode * parent_node() const
const DerivedNodeTree & derived_tree() const
const bNodeTree & btree() const
bNodeInstanceKey instance_key() const
std::string to_dot() const
bool has_link_cycles() const
const DTreeContext & active_context() const
DerivedNodeTree(const bNodeTree &btree)
Span< const bNodeTree * > used_btrees() const
bool has_undefined_nodes_or_sockets() const
const DTreeContext & root_context() const
void foreach_node(FunctionRef< void(DNode)> callback) const
DInputSocket input_by_identifier(StringRef identifier) const
const DTreeContext * context() const
DOutputSocket output(int index) const
const bNode * bnode() const
const bNode * operator->() const
const bNode & operator*() const
DOutputSocket output_by_identifier(StringRef identifier) const
DInputSocket input(int index) const
const bNodeSocket * operator->() const
const DTreeContext * context() const
const bNodeSocket & operator*() const
const bNodeSocket * bsocket() const
const DTreeContext * child_context(const bNode &node) const
const DTreeContext * parent_context() const
const bNode * parent_node() const
const DerivedNodeTree & derived_tree() const
const bNodeTree & btree() const
bNodeInstanceKey instance_key() const
DerivedNodeTree(const bNodeTree &btree)
Span< const bNodeTree * > used_btrees() const
const DTreeContext & root_context() const
uint64_t get_default_hash(const T &v, const Args &...args)
Vector< DSocket, 16 > sockets