DetectorGeometry: VerticalFlip() is non-virtual function to avoid confusion when it is called from the constructor

This commit is contained in:
2025-11-18 13:32:34 +01:00
parent 5c38b2bfe8
commit dc9bc18512
4 changed files with 4 additions and 7 deletions
+2 -4
View File
@@ -12,7 +12,7 @@
DetectorGeometryModular ParseStandardDetectorGeometry(const org::openapitools::server::model::Detector &j) {
auto s = j.getStandardGeometry();
return DetectorGeometryModular(s.getNmodules(), s.getModulesInRow(), s.getGapX(), s.getGapY(), false);
return DetectorGeometryModular(s.getNmodules(), s.getModulesInRow(), s.getGapX(), s.getGapY(), j.isMirrorY());
}
DetectorModuleGeometry::Direction Convert(const org::openapitools::server::model::Detector_module_direction& d) {
@@ -50,7 +50,7 @@ DetectorGeometryModular ParseCustomDetectorGeometry(const org::openapitools::ser
auto slow = Convert(iter.getSlowAxis());
modules.emplace_back(iter.getX0(), iter.getY0(), fast, slow);
}
return DetectorGeometryModular(modules, false);
return DetectorGeometryModular(modules, j.isMirrorY());
}
@@ -86,8 +86,6 @@ DetectorSetup ParseDetectorSetup(const org::openapitools::server::model::Detecto
}
DetectorGeometryModular geom = ParseDetectorGeometry(d);
if (d.isMirrorY())
geom.VerticalFlip();
DetectorSetup setup(geom, detector_type, d.getDescription(), d.getHostname());
-1
View File
@@ -21,7 +21,6 @@ public:
[[nodiscard]] virtual int64_t GetSlowDirectionStep(int64_t module_number) const = 0;
[[nodiscard]] virtual Coord GetFastDirection(int64_t module_number) const = 0;
[[nodiscard]] virtual Coord GetSlowDirection(int64_t module_number) const = 0;
virtual void VerticalFlip() = 0;
[[nodiscard]] virtual bool IsModularDetector() const = 0;
};
+1 -1
View File
@@ -21,7 +21,7 @@ public:
int64_t GetSlowDirectionStep(int64_t module_number) const override;
Coord GetFastDirection(int64_t module_number) const override;
Coord GetSlowDirection(int64_t module_number) const override;
void VerticalFlip() override;
void VerticalFlip();
bool IsModularDetector() const override;
};
+1 -1
View File
@@ -29,7 +29,7 @@ public:
int64_t GetSlowDirectionStep(int64_t module_number) const override;
Coord GetFastDirection(int64_t module_number) const override;
Coord GetSlowDirection(int64_t module_number) const override;
void VerticalFlip() override;
void VerticalFlip();
bool IsModularDetector() const override;
};