60 if (ui_storage ==
nullptr) {
65 if (active_object ==
nullptr) {
70 if (active_modifier ==
nullptr) {
76 if (storage ==
nullptr) {
92 if (ui_storage !=
nullptr) {
106 "Node Tree: \"%s\", Node: \"%s\", %s",
113 "Node Tree: \"%s\", Node: \"%s\", %s",
121 "Node Tree: \"%s\", Node: \"%s\", %s",
143 return node_ui_storage;
struct Object * CTX_data_active_object(const bContext *C)
General operations, lookup, etc. for blender objects.
struct ModifierData * BKE_object_active_modifier(const struct Object *ob)
#define CLOG_ERROR(clg_ref,...)
#define CLOG_WARN(clg_ref,...)
#define CLOG_INFO(clg_ref, level,...)
Object is a sort of wrapper for general info.
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum type
Value & lookup_or_add_default_as(ForwardKey &&key)
const Value * lookup_ptr_as(const ForwardKey &key) const
Value & lookup_or_add_default(const Key &key)
bool remove(const Key &key)
const Value * lookup_ptr(const Key &key) const
bool add_as(ForwardKey &&key)
constexpr const char * data() const
void append(const T &value)
static std::mutex global_ui_storage_mutex
static void node_error_message_log(bNodeTree &ntree, const bNode &node, const StringRef message, const NodeWarningType type)
void BKE_nodetree_ui_storage_free_for_context(bNodeTree &ntree, const NodeTreeEvaluationContext &context)
void BKE_nodetree_attribute_hint_add(bNodeTree &ntree, const NodeTreeEvaluationContext &context, const bNode &node, const StringRef attribute_name, const AttributeDomain domain, const CustomDataType data_type)
const NodeUIStorage * BKE_node_tree_ui_storage_get_from_context(const bContext *C, const bNodeTree &ntree, const bNode &node)
void BKE_nodetree_error_message_add(bNodeTree &ntree, const NodeTreeEvaluationContext &context, const bNode &node, const NodeWarningType type, std::string message)
static void ui_storage_ensure(bNodeTree &ntree)
static NodeUIStorage & node_ui_storage_ensure(bNodeTree &ntree, const NodeTreeEvaluationContext &context, const bNode &node)
struct SELECTID_Context context
blender::Map< NodeTreeEvaluationContext, blender::Map< std::string, NodeUIStorage > > context_map
std::mutex context_map_mutex
blender::Vector< NodeWarning > warnings
blender::Set< AvailableAttributeInfo > attribute_hints
struct NodeTreeUIStorage * ui_storage