|
Blender V4.5
|
#include <NOD_geometry_nodes_bundle.hh>
Inherits blender::ImplicitSharingMixin.
Classes | |
| struct | StoredItem |
| struct | Item |
Public Member Functions | |
| Bundle () | |
| Bundle (const Bundle &other) | |
| Bundle (Bundle &&other) noexcept | |
| Bundle & | operator= (const Bundle &other) |
| Bundle & | operator= (Bundle &&other) noexcept |
| ~Bundle () | |
| void | add_new (SocketInterfaceKey key, const bke::bNodeSocketType &type, const void *value) |
| bool | add (const SocketInterfaceKey &key, const bke::bNodeSocketType &type, const void *value) |
| bool | add (SocketInterfaceKey &&key, const bke::bNodeSocketType &type, const void *value) |
| bool | remove (const SocketInterfaceKey &key) |
| bool | contains (const SocketInterfaceKey &key) const |
| std::optional< Item > | lookup (const SocketInterfaceKey &key) const |
| Span< StoredItem > | items () const |
| void | delete_self () override |
| Public Member Functions inherited from blender::ImplicitSharingInfo | |
| virtual | ~ImplicitSharingInfo () |
| bool | is_mutable () const |
| bool | is_expired () const |
| void | add_user () const |
| void | add_weak_user () const |
| void | tag_ensured_mutable () const |
| int64_t | version () const |
| int | strong_users () const |
| void | remove_user_and_delete_if_last () const |
| void | remove_weak_user_and_delete_if_last () const |
Static Public Member Functions | |
| static BundlePtr | create () |
A bundle is a map containing keys and their corresponding values. Values are stored as the type they have in Geometry Nodes (#bNodeSocketType::geometry_nodes_cpp_type).
Definition at line 20 of file NOD_geometry_nodes_bundle.hh.
|
default |
References Bundle().
Referenced by Bundle(), Bundle(), Bundle(), operator=(), and operator=().
| blender::nodes::Bundle::Bundle | ( | const Bundle & | other | ) |
Definition at line 48 of file blenkernel/intern/geometry_nodes_bundle.cc.
References add_new(), Bundle(), blender::nodes::Bundle::StoredItem::key, blender::nodes::Bundle::StoredItem::type, and blender::nodes::Bundle::StoredItem::value.
|
noexcept |
Definition at line 55 of file blenkernel/intern/geometry_nodes_bundle.cc.
References Bundle().
| blender::nodes::Bundle::~Bundle | ( | ) |
Definition at line 38 of file blenkernel/intern/geometry_nodes_bundle.cc.
References MEM_freeN().
Referenced by operator=().
| bool blender::nodes::Bundle::add | ( | const SocketInterfaceKey & | key, |
| const bke::bNodeSocketType & | type, | ||
| const void * | value ) |
Definition at line 92 of file nodes/intern/geometry_nodes_bundle.cc.
References add(), add_new(), and contains().
Referenced by add(), add(), blender::bke::bake::copy_bake_item_to_socket_value(), and blender::nodes::node_geo_combine_bundle_cc::node_geo_exec().
| bool blender::nodes::Bundle::add | ( | SocketInterfaceKey && | key, |
| const bke::bNodeSocketType & | type, | ||
| const void * | value ) |
Definition at line 103 of file nodes/intern/geometry_nodes_bundle.cc.
References add(), add_new(), and contains().
| void blender::nodes::Bundle::add_new | ( | SocketInterfaceKey | key, |
| const bke::bNodeSocketType & | type, | ||
| const void * | value ) |
Definition at line 80 of file blenkernel/intern/geometry_nodes_bundle.cc.
References blender::CPPType::alignment, BLI_assert, contains(), blender::CPPType::copy_construct(), MEM_mallocN_aligned(), and blender::CPPType::size.
| bool blender::nodes::Bundle::contains | ( | const SocketInterfaceKey & | key | ) | const |
Definition at line 131 of file blenkernel/intern/geometry_nodes_bundle.cc.
|
inlinestatic |
Definition at line 45 of file NOD_geometry_nodes_bundle.hh.
Referenced by blender::bke::bake::copy_bake_item_to_socket_value(), and blender::nodes::node_geo_combine_bundle_cc::node_geo_exec().
|
overridevirtual |
Implements blender::ImplicitSharingMixin.
Definition at line 141 of file blenkernel/intern/geometry_nodes_bundle.cc.
|
inline |
Definition at line 58 of file NOD_geometry_nodes_bundle.hh.
Referenced by blender::bke::bake::move_common_socket_value_to_bake_item().
| std::optional< Bundle::Item > blender::nodes::Bundle::lookup | ( | const SocketInterfaceKey & | key | ) | const |
Definition at line 109 of file blenkernel/intern/geometry_nodes_bundle.cc.
Definition at line 70 of file blenkernel/intern/geometry_nodes_bundle.cc.
References Bundle().
Definition at line 60 of file blenkernel/intern/geometry_nodes_bundle.cc.
| bool blender::nodes::Bundle::remove | ( | const SocketInterfaceKey & | key | ) |
Definition at line 119 of file blenkernel/intern/geometry_nodes_bundle.cc.
References blender::CPPType::destruct(), blender::bke::bNodeSocketType::geometry_nodes_cpp_type, blender::nodes::Bundle::StoredItem::key, blender::nodes::SocketInterfaceKey::matches(), blender::nodes::Bundle::StoredItem::type, and blender::nodes::Bundle::StoredItem::value.