18 return ELEM(socket_type,
35 return ELEM(socket_type,
73 return {&storage->items, &storage->items_num, &storage->active_index};
118 return "Item_" + std::to_string(item.
identifier);
149 return {&storage->items, &storage->items_num, &storage->active_index};
194 return "Item_" + std::to_string(item.
identifier);
char * BLI_strdup_null(const char *str) ATTR_WARN_UNUSED_RESULT ATTR_MALLOC
void set_item_name_and_make_unique(bNode &node, typename Accessor::ItemT &item, const char *value)
bool socket_type_supported_in_bundle(const eNodeSocketDatatype socket_type, const int ntree_type)
static constexpr StringRefNull remove_item
static constexpr StringRefNull move_item
static constexpr StringRefNull add_item
static constexpr StringRefNull items
static constexpr StringRefNull active_index
static constexpr StringRefNull list
static constexpr bool has_type
static void blend_write_item(BlendWriter *writer, const ItemT &item)
static constexpr char unique_name_separator
static void destruct_item(ItemT *item)
static eNodeSocketDatatype get_socket_type(const ItemT &item)
static StructRNA * item_srna
static void copy_item(const ItemT &src, ItemT &dst)
static constexpr bool has_name_validation
static void blend_read_data_item(BlendDataReader *reader, ItemT &item)
static bool supports_socket_type(const eNodeSocketDatatype socket_type, const int ntree_type)
static std::string validate_name(const StringRef name)
static constexpr bool has_name
static constexpr StringRefNull node_idname
static socket_items::SocketItemsRef< ItemT > get_items_from_node(bNode &node)
NodeCombineBundleItem ItemT
static std::string socket_identifier_for_item(const ItemT &item)
static void init_with_socket_type_and_name(bNode &node, ItemT &item, const eNodeSocketDatatype socket_type, const char *name)
static char ** get_name(ItemT &item)
static constexpr StringRefNull move_item
static constexpr StringRefNull remove_item
static constexpr StringRefNull add_item
static constexpr StringRefNull active_index
static constexpr StringRefNull items
static constexpr StringRefNull list
static bool supports_socket_type(const eNodeSocketDatatype socket_type, const int ntree_type)
static constexpr bool has_type
static eNodeSocketDatatype get_socket_type(const ItemT &item)
static constexpr StringRefNull node_idname
static void copy_item(const ItemT &src, ItemT &dst)
static void destruct_item(ItemT *item)
static socket_items::SocketItemsRef< ItemT > get_items_from_node(bNode &node)
NodeSeparateBundleItem ItemT
static constexpr char unique_name_separator
static constexpr bool has_name
static constexpr bool has_name_validation
static void blend_write_item(BlendWriter *writer, const ItemT &item)
static std::string validate_name(const StringRef name)
static void blend_read_data_item(BlendDataReader *reader, ItemT &item)
static void init_with_socket_type_and_name(bNode &node, ItemT &item, const eNodeSocketDatatype socket_type, const char *name)
static std::string socket_identifier_for_item(const ItemT &item)
static char ** get_name(ItemT &item)
static StructRNA * item_srna