[Bf-blender-cvs] [bed1a7cdb73] functions: change some pointers to references

Jacques Lucke noreply at git.blender.org
Sun Dec 22 14:25:38 CET 2019


Commit: bed1a7cdb73984ba7c04036ccc98aed1b5f2843d
Author: Jacques Lucke
Date:   Fri Dec 20 17:09:23 2019 +0100
Branches: functions
https://developer.blender.org/rBbed1a7cdb73984ba7c04036ccc98aed1b5f2843d

change some pointers to references

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

M	source/blender/simulations/bparticles/actions.cpp
M	source/blender/simulations/bparticles/actions.hpp
M	source/blender/simulations/bparticles/events.cpp
M	source/blender/simulations/bparticles/events.hpp
M	source/blender/simulations/bparticles/forces.cpp
M	source/blender/simulations/bparticles/forces.hpp
M	source/blender/simulations/bparticles/node_frontend.cpp
M	source/blender/simulations/bparticles/offset_handlers.cpp
M	source/blender/simulations/bparticles/offset_handlers.hpp

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

diff --git a/source/blender/simulations/bparticles/actions.cpp b/source/blender/simulations/bparticles/actions.cpp
index 7f5ac3a3e58..cc484f98128 100644
--- a/source/blender/simulations/bparticles/actions.cpp
+++ b/source/blender/simulations/bparticles/actions.cpp
@@ -43,7 +43,7 @@ static void update_position_and_velocity_offsets(ParticleActionContext &context)
 
 void ConditionAction::execute(ParticleActionContext &context)
 {
-  ParticleFunctionEvaluator inputs{*m_inputs_fn, context.pindex_mask(), context.attributes()};
+  ParticleFunctionEvaluator inputs{m_inputs_fn, context.pindex_mask(), context.attributes()};
   inputs.compute();
 
   Vector<uint> true_pindices, false_pindices;
diff --git a/source/blender/simulations/bparticles/actions.hpp b/source/blender/simulations/bparticles/actions.hpp
index 7ca40598cbf..6a4304db659 100644
--- a/source/blender/simulations/bparticles/actions.hpp
+++ b/source/blender/simulations/bparticles/actions.hpp
@@ -21,12 +21,12 @@ class ActionSequence : public ParticleAction {
 
 class ConditionAction : public ParticleAction {
  private:
-  ParticleFunction *m_inputs_fn;
+  const ParticleFunction &m_inputs_fn;
   ParticleAction &m_true_action;
   ParticleAction &m_false_action;
 
  public:
-  ConditionAction(ParticleFunction *inputs_fn,
+  ConditionAction(const ParticleFunction &inputs_fn,
                   ParticleAction &true_action,
                   ParticleAction &false_action)
       : m_inputs_fn(inputs_fn), m_true_action(true_action), m_false_action(false_action)
diff --git a/source/blender/simulations/bparticles/events.cpp b/source/blender/simulations/bparticles/events.cpp
index 451b0e76af1..5ba97bf4c02 100644
--- a/source/blender/simulations/bparticles/events.cpp
+++ b/source/blender/simulations/bparticles/events.cpp
@@ -14,7 +14,7 @@ void AgeReachedEvent::filter(EventFilterInterface &interface)
 {
   AttributesRef attributes = interface.attributes();
 
-  ParticleFunctionEvaluator inputs{*m_inputs_fn, interface.index_mask(), interface.attributes()};
+  ParticleFunctionEvaluator inputs{m_inputs_fn, interface.index_mask(), interface.attributes()};
   inputs.compute();
 
   float end_time = interface.step_end_time();
diff --git a/source/blender/simulations/bparticles/events.hpp b/source/blender/simulations/bparticles/events.hpp
index e80210db4fc..e678430a9e8 100644
--- a/source/blender/simulations/bparticles/events.hpp
+++ b/source/blender/simulations/bparticles/events.hpp
@@ -19,12 +19,12 @@ using BLI::float4x4;
 class AgeReachedEvent : public Event {
  private:
   std::string m_is_triggered_attribute;
-  ParticleFunction *m_inputs_fn;
+  const ParticleFunction &m_inputs_fn;
   ParticleAction &m_action;
 
  public:
   AgeReachedEvent(StringRef is_triggered_attribute,
-                  ParticleFunction *inputs_fn,
+                  const ParticleFunction &inputs_fn,
                   ParticleAction &action)
       : m_is_triggered_attribute(is_triggered_attribute), m_inputs_fn(inputs_fn), m_action(action)
   {
diff --git a/source/blender/simulations/bparticles/forces.cpp b/source/blender/simulations/bparticles/forces.cpp
index f340bce8245..0bc6e0f59ca 100644
--- a/source/blender/simulations/bparticles/forces.cpp
+++ b/source/blender/simulations/bparticles/forces.cpp
@@ -12,7 +12,7 @@ void CustomForce::add_force(ForceInterface &interface)
 {
   MutableArrayRef<float3> dst = interface.combined_destination();
 
-  ParticleFunctionEvaluator inputs{*m_inputs_fn, interface.pindices(), interface.attributes()};
+  ParticleFunctionEvaluator inputs{m_inputs_fn, interface.pindices(), interface.attributes()};
   inputs.compute();
 
   for (uint pindex : interface.pindices()) {
diff --git a/source/blender/simulations/bparticles/forces.hpp b/source/blender/simulations/bparticles/forces.hpp
index af3a22d3bd1..d2f3e9bc0b4 100644
--- a/source/blender/simulations/bparticles/forces.hpp
+++ b/source/blender/simulations/bparticles/forces.hpp
@@ -22,10 +22,10 @@ class Force {
 
 class CustomForce : public Force {
  private:
-  ParticleFunction *m_inputs_fn;
+  const ParticleFunction &m_inputs_fn;
 
  public:
-  CustomForce(ParticleFunction *inputs_fn) : m_inputs_fn(inputs_fn)
+  CustomForce(const ParticleFunction &inputs_fn) : m_inputs_fn(inputs_fn)
   {
   }
 
diff --git a/source/blender/simulations/bparticles/node_frontend.cpp b/source/blender/simulations/bparticles/node_frontend.cpp
index c9586a9263a..42bf3b35982 100644
--- a/source/blender/simulations/bparticles/node_frontend.cpp
+++ b/source/blender/simulations/bparticles/node_frontend.cpp
@@ -572,7 +572,7 @@ static void ACTION_condition(XSocketActionBuilder &builder)
                                                                 builder.system_names());
   ParticleAction &action_false = builder.build_input_action_list("Execute If False",
                                                                  builder.system_names());
-  builder.set_constructed<ConditionAction>(inputs_fn, action_true, action_false);
+  builder.set_constructed<ConditionAction>(*inputs_fn, action_true, action_false);
 }
 
 static void ACTION_set_attribute(XSocketActionBuilder &builder)
@@ -902,7 +902,7 @@ static void PARSE_custom_force(XNodeInfluencesBuilder &builder)
   }
 
   ArrayRef<std::string> system_names = builder.find_target_system_names(0, "Force");
-  CustomForce &force = builder.construct<CustomForce>(inputs_fn);
+  CustomForce &force = builder.construct<CustomForce>(*inputs_fn);
   builder.add_force(system_names, force);
 }
 
@@ -923,7 +923,7 @@ static void PARSE_age_reached_event(XNodeInfluencesBuilder &builder)
   }
 
   ParticleAction &action = builder.build_action_list("Execute on Event", system_names);
-  Event &event = builder.construct<AgeReachedEvent>(is_triggered_attribute, inputs_fn, action);
+  Event &event = builder.construct<AgeReachedEvent>(is_triggered_attribute, *inputs_fn, action);
   builder.add_event(system_names, event);
 }
 
@@ -942,7 +942,7 @@ static void PARSE_trails(XNodeInfluencesBuilder &builder)
 
   ParticleAction &action = builder.build_action_list("Execute on Birth", trail_system_names);
   OffsetHandler &offset_handler = builder.construct<CreateTrailHandler>(
-      trail_system_names, inputs_fn, action);
+      trail_system_names, *inputs_fn, action);
   builder.add_offset_handler(main_system_names, offset_handler);
 }
 
@@ -1012,7 +1012,7 @@ static void PARSE_size_over_time(XNodeInfluencesBuilder &builder)
   }
 
   ArrayRef<std::string> system_names = builder.find_target_system_names(0, "Influence");
-  OffsetHandler &offset_handler = builder.construct<SizeOverTimeHandler>(inputs_fn);
+  OffsetHandler &offset_handler = builder.construct<SizeOverTimeHandler>(*inputs_fn);
   builder.add_offset_handler(system_names, offset_handler);
 }
 
diff --git a/source/blender/simulations/bparticles/offset_handlers.cpp b/source/blender/simulations/bparticles/offset_handlers.cpp
index 77af449ca04..333bbcc8da6 100644
--- a/source/blender/simulations/bparticles/offset_handlers.cpp
+++ b/source/blender/simulations/bparticles/offset_handlers.cpp
@@ -10,7 +10,7 @@ void CreateTrailHandler::execute(OffsetHandlerInterface &interface)
   auto position_offsets = interface.attribute_offsets().get<float3>("Position");
   auto colors = interface.attributes().get<rgba_f>("Color");
 
-  ParticleFunctionEvaluator inputs{*m_inputs_fn, interface.pindices(), interface.attributes()};
+  ParticleFunctionEvaluator inputs{m_inputs_fn, interface.pindices(), interface.attributes()};
   inputs.compute();
 
   Vector<float3> new_positions;
@@ -53,7 +53,7 @@ void SizeOverTimeHandler::execute(OffsetHandlerInterface &interface)
   auto birth_times = interface.attributes().get<float>("Birth Time");
   auto sizes = interface.attributes().get<float>("Size");
 
-  ParticleFunctionEvaluator inputs{*m_inputs_fn, interface.pindices(), interface.attributes()};
+  ParticleFunctionEvaluator inputs{m_inputs_fn, interface.pindices(), interface.attributes()};
   inputs.compute();
 
   for (uint pindex : interface.pindices()) {
diff --git a/source/blender/simulations/bparticles/offset_handlers.hpp b/source/blender/simulations/bparticles/offset_handlers.hpp
index 8b6106b7702..151cc0239a2 100644
--- a/source/blender/simulations/bparticles/offset_handlers.hpp
+++ b/source/blender/simulations/bparticles/offset_handlers.hpp
@@ -8,12 +8,12 @@ namespace BParticles {
 class CreateTrailHandler : public OffsetHandler {
  private:
   ArrayRef<std::string> m_systems_to_emit;
-  ParticleFunction *m_inputs_fn;
+  const ParticleFunction &m_inputs_fn;
   ParticleAction &m_on_birth_action;
 
  public:
   CreateTrailHandler(ArrayRef<std::string> systems_to_emit,
-                     ParticleFunction *inputs_fn,
+                     const ParticleFunction &inputs_fn,
                      ParticleAction &on_birth_action)
       : m_systems_to_emit(systems_to_emit),
         m_inputs_fn(inputs_fn),
@@ -26,10 +26,10 @@ class CreateTrailHandler : public OffsetHandler {
 
 class SizeOverTimeHandler : public OffsetHandler {
  private:
-  ParticleFunction *m_inputs_fn;
+  const ParticleFunction &m_inputs_fn;
 
  public:
-  SizeOverTimeHandler(ParticleFunction *inputs_fn) : m_inputs_fn(inputs_fn)
+  SizeOverTimeHandler(const ParticleFunction &inputs_fn) : m_inputs_fn(inputs_fn)
   {
   }



More information about the Bf-blender-cvs mailing list