[Bf-blender-cvs] [3c04bdbddb3] functions: cleanup naming and implement some destructors
Jacques Lucke
noreply at git.blender.org
Sat Jun 8 14:21:46 CEST 2019
Commit: 3c04bdbddb3278796eb754aa60796cce4d17d41d
Author: Jacques Lucke
Date: Sat Jun 8 11:54:45 2019 +0200
Branches: functions
https://developer.blender.org/rB3c04bdbddb3278796eb754aa60796cce4d17d41d
cleanup naming and implement some destructors
===================================================================
M source/blender/simulations/bparticles/c_wrapper.cpp
M source/blender/simulations/bparticles/core.cpp
M source/blender/simulations/bparticles/core.hpp
M source/blender/simulations/bparticles/particles_container.hpp
===================================================================
diff --git a/source/blender/simulations/bparticles/c_wrapper.cpp b/source/blender/simulations/bparticles/c_wrapper.cpp
index 19c036449a9..a828a775612 100644
--- a/source/blender/simulations/bparticles/c_wrapper.cpp
+++ b/source/blender/simulations/bparticles/c_wrapper.cpp
@@ -14,7 +14,7 @@
}
using BParticles::Description;
-using BParticles::NamedBuffersRef;
+using BParticles::NamedBuffers;
using BParticles::ParticlesBlock;
using BParticles::Solver;
using BParticles::StateBase;
@@ -36,7 +36,7 @@ class TestForce : public BParticles::Force {
{
}
- void add_force(NamedBuffersRef &UNUSED(buffers), ArrayRef<Vec3> dst) override
+ void add_force(NamedBuffers &UNUSED(buffers), ArrayRef<Vec3> dst) override
{
for (uint i = 0; i < dst.size(); i++) {
dst[i].x += m_value_1;
diff --git a/source/blender/simulations/bparticles/core.cpp b/source/blender/simulations/bparticles/core.cpp
index a0d0457df8b..b08461c9531 100644
--- a/source/blender/simulations/bparticles/core.cpp
+++ b/source/blender/simulations/bparticles/core.cpp
@@ -2,6 +2,10 @@
namespace BParticles {
+NamedBuffers::~NamedBuffers()
+{
+}
+
Description::~Description()
{
for (Force *force : m_forces) {
@@ -20,6 +24,14 @@ StateBase::~StateBase()
{
}
+Force::~Force()
+{
+}
+
+Emitter::~Emitter()
+{
+}
+
void adapt_state(Solver *new_solver, WrappedState *wrapped_state)
{
wrapped_state->m_solver = new_solver;
diff --git a/source/blender/simulations/bparticles/core.hpp b/source/blender/simulations/bparticles/core.hpp
index 46749fd5a66..e76a8d9b03a 100644
--- a/source/blender/simulations/bparticles/core.hpp
+++ b/source/blender/simulations/bparticles/core.hpp
@@ -20,21 +20,25 @@ using BLI::StringRef;
using BLI::Vec3;
using std::unique_ptr;
-class NamedBuffersRef {
+class NamedBuffers {
public:
+ virtual ~NamedBuffers();
+ virtual uint size() = 0;
virtual ArrayRef<float> float_buffer(StringRef name) = 0;
virtual ArrayRef<Vec3> vec3_buffer(StringRef name) = 0;
};
class Force {
public:
- virtual void add_force(NamedBuffersRef &buffers, ArrayRef<Vec3> dst) = 0;
+ virtual ~Force();
+ virtual void add_force(NamedBuffers &buffers, ArrayRef<Vec3> dst) = 0;
};
class ParticlesBlock;
class Emitter {
public:
+ virtual ~Emitter();
virtual void emit(std::function<ParticlesBlock *()> request_block) = 0;
};
diff --git a/source/blender/simulations/bparticles/particles_container.hpp b/source/blender/simulations/bparticles/particles_container.hpp
index be3ba7b3253..43c5e11a883 100644
--- a/source/blender/simulations/bparticles/particles_container.hpp
+++ b/source/blender/simulations/bparticles/particles_container.hpp
@@ -80,7 +80,7 @@ class ParticlesBlock {
static void Compress(ArrayRef<ParticlesBlock *> blocks);
};
-class BlockBuffersRef : public NamedBuffersRef {
+class BlockBuffersRef : public NamedBuffers {
private:
ParticlesBlock *m_block;
@@ -89,6 +89,11 @@ class BlockBuffersRef : public NamedBuffersRef {
{
}
+ uint size() override
+ {
+ return m_block->size();
+ }
+
ArrayRef<float> float_buffer(StringRef name) override
{
return ArrayRef<float>(m_block->float_buffer(name), m_block->active_amount());
More information about the Bf-blender-cvs
mailing list