From e2ccc2ec5c53d6eae9143955d4b1dac531ae7035 Mon Sep 17 00:00:00 2001 From: Mikhail Svechnikov <svechnikovmv@gmail.com> Date: Tue, 30 Jul 2024 19:35:56 +0200 Subject: [PATCH] rm local vector definitions --- Base/Math/FourierTransform.cpp | 34 +-- Base/Math/FourierTransform.h | 9 +- Device/Resolution/Convolve.h | 8 +- Img3D/Model/Geometry.h | 4 +- Img3D/Model/Layer.h | 2 - Img3D/Model/PlottableBody.h | 3 +- Sample/Interface/RoughnessMap.cpp | 17 +- Sample/Interface/RoughnessMap.h | 5 - auto/Wrap/libBornAgainSample.py | 2 +- auto/Wrap/libBornAgainSample_wrap.cpp | 318 ++++++++++++-------------- 10 files changed, 179 insertions(+), 223 deletions(-) diff --git a/Base/Math/FourierTransform.cpp b/Base/Math/FourierTransform.cpp index 462fb39434d..3709ce55d32 100644 --- a/Base/Math/FourierTransform.cpp +++ b/Base/Math/FourierTransform.cpp @@ -95,7 +95,7 @@ void FourierTransform::Workspace::clear() /* ************************************************************************* */ // Fourier Transform in 2D /* ************************************************************************* */ -FourierTransform::complex2d_t FourierTransform::rfft(const double2d_t& src) +complex2d_t FourierTransform::rfft(const double2d_t& src) { // rows (h) and columns (w) of the input 'source' int h = src.size(); @@ -111,7 +111,7 @@ FourierTransform::complex2d_t FourierTransform::rfft(const double2d_t& src) return rfft2complex_vec(); } -FourierTransform::double2d_t FourierTransform::irfft(const complex2d_t& src, int w_real) +double2d_t FourierTransform::irfft(const complex2d_t& src, int w_real) { // rows (h) of the input 'source' int h = src.size(); @@ -126,7 +126,7 @@ FourierTransform::double2d_t FourierTransform::irfft(const complex2d_t& src, int return irfft2double_vec(); } -FourierTransform::double2d_t FourierTransform::ramplitude(const double2d_t& src) +double2d_t FourierTransform::ramplitude(const double2d_t& src) { complex2d_t complex_result = rfft(src); return fft2amp(complex_result); @@ -135,20 +135,20 @@ FourierTransform::double2d_t FourierTransform::ramplitude(const double2d_t& src) /* ************************************************************************* */ // Fourier Transform 2D shift - center array around zero frequency /* ************************************************************************* */ -FourierTransform::double2d_t FourierTransform::fftshift(const double2d_t& src) +double2d_t FourierTransform::fftshift(const double2d_t& src) { return ::fftshift_2d(src, false); } -FourierTransform::complex2d_t FourierTransform::fftshift(const complex2d_t& src) +complex2d_t FourierTransform::fftshift(const complex2d_t& src) { return ::fftshift_2d(src, false); } -FourierTransform::double2d_t FourierTransform::ifftshift(const double2d_t& src) +double2d_t FourierTransform::ifftshift(const double2d_t& src) { return ::fftshift_2d(src, true); } -FourierTransform::complex2d_t FourierTransform::ifftshift(const complex2d_t& src) +complex2d_t FourierTransform::ifftshift(const complex2d_t& src) { return ::fftshift_2d(src, true); } @@ -156,7 +156,7 @@ FourierTransform::complex2d_t FourierTransform::ifftshift(const complex2d_t& src /* ************************************************************************* */ // Fourier Transform in 1D /* ************************************************************************* */ -FourierTransform::complex1d_t FourierTransform::rfft(const double1d_t& src) +complex1d_t FourierTransform::rfft(const double1d_t& src) { // we simply create 2d arrays with length of first dimension equal to 1, and call 2d FT double2d_t src2d{src}; @@ -166,7 +166,7 @@ FourierTransform::complex1d_t FourierTransform::rfft(const double1d_t& src) return result2d[0]; } -FourierTransform::double1d_t FourierTransform::irfft(const complex1d_t& src, int w_src) +double1d_t FourierTransform::irfft(const complex1d_t& src, int w_src) { // we simply create 2d arrays with length of first dimension equal to 1, and call 2d FT complex2d_t source2d{src}; @@ -176,7 +176,7 @@ FourierTransform::double1d_t FourierTransform::irfft(const complex1d_t& src, int return result2d[0]; } -FourierTransform::double1d_t FourierTransform::ramplitude(const double1d_t& src) +double1d_t FourierTransform::ramplitude(const double1d_t& src) { complex2d_t complex_result2d{rfft(src)}; @@ -189,20 +189,20 @@ FourierTransform::double1d_t FourierTransform::ramplitude(const double1d_t& src) /* ************************************************************************* */ // Fourier Transform 1D shift - center around zero frequency /* ************************************************************************* */ -FourierTransform::double1d_t FourierTransform::fftshift(const double1d_t& src) +double1d_t FourierTransform::fftshift(const double1d_t& src) { return ::fftshift_1d(src, false); } -FourierTransform::complex1d_t FourierTransform::fftshift(const complex1d_t& src) +complex1d_t FourierTransform::fftshift(const complex1d_t& src) { return ::fftshift_1d(src, false); } -FourierTransform::double1d_t FourierTransform::ifftshift(const double1d_t& src) +double1d_t FourierTransform::ifftshift(const double1d_t& src) { return ::fftshift_1d(src, true); } -FourierTransform::complex1d_t FourierTransform::ifftshift(const complex1d_t& src) +complex1d_t FourierTransform::ifftshift(const complex1d_t& src) { return ::fftshift_1d(src, true); } @@ -251,7 +251,7 @@ void FourierTransform::init_c2r(int h, int w_real) // convert output to standard containers /* ************************************************************************************ */ -FourierTransform::complex2d_t FourierTransform::rfft2complex_vec() const +complex2d_t FourierTransform::rfft2complex_vec() const { ASSERT(ws.arr_fftw); @@ -267,7 +267,7 @@ FourierTransform::complex2d_t FourierTransform::rfft2complex_vec() const return result; } -FourierTransform::double2d_t FourierTransform::irfft2double_vec() const +double2d_t FourierTransform::irfft2double_vec() const { ASSERT(ws.arr_real); @@ -285,7 +285,7 @@ FourierTransform::double2d_t FourierTransform::irfft2double_vec() const return result; } -FourierTransform::double2d_t FourierTransform::fft2amp(complex2d_t& source) const +double2d_t FourierTransform::fft2amp(complex2d_t& source) const { ASSERT(ws.arr_fftw); diff --git a/Base/Math/FourierTransform.h b/Base/Math/FourierTransform.h index 310442ed79c..43fc3518eaa 100644 --- a/Base/Math/FourierTransform.h +++ b/Base/Math/FourierTransform.h @@ -18,19 +18,12 @@ #ifndef BORNAGAIN_BASE_MATH_FOURIERTRANSFORM_H #define BORNAGAIN_BASE_MATH_FOURIERTRANSFORM_H +#include "Base/Type/Vector.h" #include <fftw3.h> -#include <heinz/Complex.h> -#include <vector> //! Fourier transform of vectors (in 1D or 2D) using Fast Fourier Transform (fftw package). class FourierTransform { public: - // 1D and 2D vectors - using double1d_t = std::vector<double>; - using double2d_t = std::vector<double1d_t>; - using complex1d_t = std::vector<complex_t>; - using complex2d_t = std::vector<complex1d_t>; - FourierTransform(); // forward transform diff --git a/Device/Resolution/Convolve.h b/Device/Resolution/Convolve.h index d6f08723d78..0e3c3bfd5e8 100644 --- a/Device/Resolution/Convolve.h +++ b/Device/Resolution/Convolve.h @@ -18,8 +18,8 @@ #ifndef BORNAGAIN_DEVICE_RESOLUTION_CONVOLVE_H #define BORNAGAIN_DEVICE_RESOLUTION_CONVOLVE_H +#include "Base/Type/Vector.h" #include <fftw3.h> -#include <vector> //! Convolution of two real vectors (in 1D or 2D) using Fast Fourier Transform. //! @@ -36,12 +36,6 @@ class Convolve { public: - //! definition of 1d vector of double - using double1d_t = std::vector<double>; - - //! definition of 2d vector of double - using double2d_t = std::vector<double1d_t>; - Convolve(); //! convolution modes diff --git a/Img3D/Model/Geometry.h b/Img3D/Model/Geometry.h index f931b16051c..4adf50aa1f0 100644 --- a/Img3D/Model/Geometry.h +++ b/Img3D/Model/Geometry.h @@ -15,15 +15,13 @@ #ifndef BORNAGAIN_IMG3D_MODEL_GEOMETRY_H #define BORNAGAIN_IMG3D_MODEL_GEOMETRY_H +#include "Base/Type/Vector.h" #include "Img3D/Model/Geometry_inc.h" #include <QVector> -#include <vector> namespace Img3D { class Geometry { - using double2d_t = std::vector<std::vector<double>>; - public: // vertex + normal pair struct VertexAndNormal { diff --git a/Img3D/Model/Layer.h b/Img3D/Model/Layer.h index 214e41dfb0c..19281c6f24d 100644 --- a/Img3D/Model/Layer.h +++ b/Img3D/Model/Layer.h @@ -24,8 +24,6 @@ class RoughnessItem; //! Particle layer: a transparent box class Layer : public PlottableBody { public: - using double2d_t = std::vector<std::vector<double>>; - Layer(F3Range, const double2d_t* top = nullptr, const double2d_t* bottom = nullptr); }; diff --git a/Img3D/Model/PlottableBody.h b/Img3D/Model/PlottableBody.h index 866b698bc79..69086a8c016 100644 --- a/Img3D/Model/PlottableBody.h +++ b/Img3D/Model/PlottableBody.h @@ -15,6 +15,7 @@ #ifndef BORNAGAIN_IMG3D_MODEL_PLOTTABLEBODY_H #define BORNAGAIN_IMG3D_MODEL_PLOTTABLEBODY_H +#include "Base/Type/Vector.h" #include "Img3D/Model/Geometry_inc.h" #include "Img3D/Type/FloatVector3D.h" #include <QColor> @@ -30,8 +31,6 @@ class RoughnessItem; //! A geometric object. Base class for Particle and Layer. class PlottableBody { public: - using double2d_t = std::vector<std::vector<double>>; - PlottableBody(GeometricID::Key, const double2d_t* top = nullptr, const double2d_t* bottom = nullptr); virtual ~PlottableBody(); diff --git a/Sample/Interface/RoughnessMap.cpp b/Sample/Interface/RoughnessMap.cpp index 0e40f37a4f7..5ad3032d28a 100644 --- a/Sample/Interface/RoughnessMap.cpp +++ b/Sample/Interface/RoughnessMap.cpp @@ -22,8 +22,7 @@ using std::numbers::pi; namespace { -bool converged(const RoughnessMap::double2d_t& h_old, const RoughnessMap::double2d_t& h_new, - double threshold) +bool converged(const double2d_t& h_old, const double2d_t& h_new, double threshold) { ASSERT(h_old.size() == h_new.size()); ASSERT(h_old[0].size() == h_new[0].size()); @@ -63,13 +62,13 @@ RoughnessMap::RoughnessMap(size_t x_points, size_t y_points, double Lx, double L throw std::runtime_error("Sample Y length must be > 0"); } -RoughnessMap::double2d_t RoughnessMap::generateMap() +double2d_t RoughnessMap::generateMap() { createMap(); return m_rough_map; } -RoughnessMap::double2d_t RoughnessMap::mapFromHeights() const +double2d_t RoughnessMap::mapFromHeights() const { const size_t z_steps = 3999; const double sigma = m_layerRoughness->sigma(); @@ -97,7 +96,7 @@ RoughnessMap::double2d_t RoughnessMap::mapFromHeights() const return result; } -RoughnessMap::double2d_t RoughnessMap::mapFromSpectrum() const +double2d_t RoughnessMap::mapFromSpectrum() const { const double fft_factor = m_x_points * m_y_points / std::sqrt(m_lx * m_ly); const double dfx = 1. / m_lx; @@ -156,8 +155,8 @@ RoughnessMap::double2d_t RoughnessMap::mapFromSpectrum() const return m_ft.irfft(spectrum, m_x_points); } -RoughnessMap::double2d_t RoughnessMap::applySpectrumToHeights(const double2d_t& h_map, - const double2d_t& s_map) const +double2d_t RoughnessMap::applySpectrumToHeights(const double2d_t& h_map, + const double2d_t& s_map) const { // get spectrum auto h_fft = m_ft.rfft(h_map); @@ -172,8 +171,8 @@ RoughnessMap::double2d_t RoughnessMap::applySpectrumToHeights(const double2d_t& return m_ft.irfft(h_fft, h_map[0].size()); } -RoughnessMap::double2d_t RoughnessMap::applyHeightsToSpectrum(const double2d_t& h_map, - const double2d_t& s_map) const +double2d_t RoughnessMap::applyHeightsToSpectrum(const double2d_t& h_map, + const double2d_t& s_map) const { // flatten spectral map auto s_map_flat = Vec::flatten(s_map); diff --git a/Sample/Interface/RoughnessMap.h b/Sample/Interface/RoughnessMap.h index 7148d3e9982..f360fed004c 100644 --- a/Sample/Interface/RoughnessMap.h +++ b/Sample/Interface/RoughnessMap.h @@ -30,11 +30,6 @@ class RoughnessMap { public: - using double1d_t = FourierTransform::double1d_t; - using double2d_t = FourierTransform::double2d_t; - using complex1d_t = FourierTransform::complex1d_t; - using complex2d_t = FourierTransform::complex2d_t; - RoughnessMap(size_t x_points, size_t y_points, double Lx, double Ly, const LayerRoughness* layerRoughness, int seed = -1); RoughnessMap() = delete; diff --git a/auto/Wrap/libBornAgainSample.py b/auto/Wrap/libBornAgainSample.py index 8054f0c3d4b..b6f32981718 100644 --- a/auto/Wrap/libBornAgainSample.py +++ b/auto/Wrap/libBornAgainSample.py @@ -4253,7 +4253,7 @@ class RoughnessMap(object): _libBornAgainSample.RoughnessMap_swiginit(self, _libBornAgainSample.new_RoughnessMap(x_points, y_points, Lx, Ly, layerRoughness, seed)) def generateMap(self): - r"""generateMap(RoughnessMap self) -> RoughnessMap::double2d_t""" + r"""generateMap(RoughnessMap self) -> double2d_t""" return _libBornAgainSample.RoughnessMap_generateMap(self) def generate(self): diff --git a/auto/Wrap/libBornAgainSample_wrap.cpp b/auto/Wrap/libBornAgainSample_wrap.cpp index 7c20d30de17..ba2bf939743 100644 --- a/auto/Wrap/libBornAgainSample_wrap.cpp +++ b/auto/Wrap/libBornAgainSample_wrap.cpp @@ -3662,156 +3662,152 @@ namespace Swig { #define SWIGTYPE_p_Dodecahedron swig_types[14] #define SWIGTYPE_p_EllipsoidalCylinder swig_types[15] #define SWIGTYPE_p_ErfRoughness swig_types[16] -#define SWIGTYPE_p_FourierTransform__double2d_t swig_types[17] -#define SWIGTYPE_p_FuzzySphere swig_types[18] -#define SWIGTYPE_p_GaussFisherPeakShape swig_types[19] -#define SWIGTYPE_p_GaussSphere swig_types[20] -#define SWIGTYPE_p_HemiEllipsoid swig_types[21] -#define SWIGTYPE_p_HexagonalLattice2D swig_types[22] -#define SWIGTYPE_p_HorizontalCylinder swig_types[23] -#define SWIGTYPE_p_ICloneable swig_types[24] -#define SWIGTYPE_p_ICosineRipple swig_types[25] -#define SWIGTYPE_p_IFormfactor swig_types[26] -#define SWIGTYPE_p_IFormfactorPolyhedron swig_types[27] -#define SWIGTYPE_p_IFormfactorPrism swig_types[28] -#define SWIGTYPE_p_IInterference swig_types[29] -#define SWIGTYPE_p_IMaterialImpl swig_types[30] -#define SWIGTYPE_p_INode swig_types[31] -#define SWIGTYPE_p_IParticle swig_types[32] -#define SWIGTYPE_p_IPeakShape swig_types[33] -#define SWIGTYPE_p_IProfile1D swig_types[34] -#define SWIGTYPE_p_IProfile2D swig_types[35] -#define SWIGTYPE_p_IProfileRectangularRipple swig_types[36] -#define SWIGTYPE_p_IProfileRipple swig_types[37] -#define SWIGTYPE_p_IRotation swig_types[38] -#define SWIGTYPE_p_ISampleNode swig_types[39] -#define SWIGTYPE_p_ISawtoothRipple swig_types[40] -#define SWIGTYPE_p_ISelectionRule swig_types[41] -#define SWIGTYPE_p_Icosahedron swig_types[42] -#define SWIGTYPE_p_IdentityRotation swig_types[43] -#define SWIGTYPE_p_Interference1DLattice swig_types[44] -#define SWIGTYPE_p_Interference2DLattice swig_types[45] -#define SWIGTYPE_p_Interference2DParacrystal swig_types[46] -#define SWIGTYPE_p_Interference2DSuperLattice swig_types[47] -#define SWIGTYPE_p_InterferenceFinite2DLattice swig_types[48] -#define SWIGTYPE_p_InterferenceHardDisk swig_types[49] -#define SWIGTYPE_p_InterferenceNone swig_types[50] -#define SWIGTYPE_p_InterferenceRadialParacrystal swig_types[51] -#define SWIGTYPE_p_IsotropicGaussPeakShape swig_types[52] -#define SWIGTYPE_p_IsotropicLorentzPeakShape swig_types[53] -#define SWIGTYPE_p_Lattice2D swig_types[54] -#define SWIGTYPE_p_Lattice2D__ReciprocalBases swig_types[55] -#define SWIGTYPE_p_Lattice3D swig_types[56] -#define SWIGTYPE_p_Layer swig_types[57] -#define SWIGTYPE_p_LayerRoughness swig_types[58] -#define SWIGTYPE_p_LongBoxGauss swig_types[59] -#define SWIGTYPE_p_LongBoxLorentz swig_types[60] -#define SWIGTYPE_p_LorentzFisherPeakShape swig_types[61] -#define SWIGTYPE_p_Material swig_types[62] -#define SWIGTYPE_p_MaterialBySLDImpl swig_types[63] -#define SWIGTYPE_p_Mesocrystal swig_types[64] -#define SWIGTYPE_p_MisesFisherGaussPeakShape swig_types[65] -#define SWIGTYPE_p_MisesGaussPeakShape swig_types[66] -#define SWIGTYPE_p_MultiLayer swig_types[67] -#define SWIGTYPE_p_Particle swig_types[68] -#define SWIGTYPE_p_ParticleLayout swig_types[69] -#define SWIGTYPE_p_PlatonicOctahedron swig_types[70] -#define SWIGTYPE_p_PlatonicTetrahedron swig_types[71] -#define SWIGTYPE_p_Prism3 swig_types[72] -#define SWIGTYPE_p_Prism6 swig_types[73] -#define SWIGTYPE_p_Profile1DCauchy swig_types[74] -#define SWIGTYPE_p_Profile1DCosine swig_types[75] -#define SWIGTYPE_p_Profile1DGate swig_types[76] -#define SWIGTYPE_p_Profile1DGauss swig_types[77] -#define SWIGTYPE_p_Profile1DTriangle swig_types[78] -#define SWIGTYPE_p_Profile1DVoigt swig_types[79] -#define SWIGTYPE_p_Profile2DCauchy swig_types[80] -#define SWIGTYPE_p_Profile2DCone swig_types[81] -#define SWIGTYPE_p_Profile2DGate swig_types[82] -#define SWIGTYPE_p_Profile2DGauss swig_types[83] -#define SWIGTYPE_p_Profile2DVoigt swig_types[84] -#define SWIGTYPE_p_Pyramid2 swig_types[85] -#define SWIGTYPE_p_Pyramid3 swig_types[86] -#define SWIGTYPE_p_Pyramid4 swig_types[87] -#define SWIGTYPE_p_Pyramid6 swig_types[88] -#define SWIGTYPE_p_RefractiveMaterialImpl swig_types[89] -#define SWIGTYPE_p_Rotation3DT_double_t swig_types[90] -#define SWIGTYPE_p_RotationEuler swig_types[91] -#define SWIGTYPE_p_RotationX swig_types[92] -#define SWIGTYPE_p_RotationY swig_types[93] -#define SWIGTYPE_p_RotationZ swig_types[94] -#define SWIGTYPE_p_RoughnessMap swig_types[95] -#define SWIGTYPE_p_RoughnessModel swig_types[96] -#define SWIGTYPE_p_SawtoothRippleBox swig_types[97] -#define SWIGTYPE_p_SawtoothRippleGauss swig_types[98] -#define SWIGTYPE_p_SawtoothRippleLorentz swig_types[99] -#define SWIGTYPE_p_SimpleSelectionRule swig_types[100] -#define SWIGTYPE_p_Span swig_types[101] -#define SWIGTYPE_p_Sphere swig_types[102] -#define SWIGTYPE_p_Spheroid swig_types[103] -#define SWIGTYPE_p_SpinMatrix swig_types[104] -#define SWIGTYPE_p_SquareLattice2D swig_types[105] -#define SWIGTYPE_p_TanhRoughness swig_types[106] -#define SWIGTYPE_p_TruncatedCube swig_types[107] -#define SWIGTYPE_p_TruncatedSphere swig_types[108] -#define SWIGTYPE_p_TruncatedSpheroid swig_types[109] -#define SWIGTYPE_p_Vec3T_double_t swig_types[110] -#define SWIGTYPE_p_Vec3T_int_t swig_types[111] -#define SWIGTYPE_p_Vec3T_std__complexT_double_t_t swig_types[112] -#define SWIGTYPE_p_WavevectorInfo swig_types[113] -#define SWIGTYPE_p_allocator_type swig_types[114] -#define SWIGTYPE_p_char swig_types[115] -#define SWIGTYPE_p_complex1d_t swig_types[116] -#define SWIGTYPE_p_complex2d_t swig_types[117] -#define SWIGTYPE_p_difference_type swig_types[118] -#define SWIGTYPE_p_double1d_t swig_types[119] -#define SWIGTYPE_p_double2d_t swig_types[120] -#define SWIGTYPE_p_first_type swig_types[121] -#define SWIGTYPE_p_int swig_types[122] -#define SWIGTYPE_p_key_type swig_types[123] -#define SWIGTYPE_p_long_long swig_types[124] -#define SWIGTYPE_p_mapped_type swig_types[125] -#define SWIGTYPE_p_p_PyObject swig_types[126] -#define SWIGTYPE_p_second_type swig_types[127] -#define SWIGTYPE_p_short swig_types[128] -#define SWIGTYPE_p_signed_char swig_types[129] -#define SWIGTYPE_p_size_type swig_types[130] -#define SWIGTYPE_p_std__allocatorT_INode_const_p_t swig_types[131] -#define SWIGTYPE_p_std__allocatorT_Vec3T_double_t_t swig_types[132] -#define SWIGTYPE_p_std__allocatorT_double_t swig_types[133] -#define SWIGTYPE_p_std__allocatorT_int_t swig_types[134] -#define SWIGTYPE_p_std__allocatorT_std__complexT_double_t_t swig_types[135] -#define SWIGTYPE_p_std__allocatorT_std__pairT_double_double_t_t swig_types[136] -#define SWIGTYPE_p_std__allocatorT_std__pairT_std__string_const_double_t_t swig_types[137] -#define SWIGTYPE_p_std__allocatorT_std__string_t swig_types[138] -#define SWIGTYPE_p_std__allocatorT_std__vectorT_double_t_t swig_types[139] -#define SWIGTYPE_p_std__allocatorT_std__vectorT_int_t_t swig_types[140] -#define SWIGTYPE_p_std__allocatorT_unsigned_long_t swig_types[141] -#define SWIGTYPE_p_std__complexT_double_t swig_types[142] -#define SWIGTYPE_p_std__functionT_double_fdoubleF_t swig_types[143] -#define SWIGTYPE_p_std__invalid_argument swig_types[144] -#define SWIGTYPE_p_std__lessT_std__string_t swig_types[145] -#define SWIGTYPE_p_std__mapT_std__string_double_t swig_types[146] -#define SWIGTYPE_p_std__pairT_double_double_t swig_types[147] -#define SWIGTYPE_p_std__vectorT_INode_const_p_t swig_types[148] -#define SWIGTYPE_p_std__vectorT_ParaMeta_std__allocatorT_ParaMeta_t_t swig_types[149] -#define SWIGTYPE_p_std__vectorT_Vec3T_double_t_t swig_types[150] -#define SWIGTYPE_p_std__vectorT_double_t swig_types[151] -#define SWIGTYPE_p_std__vectorT_int_t swig_types[152] -#define SWIGTYPE_p_std__vectorT_std__complexT_double_t_t swig_types[153] -#define SWIGTYPE_p_std__vectorT_std__pairT_double_double_t_t swig_types[154] -#define SWIGTYPE_p_std__vectorT_std__string_t swig_types[155] -#define SWIGTYPE_p_std__vectorT_std__vectorT_double_t_t swig_types[156] -#define SWIGTYPE_p_std__vectorT_std__vectorT_int_t_t swig_types[157] -#define SWIGTYPE_p_std__vectorT_unsigned_long_t swig_types[158] -#define SWIGTYPE_p_swig__SwigPyIterator swig_types[159] -#define SWIGTYPE_p_unsigned_char swig_types[160] -#define SWIGTYPE_p_unsigned_int swig_types[161] -#define SWIGTYPE_p_unsigned_long_long swig_types[162] -#define SWIGTYPE_p_unsigned_short swig_types[163] -#define SWIGTYPE_p_value_type swig_types[164] -static swig_type_info *swig_types[166]; -static swig_module_info swig_module = {swig_types, 165, 0, 0, 0, 0}; +#define SWIGTYPE_p_FuzzySphere swig_types[17] +#define SWIGTYPE_p_GaussFisherPeakShape swig_types[18] +#define SWIGTYPE_p_GaussSphere swig_types[19] +#define SWIGTYPE_p_HemiEllipsoid swig_types[20] +#define SWIGTYPE_p_HexagonalLattice2D swig_types[21] +#define SWIGTYPE_p_HorizontalCylinder swig_types[22] +#define SWIGTYPE_p_ICloneable swig_types[23] +#define SWIGTYPE_p_ICosineRipple swig_types[24] +#define SWIGTYPE_p_IFormfactor swig_types[25] +#define SWIGTYPE_p_IFormfactorPolyhedron swig_types[26] +#define SWIGTYPE_p_IFormfactorPrism swig_types[27] +#define SWIGTYPE_p_IInterference swig_types[28] +#define SWIGTYPE_p_IMaterialImpl swig_types[29] +#define SWIGTYPE_p_INode swig_types[30] +#define SWIGTYPE_p_IParticle swig_types[31] +#define SWIGTYPE_p_IPeakShape swig_types[32] +#define SWIGTYPE_p_IProfile1D swig_types[33] +#define SWIGTYPE_p_IProfile2D swig_types[34] +#define SWIGTYPE_p_IProfileRectangularRipple swig_types[35] +#define SWIGTYPE_p_IProfileRipple swig_types[36] +#define SWIGTYPE_p_IRotation swig_types[37] +#define SWIGTYPE_p_ISampleNode swig_types[38] +#define SWIGTYPE_p_ISawtoothRipple swig_types[39] +#define SWIGTYPE_p_ISelectionRule swig_types[40] +#define SWIGTYPE_p_Icosahedron swig_types[41] +#define SWIGTYPE_p_IdentityRotation swig_types[42] +#define SWIGTYPE_p_Interference1DLattice swig_types[43] +#define SWIGTYPE_p_Interference2DLattice swig_types[44] +#define SWIGTYPE_p_Interference2DParacrystal swig_types[45] +#define SWIGTYPE_p_Interference2DSuperLattice swig_types[46] +#define SWIGTYPE_p_InterferenceFinite2DLattice swig_types[47] +#define SWIGTYPE_p_InterferenceHardDisk swig_types[48] +#define SWIGTYPE_p_InterferenceNone swig_types[49] +#define SWIGTYPE_p_InterferenceRadialParacrystal swig_types[50] +#define SWIGTYPE_p_IsotropicGaussPeakShape swig_types[51] +#define SWIGTYPE_p_IsotropicLorentzPeakShape swig_types[52] +#define SWIGTYPE_p_Lattice2D swig_types[53] +#define SWIGTYPE_p_Lattice2D__ReciprocalBases swig_types[54] +#define SWIGTYPE_p_Lattice3D swig_types[55] +#define SWIGTYPE_p_Layer swig_types[56] +#define SWIGTYPE_p_LayerRoughness swig_types[57] +#define SWIGTYPE_p_LongBoxGauss swig_types[58] +#define SWIGTYPE_p_LongBoxLorentz swig_types[59] +#define SWIGTYPE_p_LorentzFisherPeakShape swig_types[60] +#define SWIGTYPE_p_Material swig_types[61] +#define SWIGTYPE_p_MaterialBySLDImpl swig_types[62] +#define SWIGTYPE_p_Mesocrystal swig_types[63] +#define SWIGTYPE_p_MisesFisherGaussPeakShape swig_types[64] +#define SWIGTYPE_p_MisesGaussPeakShape swig_types[65] +#define SWIGTYPE_p_MultiLayer swig_types[66] +#define SWIGTYPE_p_Particle swig_types[67] +#define SWIGTYPE_p_ParticleLayout swig_types[68] +#define SWIGTYPE_p_PlatonicOctahedron swig_types[69] +#define SWIGTYPE_p_PlatonicTetrahedron swig_types[70] +#define SWIGTYPE_p_Prism3 swig_types[71] +#define SWIGTYPE_p_Prism6 swig_types[72] +#define SWIGTYPE_p_Profile1DCauchy swig_types[73] +#define SWIGTYPE_p_Profile1DCosine swig_types[74] +#define SWIGTYPE_p_Profile1DGate swig_types[75] +#define SWIGTYPE_p_Profile1DGauss swig_types[76] +#define SWIGTYPE_p_Profile1DTriangle swig_types[77] +#define SWIGTYPE_p_Profile1DVoigt swig_types[78] +#define SWIGTYPE_p_Profile2DCauchy swig_types[79] +#define SWIGTYPE_p_Profile2DCone swig_types[80] +#define SWIGTYPE_p_Profile2DGate swig_types[81] +#define SWIGTYPE_p_Profile2DGauss swig_types[82] +#define SWIGTYPE_p_Profile2DVoigt swig_types[83] +#define SWIGTYPE_p_Pyramid2 swig_types[84] +#define SWIGTYPE_p_Pyramid3 swig_types[85] +#define SWIGTYPE_p_Pyramid4 swig_types[86] +#define SWIGTYPE_p_Pyramid6 swig_types[87] +#define SWIGTYPE_p_RefractiveMaterialImpl swig_types[88] +#define SWIGTYPE_p_Rotation3DT_double_t swig_types[89] +#define SWIGTYPE_p_RotationEuler swig_types[90] +#define SWIGTYPE_p_RotationX swig_types[91] +#define SWIGTYPE_p_RotationY swig_types[92] +#define SWIGTYPE_p_RotationZ swig_types[93] +#define SWIGTYPE_p_RoughnessMap swig_types[94] +#define SWIGTYPE_p_RoughnessModel swig_types[95] +#define SWIGTYPE_p_SawtoothRippleBox swig_types[96] +#define SWIGTYPE_p_SawtoothRippleGauss swig_types[97] +#define SWIGTYPE_p_SawtoothRippleLorentz swig_types[98] +#define SWIGTYPE_p_SimpleSelectionRule swig_types[99] +#define SWIGTYPE_p_Span swig_types[100] +#define SWIGTYPE_p_Sphere swig_types[101] +#define SWIGTYPE_p_Spheroid swig_types[102] +#define SWIGTYPE_p_SpinMatrix swig_types[103] +#define SWIGTYPE_p_SquareLattice2D swig_types[104] +#define SWIGTYPE_p_TanhRoughness swig_types[105] +#define SWIGTYPE_p_TruncatedCube swig_types[106] +#define SWIGTYPE_p_TruncatedSphere swig_types[107] +#define SWIGTYPE_p_TruncatedSpheroid swig_types[108] +#define SWIGTYPE_p_Vec3T_double_t swig_types[109] +#define SWIGTYPE_p_Vec3T_int_t swig_types[110] +#define SWIGTYPE_p_Vec3T_std__complexT_double_t_t swig_types[111] +#define SWIGTYPE_p_WavevectorInfo swig_types[112] +#define SWIGTYPE_p_allocator_type swig_types[113] +#define SWIGTYPE_p_char swig_types[114] +#define SWIGTYPE_p_difference_type swig_types[115] +#define SWIGTYPE_p_double2d_t swig_types[116] +#define SWIGTYPE_p_first_type swig_types[117] +#define SWIGTYPE_p_int swig_types[118] +#define SWIGTYPE_p_key_type swig_types[119] +#define SWIGTYPE_p_long_long swig_types[120] +#define SWIGTYPE_p_mapped_type swig_types[121] +#define SWIGTYPE_p_p_PyObject swig_types[122] +#define SWIGTYPE_p_second_type swig_types[123] +#define SWIGTYPE_p_short swig_types[124] +#define SWIGTYPE_p_signed_char swig_types[125] +#define SWIGTYPE_p_size_type swig_types[126] +#define SWIGTYPE_p_std__allocatorT_INode_const_p_t swig_types[127] +#define SWIGTYPE_p_std__allocatorT_Vec3T_double_t_t swig_types[128] +#define SWIGTYPE_p_std__allocatorT_double_t swig_types[129] +#define SWIGTYPE_p_std__allocatorT_int_t swig_types[130] +#define SWIGTYPE_p_std__allocatorT_std__complexT_double_t_t swig_types[131] +#define SWIGTYPE_p_std__allocatorT_std__pairT_double_double_t_t swig_types[132] +#define SWIGTYPE_p_std__allocatorT_std__pairT_std__string_const_double_t_t swig_types[133] +#define SWIGTYPE_p_std__allocatorT_std__string_t swig_types[134] +#define SWIGTYPE_p_std__allocatorT_std__vectorT_double_t_t swig_types[135] +#define SWIGTYPE_p_std__allocatorT_std__vectorT_int_t_t swig_types[136] +#define SWIGTYPE_p_std__allocatorT_unsigned_long_t swig_types[137] +#define SWIGTYPE_p_std__complexT_double_t swig_types[138] +#define SWIGTYPE_p_std__functionT_double_fdoubleF_t swig_types[139] +#define SWIGTYPE_p_std__invalid_argument swig_types[140] +#define SWIGTYPE_p_std__lessT_std__string_t swig_types[141] +#define SWIGTYPE_p_std__mapT_std__string_double_t swig_types[142] +#define SWIGTYPE_p_std__pairT_double_double_t swig_types[143] +#define SWIGTYPE_p_std__vectorT_INode_const_p_t swig_types[144] +#define SWIGTYPE_p_std__vectorT_ParaMeta_std__allocatorT_ParaMeta_t_t swig_types[145] +#define SWIGTYPE_p_std__vectorT_Vec3T_double_t_t swig_types[146] +#define SWIGTYPE_p_std__vectorT_double_t swig_types[147] +#define SWIGTYPE_p_std__vectorT_int_t swig_types[148] +#define SWIGTYPE_p_std__vectorT_std__complexT_double_t_t swig_types[149] +#define SWIGTYPE_p_std__vectorT_std__pairT_double_double_t_t swig_types[150] +#define SWIGTYPE_p_std__vectorT_std__string_t swig_types[151] +#define SWIGTYPE_p_std__vectorT_std__vectorT_double_t_t swig_types[152] +#define SWIGTYPE_p_std__vectorT_std__vectorT_int_t_t swig_types[153] +#define SWIGTYPE_p_std__vectorT_unsigned_long_t swig_types[154] +#define SWIGTYPE_p_swig__SwigPyIterator swig_types[155] +#define SWIGTYPE_p_unsigned_char swig_types[156] +#define SWIGTYPE_p_unsigned_int swig_types[157] +#define SWIGTYPE_p_unsigned_long_long swig_types[158] +#define SWIGTYPE_p_unsigned_short swig_types[159] +#define SWIGTYPE_p_value_type swig_types[160] +static swig_type_info *swig_types[162]; +static swig_module_info swig_module = {swig_types, 161, 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) @@ -51657,7 +51653,7 @@ SWIGINTERN PyObject *_wrap_RoughnessMap_generateMap(PyObject *self, PyObject *ar void *argp1 = 0 ; int res1 = 0 ; PyObject *swig_obj[1] ; - RoughnessMap::double2d_t result; + double2d_t result; (void)self; if (!args) SWIG_fail; @@ -51678,7 +51674,7 @@ SWIGINTERN PyObject *_wrap_RoughnessMap_generateMap(PyObject *self, PyObject *ar SWIG_exception(SWIG_RuntimeError, msg.c_str()); } } - resultobj = SWIG_NewPointerObj((new RoughnessMap::double2d_t(result)), SWIGTYPE_p_FourierTransform__double2d_t, SWIG_POINTER_OWN | 0 ); + resultobj = SWIG_NewPointerObj((new double2d_t(result)), SWIGTYPE_p_double2d_t, SWIG_POINTER_OWN | 0 ); return resultobj; fail: return NULL; @@ -73121,7 +73117,7 @@ static PyMethodDef SwigMethods[] = { { "LayerRoughness_swigregister", LayerRoughness_swigregister, METH_O, NULL}, { "LayerRoughness_swiginit", LayerRoughness_swiginit, METH_VARARGS, NULL}, { "new_RoughnessMap", _wrap_new_RoughnessMap, METH_VARARGS, "RoughnessMap(size_t x_points, size_t y_points, double Lx, double Ly, LayerRoughness layerRoughness, int seed=-1)"}, - { "RoughnessMap_generateMap", _wrap_RoughnessMap_generateMap, METH_O, "RoughnessMap_generateMap(RoughnessMap self) -> RoughnessMap::double2d_t"}, + { "RoughnessMap_generateMap", _wrap_RoughnessMap_generateMap, METH_O, "RoughnessMap_generateMap(RoughnessMap self) -> double2d_t"}, { "RoughnessMap_generate", _wrap_RoughnessMap_generate, METH_O, "RoughnessMap_generate(RoughnessMap self) -> PyObject *"}, { "delete_RoughnessMap", _wrap_delete_RoughnessMap, METH_O, "delete_RoughnessMap(RoughnessMap self)"}, { "RoughnessMap_swigregister", RoughnessMap_swigregister, METH_O, NULL}, @@ -74874,7 +74870,6 @@ static swig_type_info _swigt__p_Cylinder = {"_p_Cylinder", "Cylinder *", 0, 0, ( static swig_type_info _swigt__p_Dodecahedron = {"_p_Dodecahedron", "Dodecahedron *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_EllipsoidalCylinder = {"_p_EllipsoidalCylinder", "EllipsoidalCylinder *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_ErfRoughness = {"_p_ErfRoughness", "ErfRoughness *", 0, 0, (void*)0, 0}; -static swig_type_info _swigt__p_FourierTransform__double2d_t = {"_p_FourierTransform__double2d_t", "RoughnessMap::double2d_t *|FourierTransform::double2d_t *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_FuzzySphere = {"_p_FuzzySphere", "FuzzySphere *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_GaussFisherPeakShape = {"_p_GaussFisherPeakShape", "GaussFisherPeakShape *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_GaussSphere = {"_p_GaussSphere", "GaussSphere *", 0, 0, (void*)0, 0}; @@ -74973,10 +74968,7 @@ static swig_type_info _swigt__p_Vec3T_std__complexT_double_t_t = {"_p_Vec3T_std_ static swig_type_info _swigt__p_WavevectorInfo = {"_p_WavevectorInfo", "WavevectorInfo *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_allocator_type = {"_p_allocator_type", "allocator_type *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_char = {"_p_char", "char *", 0, 0, (void*)0, 0}; -static swig_type_info _swigt__p_complex1d_t = {"_p_complex1d_t", "complex1d_t *", 0, 0, (void*)0, 0}; -static swig_type_info _swigt__p_complex2d_t = {"_p_complex2d_t", "complex2d_t *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_difference_type = {"_p_difference_type", "difference_type *", 0, 0, (void*)0, 0}; -static swig_type_info _swigt__p_double1d_t = {"_p_double1d_t", "double1d_t *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_double2d_t = {"_p_double2d_t", "double2d_t *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_first_type = {"_p_first_type", "first_type *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_int = {"_p_int", "int32_t *|int_fast16_t *|int_fast32_t *|int_least32_t *|intptr_t *|int *", 0, 0, (void*)0, 0}; @@ -75041,7 +75033,6 @@ static swig_type_info *swig_type_initial[] = { &_swigt__p_Dodecahedron, &_swigt__p_EllipsoidalCylinder, &_swigt__p_ErfRoughness, - &_swigt__p_FourierTransform__double2d_t, &_swigt__p_FuzzySphere, &_swigt__p_GaussFisherPeakShape, &_swigt__p_GaussSphere, @@ -75140,10 +75131,7 @@ static swig_type_info *swig_type_initial[] = { &_swigt__p_WavevectorInfo, &_swigt__p_allocator_type, &_swigt__p_char, - &_swigt__p_complex1d_t, - &_swigt__p_complex2d_t, &_swigt__p_difference_type, - &_swigt__p_double1d_t, &_swigt__p_double2d_t, &_swigt__p_first_type, &_swigt__p_int, @@ -75208,7 +75196,6 @@ static swig_cast_info _swigc__p_Cylinder[] = { {&_swigt__p_Cylinder, 0, 0, 0},{ static swig_cast_info _swigc__p_Dodecahedron[] = { {&_swigt__p_Dodecahedron, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_EllipsoidalCylinder[] = { {&_swigt__p_EllipsoidalCylinder, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_ErfRoughness[] = { {&_swigt__p_ErfRoughness, 0, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_FourierTransform__double2d_t[] = { {&_swigt__p_FourierTransform__double2d_t, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_FuzzySphere[] = { {&_swigt__p_FuzzySphere, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_GaussFisherPeakShape[] = { {&_swigt__p_GaussFisherPeakShape, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_GaussSphere[] = { {&_swigt__p_GaussSphere, 0, 0, 0},{0, 0, 0, 0}}; @@ -75307,10 +75294,7 @@ static swig_cast_info _swigc__p_Vec3T_std__complexT_double_t_t[] = { {&_swigt__ static swig_cast_info _swigc__p_WavevectorInfo[] = { {&_swigt__p_WavevectorInfo, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_allocator_type[] = { {&_swigt__p_allocator_type, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_char[] = { {&_swigt__p_char, 0, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_complex1d_t[] = { {&_swigt__p_complex1d_t, 0, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_complex2d_t[] = { {&_swigt__p_complex2d_t, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_difference_type[] = { {&_swigt__p_difference_type, 0, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_double1d_t[] = { {&_swigt__p_double1d_t, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_double2d_t[] = { {&_swigt__p_double2d_t, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_first_type[] = { {&_swigt__p_first_type, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_int[] = { {&_swigt__p_int, 0, 0, 0},{0, 0, 0, 0}}; @@ -75375,7 +75359,6 @@ static swig_cast_info *swig_cast_initial[] = { _swigc__p_Dodecahedron, _swigc__p_EllipsoidalCylinder, _swigc__p_ErfRoughness, - _swigc__p_FourierTransform__double2d_t, _swigc__p_FuzzySphere, _swigc__p_GaussFisherPeakShape, _swigc__p_GaussSphere, @@ -75474,10 +75457,7 @@ static swig_cast_info *swig_cast_initial[] = { _swigc__p_WavevectorInfo, _swigc__p_allocator_type, _swigc__p_char, - _swigc__p_complex1d_t, - _swigc__p_complex2d_t, _swigc__p_difference_type, - _swigc__p_double1d_t, _swigc__p_double2d_t, _swigc__p_first_type, _swigc__p_int, -- GitLab