diff --git a/Base/Axis/Frame.cpp b/Base/Axis/Frame.cpp index 891e9d749aa47525b0139350be86ec6261327371..f2fa78f48752f6db941be639326ecc1beafd0eb6 100644 --- a/Base/Axis/Frame.cpp +++ b/Base/Axis/Frame.cpp @@ -23,6 +23,12 @@ Frame::Frame(std::vector<const Scale*>&& axes) { } +Frame::Frame(const Scale*&& ax0) + : m_axes(std::vector<const Scale*>{std::move(ax0)}) + , m_size(FrameUtil::product_size(m_axes.reference())) +{ +} + Frame* Frame::clone() const { return new Frame(m_axes.cloned_vector()); diff --git a/Base/Axis/Frame.h b/Base/Axis/Frame.h index d478bd1d5303e5d08d716be10ce55b7192995b0e..0be9095d6dd0ef0787c58817dac1f17ab72b2242 100644 --- a/Base/Axis/Frame.h +++ b/Base/Axis/Frame.h @@ -28,6 +28,7 @@ class Frame : public ICloneable { public: //! Constructor that takes ownership of supplied axes. Frame(std::vector<const Scale*>&& axes); + Frame(const Scale*&& ax0); virtual ~Frame(); diff --git a/Device/Histo/SimulationResult.cpp b/Device/Histo/SimulationResult.cpp index 114814eb428587ab4cec11bc3813b41f26d89e09..93c1d0277929ad44870be96ab05f0582742d61df 100644 --- a/Device/Histo/SimulationResult.cpp +++ b/Device/Histo/SimulationResult.cpp @@ -13,13 +13,13 @@ // ************************************************************************************************ #include "Device/Histo/SimulationResult.h" +#include "Base/Axis/Frame.h" #include "Base/Axis/Scale.h" #include "Base/Util/Assert.h" -#include "Device/Coord/ICoordSystem.h" SimulationResult::SimulationResult() = default; -SimulationResult::SimulationResult(const Datafield& data, const ICoordSystem* coords) +SimulationResult::SimulationResult(const Datafield& data, const Frame* coords) : Datafield(coords, data.flatVector(), data.errorSigmas()) { ASSERT(coords); @@ -53,9 +53,9 @@ std::string SimulationResult::name_of_axis(size_t i) const return converter().axis(i).axisName(); } -const ICoordSystem& SimulationResult::converter() const +const Frame& SimulationResult::converter() const { - const auto* coordsys = dynamic_cast<const ICoordSystem*>(m_frame.get()); + const auto* coordsys = dynamic_cast<const Frame*>(m_frame.get()); ASSERT(coordsys); return *coordsys; } diff --git a/Device/Histo/SimulationResult.h b/Device/Histo/SimulationResult.h index 568c1a4663225f5ceaba29f9842574f61a002a73..d2170680c2f0ad2edb63edaa0ad6d32530c23efb 100644 --- a/Device/Histo/SimulationResult.h +++ b/Device/Histo/SimulationResult.h @@ -18,14 +18,14 @@ #include "Device/Data/Datafield.h" #include <string> -class ICoordSystem; +class Frame; //! Wrapper around Datafield that also provides unit conversions. class SimulationResult : public Datafield { public: SimulationResult(); // required by Swig - SimulationResult(const Datafield& data, const ICoordSystem* coords); + SimulationResult(const Datafield& data, const Frame* coords); SimulationResult(const SimulationResult& other); SimulationResult(SimulationResult&& other) noexcept; @@ -56,7 +56,7 @@ public: #ifndef SWIG //! Returns underlying unit converter - const ICoordSystem& converter() const; + const Frame& converter() const; private: std::string m_title; diff --git a/GUI/Model/Data/DataItemUtil.cpp b/GUI/Model/Data/DataItemUtil.cpp index 98a1ef25637e3a30f5c688116360bb5f187bc668..ce1ce5e7434e8a860ed7118c7cb7958ad8ed0184 100644 --- a/GUI/Model/Data/DataItemUtil.cpp +++ b/GUI/Model/Data/DataItemUtil.cpp @@ -13,15 +13,14 @@ // ************************************************************************************************ #include "GUI/Model/Data/DataItemUtil.h" +#include "Base/Axis/Frame.h" #include "Base/Axis/Scale.h" #include "Base/Util/Assert.h" -#include "Device/Coord/ICoordSystem.h" #include "Device/Data/Datafield.h" #include "Device/Histo/SimulationResult.h" #include "GUI/Model/Data/DataItem.h" -void GUI::Model::DataItemUtil::updateAxesTitle(DataItem* intensityItem, - const ICoordSystem& converter) +void GUI::Model::DataItemUtil::updateAxesTitle(DataItem* intensityItem, const Frame& converter) { intensityItem->setXaxisTitle(QString::fromStdString(converter.axis(0).axisName())); if (converter.rank() > 1) @@ -31,7 +30,7 @@ void GUI::Model::DataItemUtil::updateAxesTitle(DataItem* intensityItem, //! Updates axes of Datafield in IntensityData item to correspond with axes units selection. //! InstrumentItem is used to get domain's detector map for given units. -void GUI::Model::DataItemUtil::updateDataAxes(DataItem* dataItem, const ICoordSystem& converter) +void GUI::Model::DataItemUtil::updateDataAxes(DataItem* dataItem, const Frame& converter) { ASSERT(dataItem); const Datafield* oldData = dataItem->c_field(); @@ -46,8 +45,7 @@ void GUI::Model::DataItemUtil::updateDataAxes(DataItem* dataItem, const ICoordSy updateAxesTitle(dataItem, converter); } -void GUI::Model::DataItemUtil::createDefaultDetectorMap(DataItem* dataItem, - const ICoordSystem& converter) +void GUI::Model::DataItemUtil::createDefaultDetectorMap(DataItem* dataItem, const Frame& converter) { auto output_data = std::make_unique<Datafield>(converter.clonedAxes()); dataItem->setDatafield(output_data.release()); diff --git a/GUI/Model/Data/DataItemUtil.h b/GUI/Model/Data/DataItemUtil.h index 8882ce2dc4d6a578c0ab258dc23f400560c251b8..45f018b360e6df2ea965795887ddb101c3fc2e33 100644 --- a/GUI/Model/Data/DataItemUtil.h +++ b/GUI/Model/Data/DataItemUtil.h @@ -19,7 +19,7 @@ #include "GUI/Model/Data/ComboProperty.h" class DataItem; -class ICoordSystem; +class Frame; class SimulationResult; //! Contains convenience methods to trasfer data from domain simulation to IntensityDataItem. @@ -28,13 +28,13 @@ class SimulationResult; namespace GUI::Model::DataItemUtil { //! Updates axes' titles -void updateAxesTitle(DataItem* intensityItem, const ICoordSystem& converter); +void updateAxesTitle(DataItem* intensityItem, const Frame& converter); //! Updates axes of Datafield in IntensityData item -void updateDataAxes(DataItem* dataItem, const ICoordSystem& converter); +void updateDataAxes(DataItem* dataItem, const Frame& converter); //! Creates zero-value intensity map with given coordinate system -void createDefaultDetectorMap(DataItem* dataItem, const ICoordSystem& converter); +void createDefaultDetectorMap(DataItem* dataItem, const Frame& converter); //! Sets simulation results into the DataItem void setResults(DataItem* dataItem, const SimulationResult& result); diff --git a/Sim/Fitting/SimDataPair.cpp b/Sim/Fitting/SimDataPair.cpp index b43bca5e78bb08f3c758c46e4be8dfda6310d73a..2dabee4ead3aa77798541bc7c2cb715a860f8b5d 100644 --- a/Sim/Fitting/SimDataPair.cpp +++ b/Sim/Fitting/SimDataPair.cpp @@ -52,7 +52,7 @@ bool haveSameSizes(const IDetector& detector, const Datafield& data) SimulationResult convertData(const ScatteringSimulation& simulation, const Datafield& data) { - const ICoordSystem* coordSystem = simulation.simCoordSystem(); + const Frame* coordSystem = simulation.simCoordSystem(); auto roi_data = std::make_unique<Datafield>(coordSystem->clonedAxes()); if (roi_data->frame().hasSameSizes(data.frame())) { @@ -123,7 +123,7 @@ void SimDataPair::execSimulation(const mumufit::Parameters& params) m_user_weights = std::make_unique<SimulationResult>(convertData(*sim2d, *m_raw_user_weights)); } else { - const ICoordSystem& converter = m_sim_data->converter(); + const Frame& converter = m_sim_data->converter(); m_exp_data = std::make_unique<SimulationResult>(*m_raw_data, converter.clone()); m_user_weights = std::make_unique<SimulationResult>(*m_raw_user_weights, converter.clone()); } @@ -132,7 +132,7 @@ void SimDataPair::execSimulation(const mumufit::Parameters& params) m_uncertainties = std::make_unique<SimulationResult>(convertData(*sim2d, *m_raw_uncertainties)); else { - const ICoordSystem& converter = m_sim_data->converter(); + const Frame& converter = m_sim_data->converter(); auto dummy_array = std::make_unique<Datafield>(converter.clonedAxes()); m_uncertainties = std::make_unique<SimulationResult>(*dummy_array, converter.clone()); } diff --git a/Sim/Scan/AlphaScan.cpp b/Sim/Scan/AlphaScan.cpp index dedac186f017e75413a63d268a49e8ae6aed79c4..a70c5802d8fbf95adb5cc376b51a71de4de3a4aa 100644 --- a/Sim/Scan/AlphaScan.cpp +++ b/Sim/Scan/AlphaScan.cpp @@ -145,11 +145,6 @@ size_t AlphaScan::nDistributionSamples() const return nResolSamples(m_lambda_distrib.get()) * nResolSamples(m_alpha_distrib.get()); } -CoordSystem1D* AlphaScan::scanCoordSystem() const -{ - return new AngularReflectometryCoords(wavelength(), *coordinateAxis()); -} - void AlphaScan::checkInitialization() { const std::vector<double> axis_values = m_axis->binCenters(); diff --git a/Sim/Scan/AlphaScan.h b/Sim/Scan/AlphaScan.h index 4a196483537d9f0af151f7870900802107ff8781..c1e442b191977733fd6f737b1608f481af0c3b25 100644 --- a/Sim/Scan/AlphaScan.h +++ b/Sim/Scan/AlphaScan.h @@ -44,8 +44,6 @@ public: size_t nDistributionSamples() const override; - CoordSystem1D* scanCoordSystem() const override; - // needed for export const IDistribution1D* wavelengthDistribution() const { diff --git a/Sim/Scan/IBeamScan.cpp b/Sim/Scan/IBeamScan.cpp index 1256cb5c46890571087881121b1f1ee91bac2e3a..d689f5c4aa019228d33736b01657c67b2275d861 100644 --- a/Sim/Scan/IBeamScan.cpp +++ b/Sim/Scan/IBeamScan.cpp @@ -13,6 +13,7 @@ // ************************************************************************************************ #include "Sim/Scan/IBeamScan.h" +#include "Base/Axis/Frame.h" #include "Base/Axis/Scale.h" #include "Base/Spin/SpinMatrix.h" #include "Device/Beam/IFootprint.h" @@ -91,3 +92,8 @@ SpinMatrix IBeamScan::analyzerMatrix() const { return m_polAnalyzer ? m_polAnalyzer->matrix() : SpinMatrix::One(); } + +Frame* IBeamScan::scanCoordSystem() const +{ + return new Frame(coordinateAxis()->clone()); +} diff --git a/Sim/Scan/IBeamScan.h b/Sim/Scan/IBeamScan.h index a2d11236d840fa693c550f0fa245cb929c152bef..ed93d787e46f44c6526085470f32f347c6b3667e 100644 --- a/Sim/Scan/IBeamScan.h +++ b/Sim/Scan/IBeamScan.h @@ -22,10 +22,10 @@ #include <memory> #include <vector> -class CoordSystem1D; -class Scale; +class Frame; class IFootprint; class PolFilter; +class Scale; class SpecularElement; class SpinMatrix; @@ -87,7 +87,7 @@ public: //! Returns the number of distribution samples virtual size_t nDistributionSamples() const = 0; - virtual CoordSystem1D* scanCoordSystem() const = 0; + Frame* scanCoordSystem() const; bool polarized() const; diff --git a/Sim/Scan/QzScan.cpp b/Sim/Scan/QzScan.cpp index ee9d5956b68c47e37a1b3c92874d0d579c4ff985..e024b3d7b45f33542cf3e3ff4bb9b2d1c2b83c37 100644 --- a/Sim/Scan/QzScan.cpp +++ b/Sim/Scan/QzScan.cpp @@ -117,11 +117,6 @@ size_t QzScan::nDistributionSamples() const return m_qz_distrib ? m_qz_distrib->nSamples() : 1; } -CoordSystem1D* QzScan::scanCoordSystem() const -{ - return new WavenumberReflectometryCoords(coordinateAxis()->clone()); -} - void QzScan::setRelativeQResolution(const IDistribution1D& distr, double rel_dev) { m_qz_distrib.reset(distr.clone()); diff --git a/Sim/Scan/QzScan.h b/Sim/Scan/QzScan.h index 521110f2ff3a306af04e580dbe65858f0d0c6298..40d98387789cbc4d510f6a04dd3469d9a33a8872 100644 --- a/Sim/Scan/QzScan.h +++ b/Sim/Scan/QzScan.h @@ -61,8 +61,6 @@ public: size_t nDistributionSamples() const override; - CoordSystem1D* scanCoordSystem() const override; - bool resolution_is_relative() const { return m_relative_resolution; diff --git a/Sim/Simulation/DepthprobeSimulation.cpp b/Sim/Simulation/DepthprobeSimulation.cpp index 9618c498402fc36e0fa6a97cf39b33b6e1a2610b..e6264c4a90130e2c3bda280a9e06f0ab97bde7de 100644 --- a/Sim/Simulation/DepthprobeSimulation.cpp +++ b/Sim/Simulation/DepthprobeSimulation.cpp @@ -52,7 +52,7 @@ DepthprobeSimulation::DepthprobeSimulation(const IBeamScan& scan, const MultiLay DepthprobeSimulation::~DepthprobeSimulation() = default; -const ICoordSystem* DepthprobeSimulation::simCoordSystem() const +const Frame* DepthprobeSimulation::simCoordSystem() const { std::vector<const Scale*> axes({m_scan->coordinateAxis()->clone(), m_z_axis->clone()}); return new DepthprobeCoords(std::move(axes), (2 * pi) / m_scan->wavelength()); diff --git a/Sim/Simulation/DepthprobeSimulation.h b/Sim/Simulation/DepthprobeSimulation.h index aa58a60bb0ea9fd8ad23a14cf08331911b5e798b..3364b610ed5c683831cf723b9698d38fdb05d33c 100644 --- a/Sim/Simulation/DepthprobeSimulation.h +++ b/Sim/Simulation/DepthprobeSimulation.h @@ -51,7 +51,7 @@ public: return m_scan.get(); } - const ICoordSystem* simCoordSystem() const override; + const Frame* simCoordSystem() const override; std::vector<const INode*> nodeChildren() const override; diff --git a/Sim/Simulation/ISimulation.h b/Sim/Simulation/ISimulation.h index 567f0ccb608f14b613b0563be7d9bf339d3f0b3b..7ec3d2355d6913895111adab7d835041bc185287 100644 --- a/Sim/Simulation/ISimulation.h +++ b/Sim/Simulation/ISimulation.h @@ -21,9 +21,9 @@ #include <heinz/Vectors3D.h> class DistributionHandler; +class Frame; class IBackground; class IComputation; -class ICoordSystem; class MultiLayer; class ProgressHandler; class ReSample; @@ -71,7 +71,7 @@ public: const IBackground* background() const; const std::vector<ParameterDistribution>& paramDistributions() const; - virtual const ICoordSystem* simCoordSystem() const = 0; + virtual const Frame* simCoordSystem() const = 0; const SimulationOptions& options() const; diff --git a/Sim/Simulation/OffspecSimulation.cpp b/Sim/Simulation/OffspecSimulation.cpp index a744f7e8ba640bdb36f23a219f64a65f626be4d0..468f8e877ce41eb7eee6c7d6d1299eb42045fd37 100644 --- a/Sim/Simulation/OffspecSimulation.cpp +++ b/Sim/Simulation/OffspecSimulation.cpp @@ -55,7 +55,7 @@ void OffspecSimulation::prepareSimulation() m_pixels.emplace_back(m_detector->createPixel(i)); } -const ICoordSystem* OffspecSimulation::simCoordSystem() const +const Frame* OffspecSimulation::simCoordSystem() const { return new OffspecCoords( std::vector<const Scale*>{m_scan->coordinateAxis()->clone(), m_detector->axis(1).clone()}); diff --git a/Sim/Simulation/OffspecSimulation.h b/Sim/Simulation/OffspecSimulation.h index df59a22297d909f27a28a07887064920f5fdfd0f..3ae6b4693ee14f00261ebfcd164356d8c649c6d4 100644 --- a/Sim/Simulation/OffspecSimulation.h +++ b/Sim/Simulation/OffspecSimulation.h @@ -37,7 +37,7 @@ public: std::string className() const final { return "OffspecSimulation"; } #ifndef SWIG - const ICoordSystem* simCoordSystem() const override; + const Frame* simCoordSystem() const override; std::vector<const INode*> nodeChildren() const override; diff --git a/Sim/Simulation/ScatteringSimulation.cpp b/Sim/Simulation/ScatteringSimulation.cpp index a21698b814da81a5de53af75ae04920ac13df69f..87f1f99e631b76f8633af2bff4d4727d59db4052 100644 --- a/Sim/Simulation/ScatteringSimulation.cpp +++ b/Sim/Simulation/ScatteringSimulation.cpp @@ -40,7 +40,7 @@ ScatteringSimulation::ScatteringSimulation(const Beam& beam, const MultiLayer& s ScatteringSimulation::~ScatteringSimulation() = default; -const ICoordSystem* ScatteringSimulation::simCoordSystem() const +const Frame* ScatteringSimulation::simCoordSystem() const { return m_detector->scatteringCoords(beam()); } diff --git a/Sim/Simulation/ScatteringSimulation.h b/Sim/Simulation/ScatteringSimulation.h index bb0a58280864569b3c26b0931eb33d58286cab3b..20e526764e8e969011ecbaa444f6748ae142130a 100644 --- a/Sim/Simulation/ScatteringSimulation.h +++ b/Sim/Simulation/ScatteringSimulation.h @@ -39,7 +39,7 @@ public: IDetector& detector() { return *m_detector; } #ifndef SWIG - const ICoordSystem* simCoordSystem() const override; + const Frame* simCoordSystem() const override; const Beam& beam() const { diff --git a/Sim/Simulation/SpecularSimulation.cpp b/Sim/Simulation/SpecularSimulation.cpp index 079781feb6ec98c8e00b2cf2a1cbb182a807e76c..765207c5332bcef0d0bc0deab2bfad5926a10636 100644 --- a/Sim/Simulation/SpecularSimulation.cpp +++ b/Sim/Simulation/SpecularSimulation.cpp @@ -68,7 +68,7 @@ SpecularSimulation::SpecularSimulation(const IBeamScan& scan, const MultiLayer& SpecularSimulation::~SpecularSimulation() = default; -const ICoordSystem* SpecularSimulation::simCoordSystem() const +const Frame* SpecularSimulation::simCoordSystem() const { return m_scan->scanCoordSystem(); } diff --git a/Sim/Simulation/SpecularSimulation.h b/Sim/Simulation/SpecularSimulation.h index 9332e6849a7396cbfc63b4255c2a94ce26adacd3..2c2ab6b3cd9e5b845e8ea99f85b4003deb0894f3 100644 --- a/Sim/Simulation/SpecularSimulation.h +++ b/Sim/Simulation/SpecularSimulation.h @@ -33,7 +33,7 @@ public: std::string className() const final { return "SpecularSimulation"; } #ifndef SWIG - const ICoordSystem* simCoordSystem() const override; + const Frame* simCoordSystem() const override; //! Returns internal data handler const IBeamScan* scan() const { diff --git a/auto/Wrap/libBornAgainBase.py b/auto/Wrap/libBornAgainBase.py index 27d071da8f64052687d99a6dfe3daac16faab7f8..75d4f5987daf5e7670a74d035065157d028ddd98 100644 --- a/auto/Wrap/libBornAgainBase.py +++ b/auto/Wrap/libBornAgainBase.py @@ -1950,9 +1950,12 @@ class Frame(ICloneable): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr - def __init__(self, axes): - r"""__init__(Frame self, std::vector< Scale const *,std::allocator< Scale const * > > && axes) -> Frame""" - _libBornAgainBase.Frame_swiginit(self, _libBornAgainBase.new_Frame(axes)) + def __init__(self, *args): + r""" + __init__(Frame self, std::vector< Scale const *,std::allocator< Scale const * > > && axes) -> Frame + __init__(Frame self, Scale const *&& ax0) -> Frame + """ + _libBornAgainBase.Frame_swiginit(self, _libBornAgainBase.new_Frame(*args)) __swig_destroy__ = _libBornAgainBase.delete_Frame def clone(self): diff --git a/auto/Wrap/libBornAgainBase_wrap.cpp b/auto/Wrap/libBornAgainBase_wrap.cpp index e9cdd8146ce1d480ab5865536e04b16918ee4952..abfa9936234c8ddfe00bf33fb43a83e0de005d93 100644 --- a/auto/Wrap/libBornAgainBase_wrap.cpp +++ b/auto/Wrap/libBornAgainBase_wrap.cpp @@ -3405,44 +3405,45 @@ namespace Swig { #define SWIGTYPE_p_long_long swig_types[16] #define SWIGTYPE_p_mapped_type swig_types[17] #define SWIGTYPE_p_p_PyObject swig_types[18] -#define SWIGTYPE_p_second_type swig_types[19] -#define SWIGTYPE_p_short swig_types[20] -#define SWIGTYPE_p_signed_char swig_types[21] -#define SWIGTYPE_p_size_type swig_types[22] -#define SWIGTYPE_p_std__allocatorT_double_t swig_types[23] -#define SWIGTYPE_p_std__allocatorT_int_t swig_types[24] -#define SWIGTYPE_p_std__allocatorT_std__complexT_double_t_t swig_types[25] -#define SWIGTYPE_p_std__allocatorT_std__pairT_double_double_t_t swig_types[26] -#define SWIGTYPE_p_std__allocatorT_std__pairT_std__string_const_double_t_t swig_types[27] -#define SWIGTYPE_p_std__allocatorT_std__string_t swig_types[28] -#define SWIGTYPE_p_std__allocatorT_std__vectorT_double_std__allocatorT_double_t_t_t swig_types[29] -#define SWIGTYPE_p_std__allocatorT_std__vectorT_int_std__allocatorT_int_t_t_t swig_types[30] -#define SWIGTYPE_p_std__allocatorT_unsigned_long_t swig_types[31] -#define SWIGTYPE_p_std__complexT_double_t swig_types[32] -#define SWIGTYPE_p_std__invalid_argument swig_types[33] -#define SWIGTYPE_p_std__lessT_std__string_t swig_types[34] -#define SWIGTYPE_p_std__mapT_std__string_double_std__lessT_std__string_t_std__allocatorT_std__pairT_std__string_const_double_t_t_t swig_types[35] -#define SWIGTYPE_p_std__optionalT_Bin1D_t swig_types[36] -#define SWIGTYPE_p_std__pairT_double_double_t swig_types[37] -#define SWIGTYPE_p_std__vectorT_Bin1D_std__allocatorT_Bin1D_t_t swig_types[38] -#define SWIGTYPE_p_std__vectorT_Scale_const_p_std__allocatorT_Scale_const_p_t_t swig_types[39] -#define SWIGTYPE_p_std__vectorT_double_std__allocatorT_double_t_t swig_types[40] -#define SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t swig_types[41] -#define SWIGTYPE_p_std__vectorT_std__complexT_double_t_std__allocatorT_std__complexT_double_t_t_t swig_types[42] -#define SWIGTYPE_p_std__vectorT_std__pairT_double_double_t_std__allocatorT_std__pairT_double_double_t_t_t swig_types[43] -#define SWIGTYPE_p_std__vectorT_std__string_std__allocatorT_std__string_t_t swig_types[44] -#define SWIGTYPE_p_std__vectorT_std__vectorT_double_std__allocatorT_double_t_t_std__allocatorT_std__vectorT_double_std__allocatorT_double_t_t_t_t swig_types[45] -#define SWIGTYPE_p_std__vectorT_std__vectorT_int_std__allocatorT_int_t_t_std__allocatorT_std__vectorT_int_std__allocatorT_int_t_t_t_t swig_types[46] -#define SWIGTYPE_p_std__vectorT_unsigned_int_std__allocatorT_unsigned_int_t_t swig_types[47] -#define SWIGTYPE_p_std__vectorT_unsigned_long_std__allocatorT_unsigned_long_t_t swig_types[48] -#define SWIGTYPE_p_swig__SwigPyIterator swig_types[49] -#define SWIGTYPE_p_unsigned_char swig_types[50] -#define SWIGTYPE_p_unsigned_int swig_types[51] -#define SWIGTYPE_p_unsigned_long_long swig_types[52] -#define SWIGTYPE_p_unsigned_short swig_types[53] -#define SWIGTYPE_p_value_type swig_types[54] -static swig_type_info *swig_types[56]; -static swig_module_info swig_module = {swig_types, 55, 0, 0, 0, 0}; +#define SWIGTYPE_p_p_Scale swig_types[19] +#define SWIGTYPE_p_second_type swig_types[20] +#define SWIGTYPE_p_short swig_types[21] +#define SWIGTYPE_p_signed_char swig_types[22] +#define SWIGTYPE_p_size_type swig_types[23] +#define SWIGTYPE_p_std__allocatorT_double_t swig_types[24] +#define SWIGTYPE_p_std__allocatorT_int_t swig_types[25] +#define SWIGTYPE_p_std__allocatorT_std__complexT_double_t_t swig_types[26] +#define SWIGTYPE_p_std__allocatorT_std__pairT_double_double_t_t swig_types[27] +#define SWIGTYPE_p_std__allocatorT_std__pairT_std__string_const_double_t_t swig_types[28] +#define SWIGTYPE_p_std__allocatorT_std__string_t swig_types[29] +#define SWIGTYPE_p_std__allocatorT_std__vectorT_double_std__allocatorT_double_t_t_t swig_types[30] +#define SWIGTYPE_p_std__allocatorT_std__vectorT_int_std__allocatorT_int_t_t_t swig_types[31] +#define SWIGTYPE_p_std__allocatorT_unsigned_long_t swig_types[32] +#define SWIGTYPE_p_std__complexT_double_t swig_types[33] +#define SWIGTYPE_p_std__invalid_argument swig_types[34] +#define SWIGTYPE_p_std__lessT_std__string_t swig_types[35] +#define SWIGTYPE_p_std__mapT_std__string_double_std__lessT_std__string_t_std__allocatorT_std__pairT_std__string_const_double_t_t_t swig_types[36] +#define SWIGTYPE_p_std__optionalT_Bin1D_t swig_types[37] +#define SWIGTYPE_p_std__pairT_double_double_t swig_types[38] +#define SWIGTYPE_p_std__vectorT_Bin1D_std__allocatorT_Bin1D_t_t swig_types[39] +#define SWIGTYPE_p_std__vectorT_Scale_const_p_std__allocatorT_Scale_const_p_t_t swig_types[40] +#define SWIGTYPE_p_std__vectorT_double_std__allocatorT_double_t_t swig_types[41] +#define SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t swig_types[42] +#define SWIGTYPE_p_std__vectorT_std__complexT_double_t_std__allocatorT_std__complexT_double_t_t_t swig_types[43] +#define SWIGTYPE_p_std__vectorT_std__pairT_double_double_t_std__allocatorT_std__pairT_double_double_t_t_t swig_types[44] +#define SWIGTYPE_p_std__vectorT_std__string_std__allocatorT_std__string_t_t swig_types[45] +#define SWIGTYPE_p_std__vectorT_std__vectorT_double_std__allocatorT_double_t_t_std__allocatorT_std__vectorT_double_std__allocatorT_double_t_t_t_t swig_types[46] +#define SWIGTYPE_p_std__vectorT_std__vectorT_int_std__allocatorT_int_t_t_std__allocatorT_std__vectorT_int_std__allocatorT_int_t_t_t_t swig_types[47] +#define SWIGTYPE_p_std__vectorT_unsigned_int_std__allocatorT_unsigned_int_t_t swig_types[48] +#define SWIGTYPE_p_std__vectorT_unsigned_long_std__allocatorT_unsigned_long_t_t swig_types[49] +#define SWIGTYPE_p_swig__SwigPyIterator swig_types[50] +#define SWIGTYPE_p_unsigned_char swig_types[51] +#define SWIGTYPE_p_unsigned_int swig_types[52] +#define SWIGTYPE_p_unsigned_long_long swig_types[53] +#define SWIGTYPE_p_unsigned_short swig_types[54] +#define SWIGTYPE_p_value_type swig_types[55] +static swig_type_info *swig_types[57]; +static swig_module_info swig_module = {swig_types, 56, 0, 0, 0, 0}; #define SWIG_TypeQuery(name) SWIG_TypeQueryModule(&swig_module, &swig_module, name) #define SWIG_MangledTypeQuery(name) SWIG_MangledTypeQueryModule(&swig_module, &swig_module, name) @@ -26039,17 +26040,15 @@ fail: } -SWIGINTERN PyObject *_wrap_new_Frame(PyObject *self, PyObject *args) { +SWIGINTERN PyObject *_wrap_new_Frame__SWIG_0(PyObject *self, Py_ssize_t nobjs, PyObject **swig_obj) { PyObject *resultobj = 0; std::vector< Scale const *,std::allocator< Scale const * > > *arg1 = 0 ; void *argp1 = 0 ; int res1 = 0 ; std::unique_ptr< std::vector< Scale const *,std::allocator< Scale const * > > > rvrdeleter1 ; - PyObject *swig_obj[1] ; Frame *result = 0 ; - if (!args) SWIG_fail; - swig_obj[0] = args; + if ((nobjs < 1) || (nobjs > 1)) SWIG_fail; res1 = SWIG_ConvertPtr(swig_obj[0], &argp1, SWIGTYPE_p_std__vectorT_Scale_const_p_std__allocatorT_Scale_const_p_t_t, SWIG_POINTER_RELEASE | 0 ); if (!SWIG_IsOK(res1)) { if (res1 == SWIG_ERROR_RELEASE_NOT_OWNED) { @@ -26071,6 +26070,72 @@ fail: } +SWIGINTERN PyObject *_wrap_new_Frame__SWIG_1(PyObject *self, Py_ssize_t nobjs, PyObject **swig_obj) { + PyObject *resultobj = 0; + Scale **arg1 = 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + std::unique_ptr< Scale * > rvrdeleter1 ; + Frame *result = 0 ; + + if ((nobjs < 1) || (nobjs > 1)) SWIG_fail; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1, SWIGTYPE_p_p_Scale, SWIG_POINTER_RELEASE | 0 ); + if (!SWIG_IsOK(res1)) { + if (res1 == SWIG_ERROR_RELEASE_NOT_OWNED) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_Frame" "', cannot release ownership as memory is not owned for argument " "1"" of type '" "Scale const *&&""'"); + } else { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_Frame" "', argument " "1"" of type '" "Scale const *&&""'"); + } + } + if (!argp1) { + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_Frame" "', argument " "1"" of type '" "Scale const *&&""'"); + } + arg1 = reinterpret_cast< Scale ** >(argp1); + rvrdeleter1.reset(arg1); + result = (Frame *)new Frame((Scale const *&&)*arg1); + resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_Frame, SWIG_POINTER_NEW | 0 ); + return resultobj; +fail: + return NULL; +} + + +SWIGINTERN PyObject *_wrap_new_Frame(PyObject *self, PyObject *args) { + Py_ssize_t argc; + PyObject *argv[2] = { + 0 + }; + + if (!(argc = SWIG_Python_UnpackTuple(args, "new_Frame", 0, 1, argv))) SWIG_fail; + --argc; + if (argc == 1) { + int _v = 0; + void *vptr = 0; + int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_std__vectorT_Scale_const_p_std__allocatorT_Scale_const_p_t_t, SWIG_POINTER_NO_NULL); + _v = SWIG_CheckState(res); + if (_v) { + return _wrap_new_Frame__SWIG_0(self, argc, argv); + } + } + if (argc == 1) { + int _v = 0; + void *vptr = 0; + int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_p_Scale, SWIG_POINTER_NO_NULL); + _v = SWIG_CheckState(res); + if (_v) { + return _wrap_new_Frame__SWIG_1(self, argc, argv); + } + } + +fail: + SWIG_Python_RaiseOrModifyTypeError("Wrong number or type of arguments for overloaded function 'new_Frame'.\n" + " Possible C/C++ prototypes are:\n" + " Frame::Frame(std::vector< Scale const *,std::allocator< Scale const * > > &&)\n" + " Frame::Frame(Scale const *&&)\n"); + return 0; +} + + SWIGINTERN PyObject *_wrap_delete_Frame(PyObject *self, PyObject *args) { PyObject *resultobj = 0; Frame *arg1 = (Frame *) 0 ; @@ -28520,7 +28585,10 @@ static PyMethodDef SwigMethods[] = { { "Scale_swiginit", Scale_swiginit, METH_VARARGS, NULL}, { "ListScan", _wrap_ListScan, METH_VARARGS, "ListScan(std::string const & name, vdouble1d_t points) -> Scale"}, { "EquiDivision", _wrap_EquiDivision, METH_VARARGS, "EquiDivision(std::string const & name, size_t nbins, double start, double end) -> Scale"}, - { "new_Frame", _wrap_new_Frame, METH_O, "new_Frame(std::vector< Scale const *,std::allocator< Scale const * > > && axes) -> Frame"}, + { "new_Frame", _wrap_new_Frame, METH_VARARGS, "\n" + "Frame(std::vector< Scale const *,std::allocator< Scale const * > > && axes)\n" + "new_Frame(Scale const *&& ax0) -> Frame\n" + ""}, { "delete_Frame", _wrap_delete_Frame, METH_O, "delete_Frame(Frame self)"}, { "Frame_clone", _wrap_Frame_clone, METH_O, "Frame_clone(Frame self) -> Frame"}, { "Frame_rank", _wrap_Frame_rank, METH_O, "Frame_rank(Frame self) -> size_t"}, @@ -28621,6 +28689,7 @@ static swig_type_info _swigt__p_key_type = {"_p_key_type", "key_type *", 0, 0, ( static swig_type_info _swigt__p_long_long = {"_p_long_long", "int64_t *|int_fast64_t *|int_least64_t *|intmax_t *|long long *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_mapped_type = {"_p_mapped_type", "mapped_type *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_p_PyObject = {"_p_p_PyObject", "PyObject **", 0, 0, (void*)0, 0}; +static swig_type_info _swigt__p_p_Scale = {"_p_p_Scale", "Scale **", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_second_type = {"_p_second_type", "second_type *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_short = {"_p_short", "int16_t *|int_least16_t *|short *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_signed_char = {"_p_signed_char", "int8_t *|int_fast8_t *|int_least8_t *|signed char *", 0, 0, (void*)0, 0}; @@ -28678,6 +28747,7 @@ static swig_type_info *swig_type_initial[] = { &_swigt__p_long_long, &_swigt__p_mapped_type, &_swigt__p_p_PyObject, + &_swigt__p_p_Scale, &_swigt__p_second_type, &_swigt__p_short, &_swigt__p_signed_char, @@ -28735,6 +28805,7 @@ static swig_cast_info _swigc__p_key_type[] = { {&_swigt__p_key_type, 0, 0, 0},{ static swig_cast_info _swigc__p_long_long[] = { {&_swigt__p_long_long, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_mapped_type[] = { {&_swigt__p_mapped_type, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_p_PyObject[] = { {&_swigt__p_p_PyObject, 0, 0, 0},{0, 0, 0, 0}}; +static swig_cast_info _swigc__p_p_Scale[] = { {&_swigt__p_p_Scale, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_second_type[] = { {&_swigt__p_second_type, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_short[] = { {&_swigt__p_short, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_signed_char[] = { {&_swigt__p_signed_char, 0, 0, 0},{0, 0, 0, 0}}; @@ -28792,6 +28863,7 @@ static swig_cast_info *swig_cast_initial[] = { _swigc__p_long_long, _swigc__p_mapped_type, _swigc__p_p_PyObject, + _swigc__p_p_Scale, _swigc__p_second_type, _swigc__p_short, _swigc__p_signed_char, diff --git a/auto/Wrap/libBornAgainDevice.py b/auto/Wrap/libBornAgainDevice.py index 66d0da65a36e9881fd7940bc241eeb493a2563c0..ffa2ad3fd9c9182fdd74cf1425394b482057d610 100644 --- a/auto/Wrap/libBornAgainDevice.py +++ b/auto/Wrap/libBornAgainDevice.py @@ -3044,7 +3044,7 @@ class SimulationResult(Datafield): def __init__(self, *args): r""" __init__(SimulationResult self) -> SimulationResult - __init__(SimulationResult self, Datafield data, ICoordSystem const * coords) -> SimulationResult + __init__(SimulationResult self, Datafield data, Frame coords) -> SimulationResult __init__(SimulationResult self, SimulationResult other) -> SimulationResult __init__(SimulationResult self, SimulationResult other) -> SimulationResult """ diff --git a/auto/Wrap/libBornAgainDevice_wrap.cpp b/auto/Wrap/libBornAgainDevice_wrap.cpp index f4e230f482ac06eef36f9846d37fcc9b38b061f6..d367aba0d9c5e9729d32b6f8c9d942ba6a7948ef 100644 --- a/auto/Wrap/libBornAgainDevice_wrap.cpp +++ b/auto/Wrap/libBornAgainDevice_wrap.cpp @@ -3398,88 +3398,87 @@ namespace Swig { #define SWIGTYPE_p_Frame swig_types[9] #define SWIGTYPE_p_HorizontalLine swig_types[10] #define SWIGTYPE_p_ICloneable swig_types[11] -#define SWIGTYPE_p_ICoordSystem swig_types[12] -#define SWIGTYPE_p_IDetector swig_types[13] -#define SWIGTYPE_p_IDetectorResolution swig_types[14] -#define SWIGTYPE_p_IFootprint swig_types[15] -#define SWIGTYPE_p_INode swig_types[16] -#define SWIGTYPE_p_IPixel swig_types[17] -#define SWIGTYPE_p_IResolutionFunction2D swig_types[18] -#define SWIGTYPE_p_IShape2D swig_types[19] -#define SWIGTYPE_p_ImportSettings1D swig_types[20] -#define SWIGTYPE_p_Line swig_types[21] -#define SWIGTYPE_p_MaskPattern swig_types[22] -#define SWIGTYPE_p_OffspecDetector swig_types[23] -#define SWIGTYPE_p_PolFilter swig_types[24] -#define SWIGTYPE_p_Polygon swig_types[25] -#define SWIGTYPE_p_PolygonPrivate swig_types[26] -#define SWIGTYPE_p_Rectangle swig_types[27] -#define SWIGTYPE_p_RectangularDetector swig_types[28] -#define SWIGTYPE_p_RectangularPixel swig_types[29] -#define SWIGTYPE_p_ResolutionFunction2DGaussian swig_types[30] -#define SWIGTYPE_p_Rotation3DT_double_t swig_types[31] -#define SWIGTYPE_p_Scale swig_types[32] -#define SWIGTYPE_p_SimulationResult swig_types[33] -#define SWIGTYPE_p_SphericalDetector swig_types[34] -#define SWIGTYPE_p_Vec3T_double_t swig_types[35] -#define SWIGTYPE_p_Vec3T_int_t swig_types[36] -#define SWIGTYPE_p_Vec3T_std__complexT_double_t_t swig_types[37] -#define SWIGTYPE_p_VerticalLine swig_types[38] -#define SWIGTYPE_p_allocator_type swig_types[39] -#define SWIGTYPE_p_char swig_types[40] -#define SWIGTYPE_p_const_iterator swig_types[41] -#define SWIGTYPE_p_corr_matrix_t swig_types[42] -#define SWIGTYPE_p_difference_type swig_types[43] -#define SWIGTYPE_p_first_type swig_types[44] -#define SWIGTYPE_p_int swig_types[45] -#define SWIGTYPE_p_iterator swig_types[46] -#define SWIGTYPE_p_key_type swig_types[47] -#define SWIGTYPE_p_long_long swig_types[48] -#define SWIGTYPE_p_mapped_type swig_types[49] -#define SWIGTYPE_p_p_PyObject swig_types[50] -#define SWIGTYPE_p_parameters_t swig_types[51] -#define SWIGTYPE_p_second_type swig_types[52] -#define SWIGTYPE_p_short swig_types[53] -#define SWIGTYPE_p_signed_char swig_types[54] -#define SWIGTYPE_p_size_type swig_types[55] -#define SWIGTYPE_p_std__allocatorT_Vec3T_double_t_t swig_types[56] -#define SWIGTYPE_p_std__allocatorT_double_t swig_types[57] -#define SWIGTYPE_p_std__allocatorT_int_t swig_types[58] -#define SWIGTYPE_p_std__allocatorT_std__complexT_double_t_t swig_types[59] -#define SWIGTYPE_p_std__allocatorT_std__pairT_double_double_t_t swig_types[60] -#define SWIGTYPE_p_std__allocatorT_std__pairT_std__string_const_double_t_t swig_types[61] -#define SWIGTYPE_p_std__allocatorT_std__string_t swig_types[62] -#define SWIGTYPE_p_std__allocatorT_std__vectorT_double_std__allocatorT_double_t_t_t swig_types[63] -#define SWIGTYPE_p_std__allocatorT_std__vectorT_int_std__allocatorT_int_t_t_t swig_types[64] -#define SWIGTYPE_p_std__allocatorT_unsigned_long_t swig_types[65] -#define SWIGTYPE_p_std__arrayT_std__shared_ptrT_Scale_t_2_t swig_types[66] -#define SWIGTYPE_p_std__complexT_double_t swig_types[67] -#define SWIGTYPE_p_std__functionT_void_fSimulationAreaIterator_const_RF_t swig_types[68] -#define SWIGTYPE_p_std__invalid_argument swig_types[69] -#define SWIGTYPE_p_std__lessT_std__string_t swig_types[70] -#define SWIGTYPE_p_std__mapT_std__string_double_std__lessT_std__string_t_std__allocatorT_std__pairT_std__string_const_double_t_t_t swig_types[71] -#define SWIGTYPE_p_std__pairT_double_double_t swig_types[72] -#define SWIGTYPE_p_std__vectorT_INode_const_p_std__allocatorT_INode_const_p_t_t swig_types[73] -#define SWIGTYPE_p_std__vectorT_ParaMeta_std__allocatorT_ParaMeta_t_t swig_types[74] -#define SWIGTYPE_p_std__vectorT_Scale_const_p_std__allocatorT_Scale_const_p_t_t swig_types[75] -#define SWIGTYPE_p_std__vectorT_Vec3T_double_t_std__allocatorT_Vec3T_double_t_t_t swig_types[76] -#define SWIGTYPE_p_std__vectorT_double_std__allocatorT_double_t_t swig_types[77] -#define SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t swig_types[78] -#define SWIGTYPE_p_std__vectorT_size_t_std__allocatorT_size_t_t_t swig_types[79] -#define SWIGTYPE_p_std__vectorT_std__complexT_double_t_std__allocatorT_std__complexT_double_t_t_t swig_types[80] -#define SWIGTYPE_p_std__vectorT_std__pairT_double_double_t_std__allocatorT_std__pairT_double_double_t_t_t swig_types[81] -#define SWIGTYPE_p_std__vectorT_std__string_std__allocatorT_std__string_t_t swig_types[82] -#define SWIGTYPE_p_std__vectorT_std__vectorT_double_std__allocatorT_double_t_t_std__allocatorT_std__vectorT_double_std__allocatorT_double_t_t_t_t swig_types[83] -#define SWIGTYPE_p_std__vectorT_std__vectorT_int_std__allocatorT_int_t_t_std__allocatorT_std__vectorT_int_std__allocatorT_int_t_t_t_t swig_types[84] -#define SWIGTYPE_p_std__vectorT_unsigned_long_std__allocatorT_unsigned_long_t_t swig_types[85] -#define SWIGTYPE_p_swig__SwigPyIterator swig_types[86] -#define SWIGTYPE_p_unsigned_char swig_types[87] -#define SWIGTYPE_p_unsigned_int swig_types[88] -#define SWIGTYPE_p_unsigned_long_long swig_types[89] -#define SWIGTYPE_p_unsigned_short swig_types[90] -#define SWIGTYPE_p_value_type swig_types[91] -static swig_type_info *swig_types[93]; -static swig_module_info swig_module = {swig_types, 92, 0, 0, 0, 0}; +#define SWIGTYPE_p_IDetector swig_types[12] +#define SWIGTYPE_p_IDetectorResolution swig_types[13] +#define SWIGTYPE_p_IFootprint swig_types[14] +#define SWIGTYPE_p_INode swig_types[15] +#define SWIGTYPE_p_IPixel swig_types[16] +#define SWIGTYPE_p_IResolutionFunction2D swig_types[17] +#define SWIGTYPE_p_IShape2D swig_types[18] +#define SWIGTYPE_p_ImportSettings1D swig_types[19] +#define SWIGTYPE_p_Line swig_types[20] +#define SWIGTYPE_p_MaskPattern swig_types[21] +#define SWIGTYPE_p_OffspecDetector swig_types[22] +#define SWIGTYPE_p_PolFilter swig_types[23] +#define SWIGTYPE_p_Polygon swig_types[24] +#define SWIGTYPE_p_PolygonPrivate swig_types[25] +#define SWIGTYPE_p_Rectangle swig_types[26] +#define SWIGTYPE_p_RectangularDetector swig_types[27] +#define SWIGTYPE_p_RectangularPixel swig_types[28] +#define SWIGTYPE_p_ResolutionFunction2DGaussian swig_types[29] +#define SWIGTYPE_p_Rotation3DT_double_t swig_types[30] +#define SWIGTYPE_p_Scale swig_types[31] +#define SWIGTYPE_p_SimulationResult swig_types[32] +#define SWIGTYPE_p_SphericalDetector swig_types[33] +#define SWIGTYPE_p_Vec3T_double_t swig_types[34] +#define SWIGTYPE_p_Vec3T_int_t swig_types[35] +#define SWIGTYPE_p_Vec3T_std__complexT_double_t_t swig_types[36] +#define SWIGTYPE_p_VerticalLine swig_types[37] +#define SWIGTYPE_p_allocator_type swig_types[38] +#define SWIGTYPE_p_char swig_types[39] +#define SWIGTYPE_p_const_iterator swig_types[40] +#define SWIGTYPE_p_corr_matrix_t swig_types[41] +#define SWIGTYPE_p_difference_type swig_types[42] +#define SWIGTYPE_p_first_type swig_types[43] +#define SWIGTYPE_p_int swig_types[44] +#define SWIGTYPE_p_iterator swig_types[45] +#define SWIGTYPE_p_key_type swig_types[46] +#define SWIGTYPE_p_long_long swig_types[47] +#define SWIGTYPE_p_mapped_type swig_types[48] +#define SWIGTYPE_p_p_PyObject swig_types[49] +#define SWIGTYPE_p_parameters_t swig_types[50] +#define SWIGTYPE_p_second_type swig_types[51] +#define SWIGTYPE_p_short swig_types[52] +#define SWIGTYPE_p_signed_char swig_types[53] +#define SWIGTYPE_p_size_type swig_types[54] +#define SWIGTYPE_p_std__allocatorT_Vec3T_double_t_t swig_types[55] +#define SWIGTYPE_p_std__allocatorT_double_t swig_types[56] +#define SWIGTYPE_p_std__allocatorT_int_t swig_types[57] +#define SWIGTYPE_p_std__allocatorT_std__complexT_double_t_t swig_types[58] +#define SWIGTYPE_p_std__allocatorT_std__pairT_double_double_t_t swig_types[59] +#define SWIGTYPE_p_std__allocatorT_std__pairT_std__string_const_double_t_t swig_types[60] +#define SWIGTYPE_p_std__allocatorT_std__string_t swig_types[61] +#define SWIGTYPE_p_std__allocatorT_std__vectorT_double_std__allocatorT_double_t_t_t swig_types[62] +#define SWIGTYPE_p_std__allocatorT_std__vectorT_int_std__allocatorT_int_t_t_t swig_types[63] +#define SWIGTYPE_p_std__allocatorT_unsigned_long_t swig_types[64] +#define SWIGTYPE_p_std__arrayT_std__shared_ptrT_Scale_t_2_t swig_types[65] +#define SWIGTYPE_p_std__complexT_double_t swig_types[66] +#define SWIGTYPE_p_std__functionT_void_fSimulationAreaIterator_const_RF_t swig_types[67] +#define SWIGTYPE_p_std__invalid_argument swig_types[68] +#define SWIGTYPE_p_std__lessT_std__string_t swig_types[69] +#define SWIGTYPE_p_std__mapT_std__string_double_std__lessT_std__string_t_std__allocatorT_std__pairT_std__string_const_double_t_t_t swig_types[70] +#define SWIGTYPE_p_std__pairT_double_double_t swig_types[71] +#define SWIGTYPE_p_std__vectorT_INode_const_p_std__allocatorT_INode_const_p_t_t swig_types[72] +#define SWIGTYPE_p_std__vectorT_ParaMeta_std__allocatorT_ParaMeta_t_t swig_types[73] +#define SWIGTYPE_p_std__vectorT_Scale_const_p_std__allocatorT_Scale_const_p_t_t swig_types[74] +#define SWIGTYPE_p_std__vectorT_Vec3T_double_t_std__allocatorT_Vec3T_double_t_t_t swig_types[75] +#define SWIGTYPE_p_std__vectorT_double_std__allocatorT_double_t_t swig_types[76] +#define SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t swig_types[77] +#define SWIGTYPE_p_std__vectorT_size_t_std__allocatorT_size_t_t_t swig_types[78] +#define SWIGTYPE_p_std__vectorT_std__complexT_double_t_std__allocatorT_std__complexT_double_t_t_t swig_types[79] +#define SWIGTYPE_p_std__vectorT_std__pairT_double_double_t_std__allocatorT_std__pairT_double_double_t_t_t swig_types[80] +#define SWIGTYPE_p_std__vectorT_std__string_std__allocatorT_std__string_t_t swig_types[81] +#define SWIGTYPE_p_std__vectorT_std__vectorT_double_std__allocatorT_double_t_t_std__allocatorT_std__vectorT_double_std__allocatorT_double_t_t_t_t swig_types[82] +#define SWIGTYPE_p_std__vectorT_std__vectorT_int_std__allocatorT_int_t_t_std__allocatorT_std__vectorT_int_std__allocatorT_int_t_t_t_t swig_types[83] +#define SWIGTYPE_p_std__vectorT_unsigned_long_std__allocatorT_unsigned_long_t_t swig_types[84] +#define SWIGTYPE_p_swig__SwigPyIterator swig_types[85] +#define SWIGTYPE_p_unsigned_char swig_types[86] +#define SWIGTYPE_p_unsigned_int swig_types[87] +#define SWIGTYPE_p_unsigned_long_long swig_types[88] +#define SWIGTYPE_p_unsigned_short swig_types[89] +#define SWIGTYPE_p_value_type swig_types[90] +static swig_type_info *swig_types[92]; +static swig_module_info swig_module = {swig_types, 91, 0, 0, 0, 0}; #define SWIG_TypeQuery(name) SWIG_TypeQueryModule(&swig_module, &swig_module, name) #define SWIG_MangledTypeQuery(name) SWIG_MangledTypeQueryModule(&swig_module, &swig_module, name) @@ -36995,7 +36994,7 @@ fail: SWIGINTERN PyObject *_wrap_new_SimulationResult__SWIG_1(PyObject *self, Py_ssize_t nobjs, PyObject **swig_obj) { PyObject *resultobj = 0; Datafield *arg1 = 0 ; - ICoordSystem *arg2 = (ICoordSystem *) 0 ; + Frame *arg2 = (Frame *) 0 ; void *argp1 = 0 ; int res1 = 0 ; void *argp2 = 0 ; @@ -37011,12 +37010,12 @@ SWIGINTERN PyObject *_wrap_new_SimulationResult__SWIG_1(PyObject *self, Py_ssize SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_SimulationResult" "', argument " "1"" of type '" "Datafield const &""'"); } arg1 = reinterpret_cast< Datafield * >(argp1); - res2 = SWIG_ConvertPtr(swig_obj[1], &argp2,SWIGTYPE_p_ICoordSystem, 0 | 0 ); + res2 = SWIG_ConvertPtr(swig_obj[1], &argp2,SWIGTYPE_p_Frame, 0 | 0 ); if (!SWIG_IsOK(res2)) { - SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_SimulationResult" "', argument " "2"" of type '" "ICoordSystem const *""'"); + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "new_SimulationResult" "', argument " "2"" of type '" "Frame const *""'"); } - arg2 = reinterpret_cast< ICoordSystem * >(argp2); - result = (SimulationResult *)new SimulationResult((Datafield const &)*arg1,(ICoordSystem const *)arg2); + arg2 = reinterpret_cast< Frame * >(argp2); + result = (SimulationResult *)new SimulationResult((Datafield const &)*arg1,(Frame const *)arg2); resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_SimulationResult, SWIG_POINTER_NEW | 0 ); return resultobj; fail: @@ -37112,7 +37111,7 @@ SWIGINTERN PyObject *_wrap_new_SimulationResult(PyObject *self, PyObject *args) _v = SWIG_CheckState(res); if (_v) { void *vptr = 0; - int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_ICoordSystem, 0); + int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_Frame, 0); _v = SWIG_CheckState(res); if (_v) { return _wrap_new_SimulationResult__SWIG_1(self, argc, argv); @@ -37124,7 +37123,7 @@ fail: SWIG_Python_RaiseOrModifyTypeError("Wrong number or type of arguments for overloaded function 'new_SimulationResult'.\n" " Possible C/C++ prototypes are:\n" " SimulationResult::SimulationResult()\n" - " SimulationResult::SimulationResult(Datafield const &,ICoordSystem const *)\n" + " SimulationResult::SimulationResult(Datafield const &,Frame const *)\n" " SimulationResult::SimulationResult(SimulationResult const &)\n" " SimulationResult::SimulationResult(SimulationResult &&)\n"); return 0; @@ -38421,7 +38420,7 @@ static PyMethodDef SwigMethods[] = { { "dataMatchesFile", _wrap_dataMatchesFile, METH_VARARGS, "dataMatchesFile(Datafield data, std::string const & refFileName, double tol) -> bool"}, { "new_SimulationResult", _wrap_new_SimulationResult, METH_VARARGS, "\n" "SimulationResult()\n" - "SimulationResult(Datafield data, ICoordSystem const * coords)\n" + "SimulationResult(Datafield data, Frame coords)\n" "SimulationResult(SimulationResult other)\n" "new_SimulationResult(SimulationResult other) -> SimulationResult\n" ""}, @@ -38576,7 +38575,6 @@ static swig_type_info _swigt__p_FootprintSquare = {"_p_FootprintSquare", "Footpr static swig_type_info _swigt__p_Frame = {"_p_Frame", "Frame *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_HorizontalLine = {"_p_HorizontalLine", "HorizontalLine *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_ICloneable = {"_p_ICloneable", "ICloneable *", 0, 0, (void*)0, 0}; -static swig_type_info _swigt__p_ICoordSystem = {"_p_ICoordSystem", "ICoordSystem *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_IDetector = {"_p_IDetector", "IDetector *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_IDetectorResolution = {"_p_IDetectorResolution", "IDetectorResolution *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_IFootprint = {"_p_IFootprint", "IFootprint *", 0, 0, (void*)0, 0}; @@ -38670,7 +38668,6 @@ static swig_type_info *swig_type_initial[] = { &_swigt__p_Frame, &_swigt__p_HorizontalLine, &_swigt__p_ICloneable, - &_swigt__p_ICoordSystem, &_swigt__p_IDetector, &_swigt__p_IDetectorResolution, &_swigt__p_IFootprint, @@ -38764,7 +38761,6 @@ static swig_cast_info _swigc__p_FootprintSquare[] = { {&_swigt__p_FootprintSqua static swig_cast_info _swigc__p_Frame[] = { {&_swigt__p_Frame, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_HorizontalLine[] = { {&_swigt__p_HorizontalLine, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_ICloneable[] = { {&_swigt__p_ICloneable, 0, 0, 0}, {&_swigt__p_Ellipse, _p_EllipseTo_p_ICloneable, 0, 0}, {&_swigt__p_FootprintGauss, _p_FootprintGaussTo_p_ICloneable, 0, 0}, {&_swigt__p_FootprintSquare, _p_FootprintSquareTo_p_ICloneable, 0, 0}, {&_swigt__p_Frame, _p_FrameTo_p_ICloneable, 0, 0}, {&_swigt__p_HorizontalLine, _p_HorizontalLineTo_p_ICloneable, 0, 0}, {&_swigt__p_IDetector, _p_IDetectorTo_p_ICloneable, 0, 0}, {&_swigt__p_IDetectorResolution, _p_IDetectorResolutionTo_p_ICloneable, 0, 0}, {&_swigt__p_IFootprint, _p_IFootprintTo_p_ICloneable, 0, 0}, {&_swigt__p_IResolutionFunction2D, _p_IResolutionFunction2DTo_p_ICloneable, 0, 0}, {&_swigt__p_IShape2D, _p_IShape2DTo_p_ICloneable, 0, 0}, {&_swigt__p_Line, _p_LineTo_p_ICloneable, 0, 0}, {&_swigt__p_Polygon, _p_PolygonTo_p_ICloneable, 0, 0}, {&_swigt__p_Rectangle, _p_RectangleTo_p_ICloneable, 0, 0}, {&_swigt__p_RectangularDetector, _p_RectangularDetectorTo_p_ICloneable, 0, 0}, {&_swigt__p_ResolutionFunction2DGaussian, _p_ResolutionFunction2DGaussianTo_p_ICloneable, 0, 0}, {&_swigt__p_SphericalDetector, _p_SphericalDetectorTo_p_ICloneable, 0, 0}, {&_swigt__p_VerticalLine, _p_VerticalLineTo_p_ICloneable, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_ICoordSystem[] = { {&_swigt__p_ICoordSystem, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_IDetector[] = { {&_swigt__p_IDetector, 0, 0, 0}, {&_swigt__p_RectangularDetector, _p_RectangularDetectorTo_p_IDetector, 0, 0}, {&_swigt__p_SphericalDetector, _p_SphericalDetectorTo_p_IDetector, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_IDetectorResolution[] = { {&_swigt__p_IDetectorResolution, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_IFootprint[] = { {&_swigt__p_IFootprint, 0, 0, 0}, {&_swigt__p_FootprintGauss, _p_FootprintGaussTo_p_IFootprint, 0, 0}, {&_swigt__p_FootprintSquare, _p_FootprintSquareTo_p_IFootprint, 0, 0},{0, 0, 0, 0}}; @@ -38858,7 +38854,6 @@ static swig_cast_info *swig_cast_initial[] = { _swigc__p_Frame, _swigc__p_HorizontalLine, _swigc__p_ICloneable, - _swigc__p_ICoordSystem, _swigc__p_IDetector, _swigc__p_IDetectorResolution, _swigc__p_IFootprint,