[Bf-blender-cvs] [37067ef6cb3] temp-node-error-messages: Cleanup

Hans Goudey noreply at git.blender.org
Tue Feb 16 18:36:03 CET 2021


Commit: 37067ef6cb3041d769f635b6f5bc04e8f56726ed
Author: Hans Goudey
Date:   Tue Feb 16 11:16:24 2021 -0600
Branches: temp-node-error-messages
https://developer.blender.org/rB37067ef6cb3041d769f635b6f5bc04e8f56726ed

Cleanup

===================================================================

M	source/blender/blenkernel/BKE_node.h
M	source/blender/blenkernel/BKE_node_ui_storage.hh
M	source/blender/blenkernel/intern/node.cc
M	source/blender/blenkernel/intern/node_ui_storage.cc
M	source/blender/editors/space_node/node_draw.cc
M	source/blender/imbuf/intern/indexer.c
M	source/blender/makesdna/DNA_node_types.h
M	source/blender/modifiers/intern/MOD_nodes.cc
M	source/blender/nodes/NOD_geometry_exec.hh

===================================================================

diff --git a/source/blender/blenkernel/BKE_node.h b/source/blender/blenkernel/BKE_node.h
index 62c06af0884..7984bbc980a 100644
--- a/source/blender/blenkernel/BKE_node.h
+++ b/source/blender/blenkernel/BKE_node.h
@@ -848,7 +848,7 @@ bool BKE_node_is_connected_to_output(struct bNodeTree *ntree, struct bNode *node
 /* ************** COMMON NODES *************** */
 
 #define NODE_UNDEFINED -2 /* node type is not registered */
-#define NODE_CUSTOM -1 /* for dynamically registered custom types */
+#define NODE_CUSTOM -1    /* for dynamically registered custom types */
 #define NODE_GROUP 2
 // #define NODE_FORLOOP 3       /* deprecated */
 // #define NODE_WHILELOOP   4   /* deprecated */
diff --git a/source/blender/blenkernel/BKE_node_ui_storage.hh b/source/blender/blenkernel/BKE_node_ui_storage.hh
index ac0c4dcfab0..fa08b167c72 100644
--- a/source/blender/blenkernel/BKE_node_ui_storage.hh
+++ b/source/blender/blenkernel/BKE_node_ui_storage.hh
@@ -29,11 +29,15 @@ struct bNodeTree;
 struct Object;
 struct ModifierData;
 
+/**
+ * Contains the context necessary to determine when to display settings for a certain node tree
+ * that may be used for multiple modifiers and objects.
+ *
+ * \note This does not yet handle the context of nested node trees.
+ */
 struct NodeUIStorageContextModifier {
   std::string object_name;
   SessionUUID modifier_session_uuid;
-  /* TODO: The same node tree can be used multiple times in a parent node tree,
-   * so the tree path should be added to the context here. */
 
   NodeUIStorageContextModifier(const Object &object, const ModifierData &modifier)
   {
@@ -45,7 +49,7 @@ struct NodeUIStorageContextModifier {
   {
     const uint64_t hash1 = blender::DefaultHash<std::string>{}(object_name);
     const uint64_t hash2 = BLI_session_uuid_hash_uint64(&modifier_session_uuid);
-    return hash1 ^ (hash2 * 33); /* Copied from DefaultHash pair hash function. */
+    return hash1 ^ (hash2 * 33); /* Copied from DefaultHash for std::pair. */
   }
 
   bool operator==(const NodeUIStorageContextModifier &other) const
@@ -74,12 +78,12 @@ struct NodeTreeUIStorage {
   blender::Map<std::string, blender::Map<NodeUIStorageContextModifier, NodeUIStorage>> node_map;
 };
 
-void BKE_nodetree_ui_storage_clear(struct bNodeTree &ntree);
+void BKE_nodetree_ui_storage_free(bNodeTree &ntree);
 
-void BKE_nodetree_ui_storage_ensure(bNodeTree &ntree);
+void BKE_nodetree_ui_storage_add(bNodeTree &ntree);
 
-void BKE_nodetree_error_message_add(struct bNodeTree &ntree,
+void BKE_nodetree_error_message_add(bNodeTree &ntree,
                                     const NodeUIStorageContextModifier &context,
-                                    const struct bNode &node,
+                                    const bNode &node,
                                     const NodeWarningType type,
                                     std::string message);
diff --git a/source/blender/blenkernel/intern/node.cc b/source/blender/blenkernel/intern/node.cc
index 8e63815f734..1c1683c38ae 100644
--- a/source/blender/blenkernel/intern/node.cc
+++ b/source/blender/blenkernel/intern/node.cc
@@ -220,7 +220,7 @@ static void ntree_copy_data(Main *UNUSED(bmain), ID *id_dst, const ID *id_src, c
 
   /* Don't copy error messages in the runtime struct.
    * They should be filled during execution anyway. */
-  ntree_dst->runtime = nullptr;
+  ntree_dst->ui_storage = nullptr;
 }
 
 static void ntree_free_data(ID *id)
@@ -275,7 +275,7 @@ static void ntree_free_data(ID *id)
     BKE_libblock_free_data(&ntree->id, true);
   }
 
-  BKE_nodetree_ui_storage_clear(*ntree);
+  BKE_nodetree_ui_storage_free(*ntree);
 }
 
 static void library_foreach_node_socket(LibraryForeachIDData *data, bNodeSocket *sock)
@@ -565,7 +565,7 @@ static void ntree_blend_write(BlendWriter *writer, ID *id, const void *id_addres
     ntree->interface_type = nullptr;
     ntree->progress = nullptr;
     ntree->execdata = nullptr;
-    ntree->runtime = nullptr;
+    ntree->ui_storage = nullptr;
 
     BLO_write_id_struct(writer, bNodeTree, id_address, &ntree->id);
 
@@ -597,7 +597,7 @@ void ntreeBlendReadData(BlendDataReader *reader, bNodeTree *ntree)
 
   ntree->progress = nullptr;
   ntree->execdata = nullptr;
-  ntree->runtime = nullptr;
+  ntree->ui_storage = nullptr;
 
   BLO_read_data_address(reader, &ntree->adt);
   BKE_animdata_blend_read_data(reader, ntree->adt);
diff --git a/source/blender/blenkernel/intern/node_ui_storage.cc b/source/blender/blenkernel/intern/node_ui_storage.cc
index 696d228a425..ccdc0ae4ebc 100644
--- a/source/blender/blenkernel/intern/node_ui_storage.cc
+++ b/source/blender/blenkernel/intern/node_ui_storage.cc
@@ -31,20 +31,20 @@ using blender::Map;
 using blender::StringRef;
 using blender::Vector;
 
-void BKE_nodetree_ui_storage_ensure(bNodeTree &ntree)
+void BKE_nodetree_ui_storage_add(bNodeTree &ntree)
 {
-  if (ntree.runtime == nullptr) {
-    ntree.runtime = new NodeTreeUIStorage();
+  if (ntree.ui_storage == nullptr) {
+    ntree.ui_storage = new NodeTreeUIStorage();
   }
 }
 
-void BKE_nodetree_ui_storage_clear(bNodeTree &ntree)
+void BKE_nodetree_ui_storage_free(bNodeTree &ntree)
 {
-  NodeTreeUIStorage *ui_storage = ntree.runtime;
+  NodeTreeUIStorage *ui_storage = ntree.ui_storage;
   if (ui_storage != nullptr) {
     ui_storage->node_map.clear();
     delete ui_storage;
-    ntree.runtime = nullptr;
+    ntree.ui_storage = nullptr;
   }
 }
 
@@ -87,13 +87,13 @@ void BKE_nodetree_error_message_add(bNodeTree &ntree,
                                     const NodeWarningType type,
                                     std::string message)
 {
-  BLI_assert(ntree.runtime != nullptr);
-  NodeTreeUIStorage &node_tree_ui_storage = *ntree.runtime;
+  BLI_assert(ntree.ui_storage != nullptr);
+  NodeTreeUIStorage &node_tree_ui_storage = *ntree.ui_storage;
 
   node_error_message_log(ntree, node, message, type);
 
   Map<NodeUIStorageContextModifier, NodeUIStorage> &context_to_storage_map =
-      node_tree_ui_storage.node_map.lookup_or_add_default(node.name);
+      node_tree_ui_storage.node_map.lookup_or_add_default_as(StringRef(node.name));
 
   NodeUIStorage &node_ui_storage = context_to_storage_map.lookup_or_add_default(context);
 
diff --git a/source/blender/editors/space_node/node_draw.cc b/source/blender/editors/space_node/node_draw.cc
index bf2f9ac0718..8a6d6523ed5 100644
--- a/source/blender/editors/space_node/node_draw.cc
+++ b/source/blender/editors/space_node/node_draw.cc
@@ -37,6 +37,7 @@
 #include "BLI_blenlib.h"
 #include "BLI_map.hh"
 #include "BLI_math.h"
+#include "BLI_string_ref.hh"
 #include "BLI_vector.hh"
 
 #include "BLT_translation.h"
@@ -80,6 +81,7 @@
 #endif
 
 using blender::Map;
+using blender::StringRef;
 using blender::Vector;
 
 extern "C" {
@@ -1229,12 +1231,12 @@ static const NodeUIStorage *node_ui_storage_get_from_context(const bContext *C,
                                                              const bNodeTree &ntree,
                                                              const bNode &node)
 {
-  const NodeTreeUIStorage *node_tree_ui_storage = ntree.runtime;
+  const NodeTreeUIStorage *node_tree_ui_storage = ntree.ui_storage;
   if (node_tree_ui_storage == nullptr) {
     return nullptr;
   }
   const Map<NodeUIStorageContextModifier, NodeUIStorage> *node_ui_storage =
-      node_tree_ui_storage->node_map.lookup_ptr(node.name);
+      node_tree_ui_storage->node_map.lookup_ptr_as(StringRef(node.name));
   if (node_ui_storage == nullptr) {
     return nullptr;
   }
diff --git a/source/blender/imbuf/intern/indexer.c b/source/blender/imbuf/intern/indexer.c
index f10e3b31141..3e8551f9822 100644
--- a/source/blender/imbuf/intern/indexer.c
+++ b/source/blender/imbuf/intern/indexer.c
@@ -40,7 +40,7 @@
 
 #include "BKE_global.h"
 
-#  include "BLI_threads.h"
+#include "BLI_threads.h"
 
 #ifdef WITH_AVI
 #  include "AVI_avi.h"
diff --git a/source/blender/makesdna/DNA_node_types.h b/source/blender/makesdna/DNA_node_types.h
index 8b41ee534e1..3f1f8328cef 100644
--- a/source/blender/makesdna/DNA_node_types.h
+++ b/source/blender/makesdna/DNA_node_types.h
@@ -353,8 +353,8 @@ typedef struct bNode {
 /* XXX NODE_UPDATE is a generic update flag. More fine-grained updates
  * might be used in the future, but currently all work the same way.
  */
-#define NODE_UPDATE 0xFFFF /* generic update flag (includes all others) */
-#define NODE_UPDATE_ID 1 /* associated id data block has changed */
+#define NODE_UPDATE 0xFFFF     /* generic update flag (includes all others) */
+#define NODE_UPDATE_ID 1       /* associated id data block has changed */
 #define NODE_UPDATE_OPERATOR 2 /* node update triggered from update operator */
 
 /* Unique hash key for identifying node instances
@@ -401,7 +401,7 @@ typedef struct bNodeLink {
 /* link->flag */
 #define NODE_LINKFLAG_HILITE (1 << 0) /* link has been successfully validated */
 #define NODE_LINK_VALID (1 << 1)
-#define NODE_LINK_TEST (1 << 2) /* free test flag, undefined */
+#define NODE_LINK_TEST (1 << 2)           /* free test flag, undefined */
 #define NODE_LINK_TEMP_HIGHLIGHT (1 << 3) /* Link is highlighted for picking. */
 
 /* tree->edit_quality/tree->render_quality */
@@ -503,7 +503,7 @@ typedef struct bNodeTree {
   void (*update_draw)(void *);
   void *tbh, *prh, *sdh, *udh;
 
-  struct NodeTreeUIStorage *runtime;
+  struct NodeTreeUIStorage *ui_storage;
 } bNodeTree;
 
 /* ntree->type, index */
@@ -517,11 +517,11 @@ typedef struct bNodeTree {
 #define NTREE_TYPE_INIT 1
 
 /* ntree->flag */
-#define NTREE_DS_EXPAND (1 << 0) /* for animation editors */
-#define NTREE_COM_OPENCL (1 << 1) /* use opencl */
-#define NTREE_TWO_PASS (1 << 2) /* two pass */
+#define NTREE_DS_EXPAND (1 << 0)            /* for animation editors */
+#define NTREE_COM_OPENCL (1 << 1)           /* use opencl */
+#define NTREE_TWO_PASS (1 << 2)             /* two pass */
 #define NTREE_COM_GROUPNODE_BUFFER (1 << 3) /* use groupnode buffers */
-#define NTREE_VIEWER_BORDER (1 << 4) /* use a border for viewer nodes */
+#define NTREE_VIEWER_BORDER (1 << 4)        /* use a border for viewer nodes */
 /* NOTE: DEPRECATED, use (id->tag & LIB_TAG_LOCALIZED) instead. */
 
 /* tree is localized copy, free when deleting node groups */
@@ -1234,7 +12

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list