From 39b4cff181e54bcc3a3c0984cf0dd79c79ec3aa0 Mon Sep 17 00:00:00 2001
From: "Joachim Wuttke (l)" <j.wuttke@fz-juelich.de>
Date: Sat, 26 Sep 2020 15:03:20 +0200
Subject: [PATCH] Core/StandardSamples/MagneticLayersBuilder: simplify

---
 .../StandardSamples/MagneticLayersBuilder.cpp | 23 +++++++------------
 Core/StandardSamples/MagneticLayersBuilder.h  | 12 +---------
 2 files changed, 9 insertions(+), 26 deletions(-)

diff --git a/Core/StandardSamples/MagneticLayersBuilder.cpp b/Core/StandardSamples/MagneticLayersBuilder.cpp
index a65c0b84f54..ccd5f61fa0f 100644
--- a/Core/StandardSamples/MagneticLayersBuilder.cpp
+++ b/Core/StandardSamples/MagneticLayersBuilder.cpp
@@ -25,10 +25,11 @@
 #include "Core/Parametrization/RealParameter.h"
 #include "Core/Particle/Particle.h"
 
-MagneticSubstrateZeroFieldBuilder::MagneticSubstrateZeroFieldBuilder()
-    : m_sphere_radius(5 * Units::nanometer)
-{
-}
+namespace {
+
+const double sphere_radius = 5 * Units::nanometer;
+
+} // namespace
 
 MultiLayer* MagneticSubstrateZeroFieldBuilder::buildSample() const
 {
@@ -42,7 +43,7 @@ MultiLayer* MagneticSubstrateZeroFieldBuilder::buildSample() const
 
     ParticleLayout particle_layout;
     kvector_t position(0.0, 0.0, -10.0 * Units::nanometer);
-    FormFactorFullSphere ff_sphere(m_sphere_radius);
+    FormFactorFullSphere ff_sphere(sphere_radius);
     Particle particle(particle_material, ff_sphere);
     particle_layout.addParticle(particle, 1.0, position);
 
@@ -55,8 +56,6 @@ MultiLayer* MagneticSubstrateZeroFieldBuilder::buildSample() const
     return multi_layer;
 }
 
-SimpleMagneticLayerBuilder::SimpleMagneticLayerBuilder() = default;
-
 MultiLayer* SimpleMagneticLayerBuilder::buildSample() const
 {
     MultiLayer* multi_layer = new MultiLayer();
@@ -76,8 +75,6 @@ MultiLayer* SimpleMagneticLayerBuilder::buildSample() const
     return multi_layer;
 }
 
-MagneticLayerBuilder::MagneticLayerBuilder() : m_sphere_radius(5 * Units::nanometer) {}
-
 MultiLayer* MagneticLayerBuilder::buildSample() const
 {
     MultiLayer* multi_layer = new MultiLayer();
@@ -90,7 +87,7 @@ MultiLayer* MagneticLayerBuilder::buildSample() const
     Material particle_material = HomogeneousMaterial("MagParticle", 6e-4, 2e-8, particle_field);
 
     ParticleLayout particle_layout;
-    FormFactorFullSphere ff_sphere(m_sphere_radius);
+    FormFactorFullSphere ff_sphere(sphere_radius);
     Particle particle(particle_material, ff_sphere);
     particle_layout.addParticle(particle, 1.0);
 
@@ -105,8 +102,6 @@ MultiLayer* MagneticLayerBuilder::buildSample() const
     return multi_layer;
 }
 
-SimpleMagneticRotationBuilder::SimpleMagneticRotationBuilder() = default;
-
 MultiLayer* SimpleMagneticRotationBuilder::buildSample() const
 {
     return builder();
@@ -161,8 +156,6 @@ MultiLayer* SimpleMagneticRotationBuilder::createSampleByIndex(size_t index)
     }
 }
 
-MagneticRotationBuilder::MagneticRotationBuilder() : m_sphere_radius(5 * Units::nanometer) {}
-
 MultiLayer* MagneticRotationBuilder::buildSample() const
 {
     MultiLayer* multi_layer = new MultiLayer();
@@ -175,7 +168,7 @@ MultiLayer* MagneticRotationBuilder::buildSample() const
 
     ParticleLayout particle_layout;
     kvector_t position(0.0, 0.0, -10.0 * Units::nanometer);
-    FormFactorFullSphere ff_sphere(m_sphere_radius);
+    FormFactorFullSphere ff_sphere(sphere_radius);
     Particle particle(particle_material, ff_sphere);
     RotationZ rot_z(90 * Units::deg);
     particle_layout.addParticle(particle, 1.0, position, rot_z);
diff --git a/Core/StandardSamples/MagneticLayersBuilder.h b/Core/StandardSamples/MagneticLayersBuilder.h
index ea281369e60..906bd254070 100644
--- a/Core/StandardSamples/MagneticLayersBuilder.h
+++ b/Core/StandardSamples/MagneticLayersBuilder.h
@@ -18,15 +18,12 @@
 #include "Core/Multilayer/RoughnessModels.h"
 #include "Core/SampleBuilderEngine/ISampleBuilder.h"
 
-class ISample;
-
 //! Builds sample: spheres in substrate layer with a zero magnetic field.
 //! @ingroup standard_samples
 
 class MagneticSubstrateZeroFieldBuilder : public ISampleBuilder
 {
 public:
-    MagneticSubstrateZeroFieldBuilder();
     MultiLayer* buildSample() const;
 
 private:
@@ -39,7 +36,6 @@ private:
 class SimpleMagneticLayerBuilder : public ISampleBuilder
 {
 public:
-    SimpleMagneticLayerBuilder();
     MultiLayer* buildSample() const;
 };
 
@@ -49,7 +45,6 @@ public:
 class MagneticLayerBuilder : public ISampleBuilder
 {
 public:
-    MagneticLayerBuilder();
     MultiLayer* buildSample() const;
 
 private:
@@ -62,13 +57,12 @@ private:
 class SimpleMagneticRotationBuilder : public ISampleBuilder
 {
 public:
-    SimpleMagneticRotationBuilder();
     MultiLayer* buildSample() const override;
 
     MultiLayer* createSampleByIndex(size_t index) override;
     size_t size() override;
 
-protected:
+private:
     MultiLayer* builder(double sigmaRoughness = 0.,
                         RoughnessModel roughnessModel = RoughnessModel::TANH) const;
 };
@@ -79,11 +73,7 @@ protected:
 class MagneticRotationBuilder : public ISampleBuilder
 {
 public:
-    MagneticRotationBuilder();
     MultiLayer* buildSample() const;
-
-private:
-    double m_sphere_radius;
 };
 
 #endif // BORNAGAIN_CORE_STANDARDSAMPLES_MAGNETICLAYERSBUILDER_H
-- 
GitLab