[Bf-blender-cvs] [0b8c280d99f] virtual-array-attributes: cleanup
Jacques Lucke
noreply at git.blender.org
Mon Apr 12 18:27:56 CEST 2021
Commit: 0b8c280d99fee9340b6cde3764b224916b931775
Author: Jacques Lucke
Date: Sun Apr 11 12:19:54 2021 +0200
Branches: virtual-array-attributes
https://developer.blender.org/rB0b8c280d99fee9340b6cde3764b224916b931775
cleanup
===================================================================
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 69eb8810834..ce905139f9b 100644
--- a/source/blender/functions/FN_generic_virtual_array.hh
+++ b/source/blender/functions/FN_generic_virtual_array.hh
@@ -291,7 +291,7 @@ class GVArray_For_SingleValue : public GVArray_For_SingleValueRef {
};
template<typename T> class GVArray_For_VArray : public GVArray {
- private:
+ protected:
const VArray<T> *varray_ = nullptr;
public:
@@ -300,16 +300,9 @@ template<typename T> class GVArray_For_VArray : public GVArray {
{
}
- /* When this constructor is used, the #set_varray method has to be used as well. */
- GVArray_For_VArray(const int64_t size) : GVArray(CPPType::get<T>(), size)
- {
- }
-
protected:
- void set_varray(const VArray<T> &varray)
+ GVArray_For_VArray(const int64_t size) : GVArray(CPPType::get<T>(), size)
{
- BLI_assert(varray.size() == size_);
- varray_ = &varray;
}
void get_impl(const int64_t index, void *r_value) const override
@@ -349,7 +342,7 @@ template<typename T> class GVArray_For_VArray : public GVArray {
};
template<typename T> class VArray_For_GVArray : public VArray<T> {
- private:
+ protected:
const GVArray *varray_ = nullptr;
public:
@@ -358,16 +351,9 @@ template<typename T> class VArray_For_GVArray : public VArray<T> {
BLI_assert(varray_->type().template is<T>());
}
- VArray_For_GVArray(const int64_t size) : VArray<T>(size)
- {
- }
-
protected:
- void set_varray(const GVArray &varray)
+ VArray_For_GVArray(const int64_t size) : VArray<T>(size)
{
- BLI_assert(varray.size() == this->size_);
- BLI_assert(varray.type().template is<T>());
- varray_ = &varray;
}
T get_impl(const int64_t index) const override
@@ -401,7 +387,7 @@ template<typename T> class VArray_For_GVArray : public VArray<T> {
};
template<typename T> class VMutableArray_For_GVMutableArray : public VMutableArray<T> {
- private:
+ protected:
GVMutableArray *varray_ = nullptr;
public:
@@ -416,13 +402,6 @@ template<typename T> class VMutableArray_For_GVMutableArray : public VMutableArr
}
private:
- void set_varray(GVMutableArray &varray)
- {
- BLI_assert(varray.size() == this->size());
- BLI_assert(varray.type().template is<T>());
- varray_ = &varray;
- }
-
T get_impl(const int64_t index) const override
{
T value;
@@ -459,7 +438,7 @@ template<typename T> class VMutableArray_For_GVMutableArray : public VMutableArr
};
template<typename T> class GVMutableArray_For_VMutableArray : public GVMutableArray {
- private:
+ protected:
VMutableArray<T> *varray_ = nullptr;
public:
@@ -469,12 +448,6 @@ template<typename T> class GVMutableArray_For_VMutableArray : public GVMutableAr
}
private:
- void set_varray(const VArray<T> &varray)
- {
- BLI_assert(varray.size() == size_);
- varray_ = &varray;
- }
-
void get_impl(const int64_t index, void *r_value) const override
{
*(T *)r_value = varray_->get(index);
@@ -622,7 +595,7 @@ class GVArray_For_EmbeddedVArray : public GVArray_For_VArray<T> {
GVArray_For_EmbeddedVArray(const int64_t size, Args &&... args)
: GVArray_For_VArray<T>(size), embedded_varray_(std::forward<Args>(args)...)
{
- this->set_varray(embedded_varray_);
+ this->varray_ = &embedded_varray_;
}
};
@@ -636,7 +609,7 @@ class GVMutableArray_For_EmbeddedVMutableArray : public GVMutableArray_For_VMuta
GVMutableArray_For_EmbeddedVMutableArray(const int64_t size, Args &&... args)
: GVMutableArray_For_VMutableArray<T>(size), embedded_varray_(std::forward<Args>(args)...)
{
- this->set_varray(embedded_varray_);
+ this->varray_ = &embedded_varray_;
}
};
@@ -711,9 +684,9 @@ template<typename T> class GVArray_Typed {
}
}
- GVArray_Typed(std::unique_ptr<GVArray> gvarray)
- : GVArray_Typed(*gvarray), owned_gvarray_(std::move(gvarray))
+ GVArray_Typed(std::unique_ptr<GVArray> gvarray) : GVArray_Typed(*gvarray)
{
+ owned_gvarray_ = std::move(gvarray);
}
const VArray<T> &operator*() const
More information about the Bf-blender-cvs
mailing list