From 4b9edd70b39c21cc7b895ff9870c7c86687e9129 Mon Sep 17 00:00:00 2001
From: "Joachim Wuttke (o)" <j.wuttke@fz-juelich.de>
Date: Mon, 2 Aug 2021 15:53:47 +0200
Subject: [PATCH] rename almost everything in class PolFilter

---
 Core/Export/SimulationToPython.cpp           |  6 +-
 Core/Simulation/ISimulation.cpp              |  2 +-
 Device/Detector/IDetector.cpp                |  2 +-
 Device/Detector/IDetector.h                  |  4 +-
 Device/ProDetector/DetectionProperties.cpp   | 22 +++----
 Device/ProDetector/DetectionProperties.h     | 20 +++----
 GUI/Models/TransformFromDomain.cpp           |  6 +-
 Tests/Unit/Core/RectangularDetectorTest.cpp  | 60 ++++++++++----------
 Tests/Unit/Core/SpecularSimulationTest.cpp   | 12 ++--
 Tests/Unit/Device/SpecularDetector1DTest.cpp |  6 +-
 Tests/Unit/Device/SphericalDetectorTest.cpp  | 60 ++++++++++----------
 auto/Wrap/libBornAgainDevice_wrap.cpp        |  4 +-
 12 files changed, 102 insertions(+), 102 deletions(-)

