[Bf-blender-cvs] [87366baaed7] geometry-nodes: Functions: support lookup without extract in generic value map

Jacques Lucke noreply at git.blender.org
Fri Nov 20 17:36:35 CET 2020


Commit: 87366baaed71d602eb1c41f900cea4573f2f6188
Author: Jacques Lucke
Date:   Fri Nov 20 17:29:52 2020 +0100
Branches: geometry-nodes
https://developer.blender.org/rB87366baaed71d602eb1c41f900cea4573f2f6188

Functions: support lookup without extract in generic value map

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

M	source/blender/functions/FN_generic_value_map.hh

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

diff --git a/source/blender/functions/FN_generic_value_map.hh b/source/blender/functions/FN_generic_value_map.hh
index 952be87e5da..2c1b37c0461 100644
--- a/source/blender/functions/FN_generic_value_map.hh
+++ b/source/blender/functions/FN_generic_value_map.hh
@@ -104,6 +104,16 @@ template<typename Key> class GValueMap {
     return return_value;
   }
 
+  template<typename T, typename ForwardKey> T lookup(const ForwardKey &key) const
+  {
+    GMutablePointer value = values_.lookup_as(key);
+    const CPPType &type = *value.type();
+    BLI_assert(type.is<T>());
+    T return_value;
+    type.copy_to_initialized(value.get(), &return_value);
+    return return_value;
+  }
+
   template<typename ForwardKey> bool contains(const ForwardKey &key) const
   {
     return values_.contains_as(key);



More information about the Bf-blender-cvs mailing list