[Bf-blender-cvs] [19389787ff4] virtual-array-attributes: support typed

Jacques Lucke noreply at git.blender.org
Mon Apr 12 18:27:56 CEST 2021


Commit: 19389787ff42e820260985280dee21140ee93fc7
Author: Jacques Lucke
Date:   Sun Apr 11 12:13:33 2021 +0200
Branches: virtual-array-attributes
https://developer.blender.org/rB19389787ff42e820260985280dee21140ee93fc7

support typed

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

M	source/blender/functions/FN_generic_virtual_array.hh

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

diff --git a/source/blender/functions/FN_generic_virtual_array.hh b/source/blender/functions/FN_generic_virtual_array.hh
index e7dfca7a47e..69eb8810834 100644
--- a/source/blender/functions/FN_generic_virtual_array.hh
+++ b/source/blender/functions/FN_generic_virtual_array.hh
@@ -685,6 +685,7 @@ template<typename T> class GVArray_Typed {
   std::optional<VArray_For_Span<T>> varray_span_;
   std::optional<VArray_For_Single<T>> varray_single_;
   std::optional<VArray_For_GVArray<T>> varray_any_;
+  std::unique_ptr<GVArray> owned_gvarray_;
 
  public:
   GVArray_Typed(const GVArray &gvarray)
@@ -710,6 +711,11 @@ template<typename T> class GVArray_Typed {
     }
   }
 
+  GVArray_Typed(std::unique_ptr<GVArray> gvarray)
+      : GVArray_Typed(*gvarray), owned_gvarray_(std::move(gvarray))
+  {
+  }
+
   const VArray<T> &operator*() const
   {
     return *varray_;



More information about the Bf-blender-cvs mailing list