diff --git a/Core/Export/SimulationToPython.cpp b/Core/Export/SimulationToPython.cpp
index 1ad58fbbe7c..2f9aaf7b899 100644
--- a/Core/Export/SimulationToPython.cpp
+++ b/Core/Export/SimulationToPython.cpp
@@ -242,9 +242,9 @@ std::string defineDetectorPolarizationAnalysis(const ISimulation* simulation)
 {
     std::ostringstream result;
     const IDetector& detector = simulation->detector();
-    kvector_t analyzer_direction = detector.detectionProperties().analyzerDirection();
-    double analyzer_efficiency = detector.detectionProperties().analyzerEfficiency();
-    double analyzer_total_transmission = detector.detectionProperties().analyzerTotalTransmission();
+    kvector_t analyzer_direction = detector.detectionProperties().polDirection();
+    double analyzer_efficiency = detector.detectionProperties().polEfficiency();
+    double analyzer_total_transmission = detector.detectionProperties().totalTransmission();
 
     if (analyzer_direction.mag() > 0.0) {
         std::string direction_name = "analyzer_direction";
diff --git a/Core/Simulation/ISimulation.cpp b/Core/Simulation/ISimulation.cpp
index dfc9d106473..3062e60c8f9 100644
--- a/Core/Simulation/ISimulation.cpp
+++ b/Core/Simulation/ISimulation.cpp
@@ -195,7 +195,7 @@ void ISimulation::runSimulation()
     prepareSimulation();
 
     const bool force_polarized =
-        detector().detectionProperties().analyzerDirection() != kvector_t{};
+        detector().detectionProperties().polDirection() != kvector_t{};
 
     const auto re_sample = ProcessedSample::make(*sample(), options(), force_polarized);
 
diff --git a/Device/Detector/IDetector.cpp b/Device/Detector/IDetector.cpp
index 9591ef826c3..64338d8b178 100644
--- a/Device/Detector/IDetector.cpp
+++ b/Device/Detector/IDetector.cpp
@@ -157,7 +157,7 @@ size_t IDetector::detectorIndexToRegionOfInterestIndex(const size_t detectorInde
 void IDetector::setAnalyzer(const kvector_t direction, double efficiency,
                                       double total_transmission)
 {
-    m_detection_properties.setAnalyzer(direction, efficiency, total_transmission);
+    m_detection_properties.setDirEffTra(direction, efficiency, total_transmission);
 }
 
 void IDetector::setDetectorResolution(const IDetectorResolution& p_detector_resolution)
diff --git a/Device/Detector/IDetector.h b/Device/Detector/IDetector.h
index 02f05d1aaf6..e5345afdb58 100644
--- a/Device/Detector/IDetector.h
+++ b/Device/Detector/IDetector.h
@@ -157,7 +157,7 @@ public:
 #endif // USER_API
 
     //! Returns detection properties
-    const DetectionProperties& detectionProperties() const { return m_detection_properties; }
+    const PolFilter& detectionProperties() const { return m_detection_properties; }
 
     //! Returns new intensity map with resolution applied, and cropped to ROI if applicable.
     OutputData<double>*
@@ -222,7 +222,7 @@ private:
                               const std::vector<std::unique_ptr<DiffuseElement>>& elements) const;
 
     CloneableVector<IAxis> m_axes;
-    DetectionProperties m_detection_properties;
+    PolFilter m_detection_properties;
     std::unique_ptr<IDetectorResolution> m_detector_resolution;
 };
 
diff --git a/Device/ProDetector/DetectionProperties.cpp b/Device/ProDetector/DetectionProperties.cpp
index da50ae7eafe..c31e695dd4d 100644
--- a/Device/ProDetector/DetectionProperties.cpp
+++ b/Device/ProDetector/DetectionProperties.cpp
@@ -15,7 +15,7 @@
 #include "Device/ProDetector/DetectionProperties.h"
 #include "Fit/Param/RealLimits.h"
 
-DetectionProperties::DetectionProperties(kvector_t direction, double efficiency,
+PolFilter::PolFilter(kvector_t direction, double efficiency,
                                          double total_transmission)
     : m_direction(direction), m_efficiency(efficiency), m_total_transmission(total_transmission)
 {
@@ -24,17 +24,17 @@ DetectionProperties::DetectionProperties(kvector_t direction, double efficiency,
     checkLimits("Transmission", m_total_transmission, RealLimits::nonnegative());
 }
 
-DetectionProperties::DetectionProperties() : DetectionProperties({}, {}, 1.0) {}
+PolFilter::PolFilter() : PolFilter({}, {}, 1.0) {}
 
-DetectionProperties::DetectionProperties(const DetectionProperties& other)
-    : DetectionProperties(other.m_direction, other.m_efficiency, other.m_total_transmission)
+PolFilter::PolFilter(const PolFilter& other)
+    : PolFilter(other.m_direction, other.m_efficiency, other.m_total_transmission)
 {
 }
 
-void DetectionProperties::setAnalyzer(const kvector_t direction, double efficiency,
+void PolFilter::setDirEffTra(const kvector_t direction, double efficiency,
                                                 double total_transmission)
 {
-    if (!checkAnalyzerProperties(direction, efficiency, total_transmission))
+    if (!check(direction, efficiency, total_transmission))
         throw std::runtime_error("IDetector2D::setAnalyzer: the "
                                  "given properties are not physical");
     if (efficiency == 0.0 || total_transmission == 0.0 || direction.mag() == 0.0) {
@@ -47,7 +47,7 @@ void DetectionProperties::setAnalyzer(const kvector_t direction, double efficien
     m_total_transmission = total_transmission;
 }
 
-Eigen::Matrix2cd DetectionProperties::analyzerOperator() const
+Eigen::Matrix2cd PolFilter::analyzerOperator() const
 {
     if (m_direction.mag() == 0.0 || m_efficiency == 0.0)
         return m_total_transmission * Eigen::Matrix2cd::Identity();
@@ -65,22 +65,22 @@ Eigen::Matrix2cd DetectionProperties::analyzerOperator() const
     return result;
 }
 
-kvector_t DetectionProperties::analyzerDirection() const
+kvector_t PolFilter::polDirection() const
 {
     return m_direction;
 }
 
-double DetectionProperties::analyzerEfficiency() const
+double PolFilter::polEfficiency() const
 {
     return m_efficiency;
 }
 
-double DetectionProperties::analyzerTotalTransmission() const
+double PolFilter::totalTransmission() const
 {
     return m_total_transmission;
 }
 
-bool DetectionProperties::checkAnalyzerProperties(const kvector_t direction, double efficiency,
+bool PolFilter::check(const kvector_t direction, double efficiency,
                                                   double total_transmission) const
 {
     if (direction.mag() == 0.0)
diff --git a/Device/ProDetector/DetectionProperties.h b/Device/ProDetector/DetectionProperties.h
index 46ba5f0df08..af7662eee22 100644
--- a/Device/ProDetector/DetectionProperties.h
+++ b/Device/ProDetector/DetectionProperties.h
@@ -27,31 +27,31 @@
 //! Detector properties (efficiency, transmission).
 //! @ingroup detector
 
-class DetectionProperties : public INode {
+class PolFilter : public INode {
 public:
-    DetectionProperties(kvector_t direction, double efficiency, double total_transmission);
-    DetectionProperties();
-    DetectionProperties(const DetectionProperties& other);
+    PolFilter(kvector_t direction, double efficiency, double total_transmission);
+    PolFilter();
+    PolFilter(const PolFilter& other);
 
-    virtual ~DetectionProperties() = default;
+    virtual ~PolFilter() = default;
 
     //! Sets the polarization analyzer characteristics of the detector
-    void setAnalyzer(const kvector_t direction, double efficiency,
+    void setDirEffTra(const kvector_t direction, double efficiency,
                                double total_transmission);
 
     //! Return the polarization density matrix (in spin basis along z-axis)
     Eigen::Matrix2cd analyzerOperator() const;
 
     //! Retrieve the analyzer characteristics
-    kvector_t analyzerDirection() const;
-    double analyzerEfficiency() const; //!< will always return positive value
-    double analyzerTotalTransmission() const;
+    kvector_t polDirection() const;
+    double polEfficiency() const; //!< will always return positive value
+    double totalTransmission() const;
 
     void accept(INodeVisitor* visitor) const override { visitor->visit(this); }
 
 private:
     //! Verify if the given analyzer properties are physical
-    bool checkAnalyzerProperties(const kvector_t direction, double efficiency,
+    bool check(const kvector_t direction, double efficiency,
                                  double total_transmission) const;
 
     kvector_t m_direction;       //!< direction of polarization analysis
diff --git a/GUI/Models/TransformFromDomain.cpp b/GUI/Models/TransformFromDomain.cpp
index 4bfe45f1a7b..12ba4fffa0e 100644
--- a/GUI/Models/TransformFromDomain.cpp
+++ b/GUI/Models/TransformFromDomain.cpp
@@ -560,12 +560,12 @@ void GUI::Transform::FromDomain::setDetectorResolution(DetectorItem* detector_it
 void GUI::Transform::FromDomain::setDetectorProperties(DetectorItem* detector_item,
                                                        const IDetector& detector)
 {
-    double total_transmission = detector.detectionProperties().analyzerTotalTransmission();
+    double total_transmission = detector.detectionProperties().totalTransmission();
     if (total_transmission <= 0.0)
         return;
 
-    kvector_t analyzer_dir = detector.detectionProperties().analyzerDirection();
-    double efficiency = detector.detectionProperties().analyzerEfficiency();
+    kvector_t analyzer_dir = detector.detectionProperties().polDirection();
+    double efficiency = detector.detectionProperties().polEfficiency();
     detector_item->setAnalyzerDirection(analyzer_dir);
     detector_item->setAnalyzerEfficiency(efficiency);
     detector_item->setAnalyzerTotalTransmission(total_transmission);
diff --git a/Tests/Unit/Core/RectangularDetectorTest.cpp b/Tests/Unit/Core/RectangularDetectorTest.cpp
index 85a80cee116..d9146c40df2 100644
--- a/Tests/Unit/Core/RectangularDetectorTest.cpp
+++ b/Tests/Unit/Core/RectangularDetectorTest.cpp
@@ -204,14 +204,14 @@ TEST_F(RectangularDetectorTest, AnalyzerProperties)
     direction = kvector_t(1.0, 0.0, 0.0);
     unit_direction = direction.unit();
     detector.setAnalyzer(direction, efficiency, total_transmission);
-    const DetectionProperties& detect_properties = detector.detectionProperties();
+    const PolFilter& detect_properties = detector.detectionProperties();
 
-    EXPECT_NEAR(detect_properties.analyzerEfficiency(), efficiency, 1e-8);
-    EXPECT_NEAR(detect_properties.analyzerTotalTransmission(), total_transmission, 1e-8);
+    EXPECT_NEAR(detect_properties.polEfficiency(), efficiency, 1e-8);
+    EXPECT_NEAR(detect_properties.totalTransmission(), total_transmission, 1e-8);
     // direction vector returned is zero vector because efficiency is zero
-    EXPECT_NEAR(detect_properties.analyzerDirection().x(), 0.0, 1e-8);
-    EXPECT_NEAR(detect_properties.analyzerDirection().y(), 0.0, 1e-8);
-    EXPECT_NEAR(detect_properties.analyzerDirection().z(), 0.0, 1e-8);
+    EXPECT_NEAR(detect_properties.polDirection().x(), 0.0, 1e-8);
+    EXPECT_NEAR(detect_properties.polDirection().y(), 0.0, 1e-8);
+    EXPECT_NEAR(detect_properties.polDirection().z(), 0.0, 1e-8);
 
     // intermediate efficiency
     direction = kvector_t(1.0, 0.0, 0.0);
@@ -219,13 +219,13 @@ TEST_F(RectangularDetectorTest, AnalyzerProperties)
     total_transmission = 0.6;
     unit_direction = direction.unit();
     detector.setAnalyzer(direction, efficiency, total_transmission);
-    const DetectionProperties& detect_properties2 = detector.detectionProperties();
+    const PolFilter& detect_properties2 = detector.detectionProperties();
 
-    EXPECT_NEAR(detect_properties2.analyzerEfficiency(), efficiency, 1e-8);
-    EXPECT_NEAR(detect_properties2.analyzerTotalTransmission(), total_transmission, 1e-8);
-    EXPECT_NEAR(detect_properties2.analyzerDirection().x(), unit_direction.x(), 1e-8);
-    EXPECT_NEAR(detect_properties2.analyzerDirection().y(), unit_direction.y(), 1e-8);
-    EXPECT_NEAR(detect_properties2.analyzerDirection().z(), unit_direction.z(), 1e-8);
+    EXPECT_NEAR(detect_properties2.polEfficiency(), efficiency, 1e-8);
+    EXPECT_NEAR(detect_properties2.totalTransmission(), total_transmission, 1e-8);
+    EXPECT_NEAR(detect_properties2.polDirection().x(), unit_direction.x(), 1e-8);
+    EXPECT_NEAR(detect_properties2.polDirection().y(), unit_direction.y(), 1e-8);
+    EXPECT_NEAR(detect_properties2.polDirection().z(), unit_direction.z(), 1e-8);
 
     // maximum efficiency
     direction = kvector_t(1.0, 0.0, 0.0);
@@ -233,13 +233,13 @@ TEST_F(RectangularDetectorTest, AnalyzerProperties)
     total_transmission = 0.5;
     unit_direction = direction.unit();
     detector.setAnalyzer(direction, efficiency, total_transmission);
-    const DetectionProperties& detect_properties3 = detector.detectionProperties();
+    const PolFilter& detect_properties3 = detector.detectionProperties();
 
-    EXPECT_NEAR(detect_properties3.analyzerEfficiency(), efficiency, 1e-8);
-    EXPECT_NEAR(detect_properties3.analyzerTotalTransmission(), total_transmission, 1e-8);
-    EXPECT_NEAR(detect_properties3.analyzerDirection().x(), unit_direction.x(), 1e-8);
-    EXPECT_NEAR(detect_properties3.analyzerDirection().y(), unit_direction.y(), 1e-8);
-    EXPECT_NEAR(detect_properties3.analyzerDirection().z(), unit_direction.z(), 1e-8);
+    EXPECT_NEAR(detect_properties3.polEfficiency(), efficiency, 1e-8);
+    EXPECT_NEAR(detect_properties3.totalTransmission(), total_transmission, 1e-8);
+    EXPECT_NEAR(detect_properties3.polDirection().x(), unit_direction.x(), 1e-8);
+    EXPECT_NEAR(detect_properties3.polDirection().y(), unit_direction.y(), 1e-8);
+    EXPECT_NEAR(detect_properties3.polDirection().z(), unit_direction.z(), 1e-8);
 
     // non-axis direction
     direction = kvector_t(1.0, 2.0, 3.0);
@@ -247,13 +247,13 @@ TEST_F(RectangularDetectorTest, AnalyzerProperties)
     total_transmission = 0.5;
     unit_direction = direction.unit();
     detector.setAnalyzer(direction, efficiency, total_transmission);
-    const DetectionProperties& detect_properties4 = detector.detectionProperties();
+    const PolFilter& detect_properties4 = detector.detectionProperties();
 
-    EXPECT_NEAR(detect_properties4.analyzerEfficiency(), efficiency, 1e-8);
-    EXPECT_NEAR(detect_properties4.analyzerTotalTransmission(), total_transmission, 1e-8);
-    EXPECT_NEAR(detect_properties4.analyzerDirection().x(), unit_direction.x(), 1e-8);
-    EXPECT_NEAR(detect_properties4.analyzerDirection().y(), unit_direction.y(), 1e-8);
-    EXPECT_NEAR(detect_properties4.analyzerDirection().z(), unit_direction.z(), 1e-8);
+    EXPECT_NEAR(detect_properties4.polEfficiency(), efficiency, 1e-8);
+    EXPECT_NEAR(detect_properties4.totalTransmission(), total_transmission, 1e-8);
+    EXPECT_NEAR(detect_properties4.polDirection().x(), unit_direction.x(), 1e-8);
+    EXPECT_NEAR(detect_properties4.polDirection().y(), unit_direction.y(), 1e-8);
+    EXPECT_NEAR(detect_properties4.polDirection().z(), unit_direction.z(), 1e-8);
 
     // maximum efficiency and negative efficiency
     direction = kvector_t(0.0, -1.0, -1.0);
@@ -261,11 +261,11 @@ TEST_F(RectangularDetectorTest, AnalyzerProperties)
     total_transmission = 0.5;
     unit_direction = direction.unit();
     detector.setAnalyzer(direction, efficiency, total_transmission);
-    const DetectionProperties& detect_properties5 = detector.detectionProperties();
+    const PolFilter& detect_properties5 = detector.detectionProperties();
 
-    EXPECT_NEAR(detect_properties5.analyzerEfficiency(), efficiency, 1e-8);
-    EXPECT_NEAR(detect_properties5.analyzerTotalTransmission(), total_transmission, 1e-8);
-    EXPECT_NEAR(detect_properties5.analyzerDirection().x(), unit_direction.x(), 1e-8);
-    EXPECT_NEAR(detect_properties5.analyzerDirection().y(), unit_direction.y(), 1e-8);
-    EXPECT_NEAR(detect_properties5.analyzerDirection().z(), unit_direction.z(), 1e-8);
+    EXPECT_NEAR(detect_properties5.polEfficiency(), efficiency, 1e-8);
+    EXPECT_NEAR(detect_properties5.totalTransmission(), total_transmission, 1e-8);
+    EXPECT_NEAR(detect_properties5.polDirection().x(), unit_direction.x(), 1e-8);
+    EXPECT_NEAR(detect_properties5.polDirection().y(), unit_direction.y(), 1e-8);
+    EXPECT_NEAR(detect_properties5.polDirection().z(), unit_direction.z(), 1e-8);
 }
diff --git a/Tests/Unit/Core/SpecularSimulationTest.cpp b/Tests/Unit/Core/SpecularSimulationTest.cpp
index 4f7c6edd6a0..82b88ead1d8 100644
--- a/Tests/Unit/Core/SpecularSimulationTest.cpp
+++ b/Tests/Unit/Core/SpecularSimulationTest.cpp
@@ -114,9 +114,9 @@ TEST_F(SpecularSimulationTest, SetAngularScan)
     EXPECT_EQ(0.0, sim4.beam().direction().phi());
 
     EXPECT_EQ(sim4.beam().getBlochVector(), polarization);
-    EXPECT_EQ(sim4.detector().detectionProperties().analyzerDirection(), analyzer);
-    EXPECT_EQ(sim4.detector().detectionProperties().analyzerEfficiency(), 0.33);
-    EXPECT_EQ(sim4.detector().detectionProperties().analyzerTotalTransmission(), 0.22);
+    EXPECT_EQ(sim4.detector().detectionProperties().polDirection(), analyzer);
+    EXPECT_EQ(sim4.detector().detectionProperties().polEfficiency(), 0.33);
+    EXPECT_EQ(sim4.detector().detectionProperties().totalTransmission(), 0.22);
 }
 
 TEST_F(SpecularSimulationTest, SetQScan)
@@ -167,9 +167,9 @@ TEST_F(SpecularSimulationTest, SetQScan)
     EXPECT_EQ(0.0, sim3.beam().direction().phi());
 
     EXPECT_EQ(sim3.beam().getBlochVector(), polarization);
-    EXPECT_EQ(sim3.detector().detectionProperties().analyzerDirection(), analyzer);
-    EXPECT_EQ(sim3.detector().detectionProperties().analyzerEfficiency(), 0.33);
-    EXPECT_EQ(sim3.detector().detectionProperties().analyzerTotalTransmission(), 0.22);
+    EXPECT_EQ(sim3.detector().detectionProperties().polDirection(), analyzer);
+    EXPECT_EQ(sim3.detector().detectionProperties().polEfficiency(), 0.33);
+    EXPECT_EQ(sim3.detector().detectionProperties().totalTransmission(), 0.22);
 }
 
 TEST_F(SpecularSimulationTest, ConstructSimulation)
diff --git a/Tests/Unit/Device/SpecularDetector1DTest.cpp b/Tests/Unit/Device/SpecularDetector1DTest.cpp
index 36ab59f115e..09e252a46de 100644
--- a/Tests/Unit/Device/SpecularDetector1DTest.cpp
+++ b/Tests/Unit/Device/SpecularDetector1DTest.cpp
@@ -67,7 +67,7 @@ TEST_F(SpecularDetectorTest, Clone)
         detectorIndexes.push_back(it.detectorIndex());
     EXPECT_EQ(detectorIndexes, expectedDetectorIndexes);
 
-    EXPECT_EQ(clone->detectionProperties().analyzerDirection(), analyzer);
-    EXPECT_EQ(clone->detectionProperties().analyzerEfficiency(), 0.33);
-    EXPECT_EQ(clone->detectionProperties().analyzerTotalTransmission(), 0.22);
+    EXPECT_EQ(clone->detectionProperties().polDirection(), analyzer);
+    EXPECT_EQ(clone->detectionProperties().polEfficiency(), 0.33);
+    EXPECT_EQ(clone->detectionProperties().totalTransmission(), 0.22);
 }
diff --git a/Tests/Unit/Device/SphericalDetectorTest.cpp b/Tests/Unit/Device/SphericalDetectorTest.cpp
index 22e27de896e..c27619e336a 100644
--- a/Tests/Unit/Device/SphericalDetectorTest.cpp
+++ b/Tests/Unit/Device/SphericalDetectorTest.cpp
@@ -231,14 +231,14 @@ TEST_F(SphericalDetectorTest, AnalyzerProperties)
     direction = kvector_t(1.0, 0.0, 0.0);
     unit_direction = direction.unit();
     detector.setAnalyzer(direction, efficiency, total_transmission);
-    const DetectionProperties& detect_properties = detector.detectionProperties();
+    const PolFilter& detect_properties = detector.detectionProperties();
 
-    EXPECT_NEAR(detect_properties.analyzerEfficiency(), efficiency, 1e-8);
-    EXPECT_NEAR(detect_properties.analyzerTotalTransmission(), total_transmission, 1e-8);
+    EXPECT_NEAR(detect_properties.polEfficiency(), efficiency, 1e-8);
+    EXPECT_NEAR(detect_properties.totalTransmission(), total_transmission, 1e-8);
     // direction vector returned is zero vector because efficiency is zero
-    EXPECT_NEAR(detect_properties.analyzerDirection().x(), 0.0, 1e-8);
-    EXPECT_NEAR(detect_properties.analyzerDirection().y(), 0.0, 1e-8);
-    EXPECT_NEAR(detect_properties.analyzerDirection().z(), 0.0, 1e-8);
+    EXPECT_NEAR(detect_properties.polDirection().x(), 0.0, 1e-8);
+    EXPECT_NEAR(detect_properties.polDirection().y(), 0.0, 1e-8);
+    EXPECT_NEAR(detect_properties.polDirection().z(), 0.0, 1e-8);
 
     // intermediate efficiency
     direction = kvector_t(1.0, 0.0, 0.0);
@@ -246,13 +246,13 @@ TEST_F(SphericalDetectorTest, AnalyzerProperties)
     total_transmission = 0.6;
     unit_direction = direction.unit();
     detector.setAnalyzer(direction, efficiency, total_transmission);
-    const DetectionProperties& detect_properties2 = detector.detectionProperties();
+    const PolFilter& detect_properties2 = detector.detectionProperties();
 
-    EXPECT_NEAR(detect_properties2.analyzerEfficiency(), efficiency, 1e-8);
-    EXPECT_NEAR(detect_properties2.analyzerTotalTransmission(), total_transmission, 1e-8);
-    EXPECT_NEAR(detect_properties2.analyzerDirection().x(), unit_direction.x(), 1e-8);
-    EXPECT_NEAR(detect_properties2.analyzerDirection().y(), unit_direction.y(), 1e-8);
-    EXPECT_NEAR(detect_properties2.analyzerDirection().z(), unit_direction.z(), 1e-8);
+    EXPECT_NEAR(detect_properties2.polEfficiency(), efficiency, 1e-8);
+    EXPECT_NEAR(detect_properties2.totalTransmission(), total_transmission, 1e-8);
+    EXPECT_NEAR(detect_properties2.polDirection().x(), unit_direction.x(), 1e-8);
+    EXPECT_NEAR(detect_properties2.polDirection().y(), unit_direction.y(), 1e-8);
+    EXPECT_NEAR(detect_properties2.polDirection().z(), unit_direction.z(), 1e-8);
 
     // maximum efficiency
     direction = kvector_t(1.0, 0.0, 0.0);
@@ -260,13 +260,13 @@ TEST_F(SphericalDetectorTest, AnalyzerProperties)
     total_transmission = 0.5;
     unit_direction = direction.unit();
     detector.setAnalyzer(direction, efficiency, total_transmission);
-    const DetectionProperties& detect_properties3 = detector.detectionProperties();
+    const PolFilter& detect_properties3 = detector.detectionProperties();
 
-    EXPECT_NEAR(detect_properties3.analyzerEfficiency(), efficiency, 1e-8);
-    EXPECT_NEAR(detect_properties3.analyzerTotalTransmission(), total_transmission, 1e-8);
-    EXPECT_NEAR(detect_properties3.analyzerDirection().x(), unit_direction.x(), 1e-8);
-    EXPECT_NEAR(detect_properties3.analyzerDirection().y(), unit_direction.y(), 1e-8);
-    EXPECT_NEAR(detect_properties3.analyzerDirection().z(), unit_direction.z(), 1e-8);
+    EXPECT_NEAR(detect_properties3.polEfficiency(), efficiency, 1e-8);
+    EXPECT_NEAR(detect_properties3.totalTransmission(), total_transmission, 1e-8);
+    EXPECT_NEAR(detect_properties3.polDirection().x(), unit_direction.x(), 1e-8);
+    EXPECT_NEAR(detect_properties3.polDirection().y(), unit_direction.y(), 1e-8);
+    EXPECT_NEAR(detect_properties3.polDirection().z(), unit_direction.z(), 1e-8);
 
     // non-axis direction
     direction = kvector_t(1.0, 2.0, 3.0);
@@ -274,13 +274,13 @@ TEST_F(SphericalDetectorTest, AnalyzerProperties)
     total_transmission = 0.5;
     unit_direction = direction.unit();
     detector.setAnalyzer(direction, efficiency, total_transmission);
-    const DetectionProperties& detect_properties4 = detector.detectionProperties();
+    const PolFilter& detect_properties4 = detector.detectionProperties();
 
-    EXPECT_NEAR(detect_properties4.analyzerEfficiency(), efficiency, 1e-8);
-    EXPECT_NEAR(detect_properties4.analyzerTotalTransmission(), total_transmission, 1e-8);
-    EXPECT_NEAR(detect_properties4.analyzerDirection().x(), unit_direction.x(), 1e-8);
-    EXPECT_NEAR(detect_properties4.analyzerDirection().y(), unit_direction.y(), 1e-8);
-    EXPECT_NEAR(detect_properties4.analyzerDirection().z(), unit_direction.z(), 1e-8);
+    EXPECT_NEAR(detect_properties4.polEfficiency(), efficiency, 1e-8);
+    EXPECT_NEAR(detect_properties4.totalTransmission(), total_transmission, 1e-8);
+    EXPECT_NEAR(detect_properties4.polDirection().x(), unit_direction.x(), 1e-8);
+    EXPECT_NEAR(detect_properties4.polDirection().y(), unit_direction.y(), 1e-8);
+    EXPECT_NEAR(detect_properties4.polDirection().z(), unit_direction.z(), 1e-8);
 
     // maximum efficiency and negative efficiency
     direction = kvector_t(0.0, -1.0, -1.0);
@@ -288,11 +288,11 @@ TEST_F(SphericalDetectorTest, AnalyzerProperties)
     total_transmission = 0.5;
     unit_direction = direction.unit();
     detector.setAnalyzer(direction, efficiency, total_transmission);
-    const DetectionProperties& detect_properties5 = detector.detectionProperties();
+    const PolFilter& detect_properties5 = detector.detectionProperties();
 
-    EXPECT_NEAR(detect_properties5.analyzerEfficiency(), efficiency, 1e-8);
-    EXPECT_NEAR(detect_properties5.analyzerTotalTransmission(), total_transmission, 1e-8);
-    EXPECT_NEAR(detect_properties5.analyzerDirection().x(), unit_direction.x(), 1e-8);
-    EXPECT_NEAR(detect_properties5.analyzerDirection().y(), unit_direction.y(), 1e-8);
-    EXPECT_NEAR(detect_properties5.analyzerDirection().z(), unit_direction.z(), 1e-8);
+    EXPECT_NEAR(detect_properties5.polEfficiency(), efficiency, 1e-8);
+    EXPECT_NEAR(detect_properties5.totalTransmission(), total_transmission, 1e-8);
+    EXPECT_NEAR(detect_properties5.polDirection().x(), unit_direction.x(), 1e-8);
+    EXPECT_NEAR(detect_properties5.polDirection().y(), unit_direction.y(), 1e-8);
+    EXPECT_NEAR(detect_properties5.polDirection().z(), unit_direction.z(), 1e-8);
 }
diff --git a/auto/Wrap/libBornAgainDevice_wrap.cpp b/auto/Wrap/libBornAgainDevice_wrap.cpp
index 010b2c6024d..9e5419a6597 100644
--- a/auto/Wrap/libBornAgainDevice_wrap.cpp
+++ b/auto/Wrap/libBornAgainDevice_wrap.cpp
@@ -36310,7 +36310,7 @@ SWIGINTERN PyObject *_wrap_IDetector_detectionProperties(PyObject *SWIGUNUSEDPAR
   void *argp1 = 0 ;
   int res1 = 0 ;
   PyObject *swig_obj[1] ;
-  DetectionProperties *result = 0 ;
+  PolFilter *result = 0 ;
   
   if (!args) SWIG_fail;
   swig_obj[0] = args;
@@ -36319,7 +36319,7 @@ SWIGINTERN PyObject *_wrap_IDetector_detectionProperties(PyObject *SWIGUNUSEDPAR
     SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IDetector_detectionProperties" "', argument " "1"" of type '" "IDetector const *""'"); 
   }
   arg1 = reinterpret_cast< IDetector * >(argp1);
-  result = (DetectionProperties *) &((IDetector const *)arg1)->detectionProperties();
+  result = (PolFilter *) &((IDetector const *)arg1)->detectionProperties();
   resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_DetectionProperties, 0 |  0 );
   return resultobj;
 fail:
-- 
GitLab