From 912c34acd86d79384cc6cb668169cbbb117fec1f Mon Sep 17 00:00:00 2001 From: "Joachim Wuttke (h)" <j.wuttke@fz-juelich.de> Date: Fri, 14 Aug 2020 10:39:31 +0200 Subject: [PATCH] merge files ProfileRipple* --- Core/HardParticle/FormFactorRipple1.h | 2 +- Core/HardParticle/FormFactorRipple2.h | 2 +- Core/HardParticle/IProfileRipple.cpp | 134 ++++ Core/HardParticle/IProfileRipple.h | 103 ++++ Core/HardParticle/ProfileRipple1.cpp | 50 -- Core/HardParticle/ProfileRipple1.h | 50 -- Core/HardParticle/ProfileRipple2.cpp | 52 -- Core/HardParticle/ProfileRipple2.h | 53 -- Wrap/swig/libBornAgainCore.i | 5 +- auto/Wrap/libBornAgainCore.py | 77 ++- auto/Wrap/libBornAgainCore_wrap.cpp | 839 +++++++++++++------------- 11 files changed, 701 insertions(+), 666 deletions(-) create mode 100644 Core/HardParticle/IProfileRipple.cpp create mode 100644 Core/HardParticle/IProfileRipple.h delete mode 100644 Core/HardParticle/ProfileRipple1.cpp delete mode 100644 Core/HardParticle/ProfileRipple1.h delete mode 100644 Core/HardParticle/ProfileRipple2.cpp delete mode 100644 Core/HardParticle/ProfileRipple2.h diff --git a/Core/HardParticle/FormFactorRipple1.h b/Core/HardParticle/FormFactorRipple1.h index e8944b58a20..9c145fb7249 100644 --- a/Core/HardParticle/FormFactorRipple1.h +++ b/Core/HardParticle/FormFactorRipple1.h @@ -15,7 +15,7 @@ #ifndef BORNAGAIN_CORE_HARDPARTICLE_FORMFACTORRIPPLE1_H #define BORNAGAIN_CORE_HARDPARTICLE_FORMFACTORRIPPLE1_H -#include "Core/HardParticle/ProfileRipple1.h" +#include "Core/HardParticle/IProfileRipple.h" //! The form factor for a cosine ripple, with box profile in elongation direction. //! @ingroup legacyGrating diff --git a/Core/HardParticle/FormFactorRipple2.h b/Core/HardParticle/FormFactorRipple2.h index c3688a0966d..92f6d1cdbbf 100644 --- a/Core/HardParticle/FormFactorRipple2.h +++ b/Core/HardParticle/FormFactorRipple2.h @@ -15,7 +15,7 @@ #ifndef BORNAGAIN_CORE_HARDPARTICLE_FORMFACTORRIPPLE2_H #define BORNAGAIN_CORE_HARDPARTICLE_FORMFACTORRIPPLE2_H -#include "Core/HardParticle/ProfileRipple2.h" +#include "Core/HardParticle/IProfileRipple.h" //! The form factor for a cosine ripple, with box profile in elongation direction. //! @ingroup legacyGrating diff --git a/Core/HardParticle/IProfileRipple.cpp b/Core/HardParticle/IProfileRipple.cpp new file mode 100644 index 00000000000..1f7b4c28484 --- /dev/null +++ b/Core/HardParticle/IProfileRipple.cpp @@ -0,0 +1,134 @@ +// ************************************************************************** // +// +// BornAgain: simulate and fit scattering at grazing incidence +// +//! @file Core/HardParticle/IProfileRipple.cpp +//! @brief Implements class ProfileRipple2. +//! +//! @homepage http://www.bornagainproject.org +//! @license GNU General Public License v3 or higher (see COPYING) +//! @copyright Forschungszentrum Jülich GmbH 2018 +//! @authors Scientific Computing Group at MLZ (see CITATION, AUTHORS) +// +// ************************************************************************** // + +#include "Core/HardParticle/IProfileRipple.h" +#include "Core/HardParticle/Ripples.h" +#include "Core/Parametrization/RealParameter.h" +#include "Core/Shapes/RippleCosine.h" +#include "Core/Shapes/RippleSawtooth.h" + +// ************************************************************************** // +// interface IProfileRipple +// ************************************************************************** // + +//! @brief Constructor of cosine ripple. +//! @param length: length of the rectangular base in nanometers +//! @param width: width of the rectangular base in nanometers +//! @param height: height of the ripple in nanometers +IProfileRipple::IProfileRipple(double length, double width, double height) + : m_length(length), m_width(width), m_height(height) +{ + registerParameter("Length", &m_length).setUnit("nm").setNonnegative(); + registerParameter("Width", &m_width).setUnit("nm").setNonnegative(); + registerParameter("Height", &m_height).setUnit("nm").setNonnegative(); + onChange(); +} + +double IProfileRipple::radialExtension() const +{ + return (m_width + m_length) / 4.0; +} + +complex_t IProfileRipple::evaluate_for_q(cvector_t q) const +{ + return factor_x(q.x()) * factor_yz(q.y(), q.z()); +} + +//! Complex form factor. +complex_t IProfileRipple::factor_yz(complex_t qy, complex_t qz) const +{ + return ripples::profile_yz_cosine(qy, qz, m_width, m_height); +} + +void IProfileRipple::onChange() +{ + mP_shape.reset(new RippleCosine(m_length, m_width, m_height)); +} + +// ************************************************************************** // +// interface ProfileRipple1 +// ************************************************************************** // + +//! @brief Constructor of cosine ripple. +//! @param length: length of the rectangular base in nanometers +//! @param width: width of the rectangular base in nanometers +//! @param height: height of the ripple in nanometers +ProfileRipple1::ProfileRipple1(double length, double width, double height) + : m_length(length), m_width(width), m_height(height) +{ + registerParameter("Length", &m_length).setUnit("nm").setNonnegative(); + registerParameter("Width", &m_width).setUnit("nm").setNonnegative(); + registerParameter("Height", &m_height).setUnit("nm").setNonnegative(); + onChange(); +} + +double ProfileRipple1::radialExtension() const +{ + return (m_width + m_length) / 4.0; +} + +complex_t ProfileRipple1::evaluate_for_q(cvector_t q) const +{ + return factor_x(q.x()) * factor_yz(q.y(), q.z()); +} + +//! Complex form factor. +complex_t ProfileRipple1::factor_yz(complex_t qy, complex_t qz) const +{ + return ripples::profile_yz_cosine(qy, qz, m_width, m_height); +} + +void ProfileRipple1::onChange() +{ + mP_shape.reset(new RippleCosine(m_length, m_width, m_height)); +} + +// ************************************************************************** // +// interface ProfileRipple2 +// ************************************************************************** // + +//! @brief Constructor of triangular ripple. +//! @param length: length of the rectangular base in nanometers +//! @param width: width of the rectangular base in nanometers +//! @param height: height of the ripple in nanometers +ProfileRipple2::ProfileRipple2(double length, double width, double height, double asymmetry) + : m_length(length), m_width(width), m_height(height), m_asymmetry(asymmetry) +{ + registerParameter("Length", &m_length).setUnit("nm").setNonnegative(); + registerParameter("Width", &m_width).setUnit("nm").setNonnegative(); + registerParameter("Height", &m_height).setUnit("nm").setNonnegative(); + registerParameter("AsymmetryLength", &m_asymmetry).setUnit("nm"); + onChange(); +} + +double ProfileRipple2::radialExtension() const +{ + return (m_width + m_length) / 4.0; +} + +complex_t ProfileRipple2::evaluate_for_q(cvector_t q) const +{ + return factor_x(q.x()) * factor_yz(q.y(), q.z()); +} + +//! Complex form factor. +complex_t ProfileRipple2::factor_yz(complex_t qy, complex_t qz) const +{ + return ripples::profile_yz_triangular(qy, qz, m_width, m_height, m_asymmetry); +} + +void ProfileRipple2::onChange() +{ + mP_shape.reset(new RippleSawtooth(m_length, m_width, m_height, m_asymmetry)); +} diff --git a/Core/HardParticle/IProfileRipple.h b/Core/HardParticle/IProfileRipple.h new file mode 100644 index 00000000000..5d48eb0724d --- /dev/null +++ b/Core/HardParticle/IProfileRipple.h @@ -0,0 +1,103 @@ +// ************************************************************************** // +// +// BornAgain: simulate and fit scattering at grazing incidence +// +//! @file Core/HardParticle/IProfileRipple.h +//! @brief Defines interface classes IProfileRipple, ProfileRipple1, ProfileRipple2. +//! +//! @homepage http://www.bornagainproject.org +//! @license GNU General Public License v3 or higher (see COPYING) +//! @copyright Forschungszentrum Jülich GmbH 2018 +//! @authors Scientific Computing Group at MLZ (see CITATION, AUTHORS) +// +// ************************************************************************** // + +#ifndef BORNAGAIN_CORE_HARDPARTICLE_PROFILERIPPLE2_H +#define BORNAGAIN_CORE_HARDPARTICLE_PROFILERIPPLE2_H + +#include "Core/Scattering/IFormFactorBorn.h" + +//! Base class for form factors with a cosine ripple profile in the yz plane. + +class BA_CORE_API_ IProfileRipple : public IFormFactorBorn +{ +public: + IProfileRipple(double length, double width, double height); + + double getLength() const { return m_length; } + double getHeight() const { return m_height; } + double getWidth() const { return m_width; } + + double radialExtension() const override final; + + complex_t evaluate_for_q(cvector_t q) const override final; + +protected: + void onChange() override final; + virtual complex_t factor_x(complex_t qx) const = 0; + + double m_length; + double m_width; + double m_height; + +private: + complex_t factor_yz(complex_t qy, complex_t qz) const; +}; + +//! Base class for form factors with a cosine ripple profile in the yz plane. + +class BA_CORE_API_ ProfileRipple1 : public IFormFactorBorn +{ +public: + ProfileRipple1(double length, double width, double height); + + double getLength() const { return m_length; } + double getHeight() const { return m_height; } + double getWidth() const { return m_width; } + + double radialExtension() const override final; + + complex_t evaluate_for_q(cvector_t q) const override final; + +protected: + void onChange() override final; + virtual complex_t factor_x(complex_t qx) const = 0; + + double m_length; + double m_width; + double m_height; + +private: + complex_t factor_yz(complex_t qy, complex_t qz) const; +}; + +//! Base class for form factors with a triangular ripple profile in the yz plane. + +class BA_CORE_API_ ProfileRipple2 : public IFormFactorBorn +{ +public: + ProfileRipple2(double length, double width, double height, double asymmetry); + + double getLength() const { return m_length; } + double getHeight() const { return m_height; } + double getWidth() const { return m_width; } + double getAsymmetry() const { return m_asymmetry; } + + double radialExtension() const override final; + + complex_t evaluate_for_q(cvector_t q) const override final; + +protected: + void onChange() override final; + virtual complex_t factor_x(complex_t qx) const = 0; + + double m_length; + double m_width; + double m_height; + double m_asymmetry; + +private: + complex_t factor_yz(complex_t qy, complex_t qz) const; +}; + +#endif // BORNAGAIN_CORE_HARDPARTICLE_PROFILERIPPLE2_H diff --git a/Core/HardParticle/ProfileRipple1.cpp b/Core/HardParticle/ProfileRipple1.cpp deleted file mode 100644 index 6255ac8d7ad..00000000000 --- a/Core/HardParticle/ProfileRipple1.cpp +++ /dev/null @@ -1,50 +0,0 @@ -// ************************************************************************** // -// -// BornAgain: simulate and fit scattering at grazing incidence -// -//! @file Core/HardParticle/ProfileRipple1.cpp -//! @brief Implements class ProfileRipple1. -//! -//! @homepage http://www.bornagainproject.org -//! @license GNU General Public License v3 or higher (see COPYING) -//! @copyright Forschungszentrum Jülich GmbH 2018 -//! @authors Scientific Computing Group at MLZ (see CITATION, AUTHORS) -// -// ************************************************************************** // - -#include "Core/HardParticle/ProfileRipple1.h" -#include "Core/Basics/Exceptions.h" -#include "Core/Parametrization/RealParameter.h" -#include "Core/HardParticle/Ripples.h" -#include "Core/Shapes/RippleCosine.h" // from Shapes/ -#include "Core/Tools/MathFunctions.h" -#include "Fit/Tools/RealLimits.h" - -//! @brief Constructor of cosine ripple. -//! @param length: length of the rectangular base in nanometers -//! @param width: width of the rectangular base in nanometers -//! @param height: height of the ripple in nanometers -ProfileRipple1::ProfileRipple1(double length, double width, double height) - : m_length(length), m_width(width), m_height(height) -{ - registerParameter("Length", &m_length).setUnit("nm").setNonnegative(); - registerParameter("Width", &m_width).setUnit("nm").setNonnegative(); - registerParameter("Height", &m_height).setUnit("nm").setNonnegative(); - onChange(); -} - -double ProfileRipple1::radialExtension() const -{ - return (m_width + m_length) / 4.0; -} - -//! Complex form factor. -complex_t ProfileRipple1::factor_yz(complex_t qy, complex_t qz) const -{ - return ripples::profile_yz_cosine(qy, qz, m_width, m_height); -} - -void ProfileRipple1::onChange() -{ - mP_shape.reset(new RippleCosine(m_length, m_width, m_height)); -} diff --git a/Core/HardParticle/ProfileRipple1.h b/Core/HardParticle/ProfileRipple1.h deleted file mode 100644 index e4b00dbdc19..00000000000 --- a/Core/HardParticle/ProfileRipple1.h +++ /dev/null @@ -1,50 +0,0 @@ -// ************************************************************************** // -// -// BornAgain: simulate and fit scattering at grazing incidence -// -//! @file Core/HardParticle/ProfileRipple1.h -//! @brief Defines class ProfileRipple1. -//! -//! @homepage http://www.bornagainproject.org -//! @license GNU General Public License v3 or higher (see COPYING) -//! @copyright Forschungszentrum Jülich GmbH 2018 -//! @authors Scientific Computing Group at MLZ (see CITATION, AUTHORS) -// -// ************************************************************************** // - -#ifndef BORNAGAIN_CORE_HARDPARTICLE_PROFILERIPPLE1_H -#define BORNAGAIN_CORE_HARDPARTICLE_PROFILERIPPLE1_H - -#include "Core/Scattering/IFormFactorBorn.h" - -//! Base class for form factors with a cosine ripple profile in the yz plane. - -class BA_CORE_API_ ProfileRipple1 : public IFormFactorBorn -{ -public: - ProfileRipple1(double length, double width, double height); - - double getLength() const { return m_length; } - double getHeight() const { return m_height; } - double getWidth() const { return m_width; } - - double radialExtension() const override final; - - complex_t evaluate_for_q(cvector_t q) const override final - { - return factor_x(q.x()) * factor_yz(q.y(), q.z()); - } - -protected: - void onChange() override final; - virtual complex_t factor_x(complex_t qx) const = 0; - - double m_length; - double m_width; - double m_height; - -private: - complex_t factor_yz(complex_t qy, complex_t qz) const; -}; - -#endif // BORNAGAIN_CORE_HARDPARTICLE_PROFILERIPPLE1_H diff --git a/Core/HardParticle/ProfileRipple2.cpp b/Core/HardParticle/ProfileRipple2.cpp deleted file mode 100644 index 123dc6afa88..00000000000 --- a/Core/HardParticle/ProfileRipple2.cpp +++ /dev/null @@ -1,52 +0,0 @@ -// ************************************************************************** // -// -// BornAgain: simulate and fit scattering at grazing incidence -// -//! @file Core/HardParticle/ProfileRipple2.cpp -//! @brief Implements class ProfileRipple2. -//! -//! @homepage http://www.bornagainproject.org -//! @license GNU General Public License v3 or higher (see COPYING) -//! @copyright Forschungszentrum Jülich GmbH 2018 -//! @authors Scientific Computing Group at MLZ (see CITATION, AUTHORS) -// -// ************************************************************************** // - -#include "Core/HardParticle/ProfileRipple2.h" -#include "Core/Basics/Exceptions.h" -#include "Core/Basics/MathConstants.h" -#include "Core/HardParticle/Ripples.h" -#include "Core/Parametrization/RealParameter.h" -#include "Core/Shapes/RippleSawtooth.h" // from Shapes/ -#include "Core/Tools/MathFunctions.h" -#include "Fit/Tools/RealLimits.h" - -//! @brief Constructor of triangular ripple. -//! @param length: length of the rectangular base in nanometers -//! @param width: width of the rectangular base in nanometers -//! @param height: height of the ripple in nanometers -ProfileRipple2::ProfileRipple2(double length, double width, double height, double asymmetry) - : m_length(length), m_width(width), m_height(height), m_asymmetry(asymmetry) -{ - registerParameter("Length", &m_length).setUnit("nm").setNonnegative(); - registerParameter("Width", &m_width).setUnit("nm").setNonnegative(); - registerParameter("Height", &m_height).setUnit("nm").setNonnegative(); - registerParameter("AsymmetryLength", &m_asymmetry).setUnit("nm"); - onChange(); -} - -double ProfileRipple2::radialExtension() const -{ - return (m_width + m_length) / 4.0; -} - -//! Complex form factor. -complex_t ProfileRipple2::factor_yz(complex_t qy, complex_t qz) const -{ - return ripples::profile_yz_triangular(qy, qz, m_width, m_height, m_asymmetry); -} - -void ProfileRipple2::onChange() -{ - mP_shape.reset(new RippleSawtooth(m_length, m_width, m_height, m_asymmetry)); -} diff --git a/Core/HardParticle/ProfileRipple2.h b/Core/HardParticle/ProfileRipple2.h deleted file mode 100644 index 069a9954b0a..00000000000 --- a/Core/HardParticle/ProfileRipple2.h +++ /dev/null @@ -1,53 +0,0 @@ -// ************************************************************************** // -// -// BornAgain: simulate and fit scattering at grazing incidence -// -//! @file Core/HardParticle/ProfileRipple2.h -//! @brief Defines class ProfileRipple2. -//! -//! @homepage http://www.bornagainproject.org -//! @license GNU General Public License v3 or higher (see COPYING) -//! @copyright Forschungszentrum Jülich GmbH 2018 -//! @authors Scientific Computing Group at MLZ (see CITATION, AUTHORS) -// -// ************************************************************************** // - -#ifndef BORNAGAIN_CORE_HARDPARTICLE_PROFILERIPPLE2_H -#define BORNAGAIN_CORE_HARDPARTICLE_PROFILERIPPLE2_H - -#include "Core/Scattering/IFormFactorBorn.h" -#include "Core/Tools/Integrator.h" - -//! Base class for form factors with a triangular ripple profile in the yz plane. - -class BA_CORE_API_ ProfileRipple2 : public IFormFactorBorn -{ -public: - ProfileRipple2(double length, double width, double height, double asymmetry); - - double getLength() const { return m_length; } - double getHeight() const { return m_height; } - double getWidth() const { return m_width; } - double getAsymmetry() const { return m_asymmetry; } - - double radialExtension() const override final; - - complex_t evaluate_for_q(cvector_t q) const override final - { - return factor_x(q.x()) * factor_yz(q.y(), q.z()); - } - -protected: - void onChange() override final; - virtual complex_t factor_x(complex_t qx) const = 0; - - double m_length; - double m_width; - double m_height; - double m_asymmetry; - -private: - complex_t factor_yz(complex_t qy, complex_t qz) const; -}; - -#endif // BORNAGAIN_CORE_HARDPARTICLE_PROFILERIPPLE2_H diff --git a/Wrap/swig/libBornAgainCore.i b/Wrap/swig/libBornAgainCore.i index 9ef016e94e8..cb937cb2871 100644 --- a/Wrap/swig/libBornAgainCore.i +++ b/Wrap/swig/libBornAgainCore.i @@ -150,7 +150,6 @@ #include "Core/HardParticle/FormFactorTruncatedCube.h" #include "Core/HardParticle/FormFactorTruncatedSphere.h" #include "Core/HardParticle/FormFactorTruncatedSpheroid.h" -#include "Core/HardParticle/Ripples.h" #include "Core/InputOutput/IntensityDataIOFactory.h" #include "Core/Instrument/AngularSpecScan.h" #include "Core/Instrument/ChiSquaredModule.h" @@ -406,8 +405,7 @@ %include "Core/HardParticle/FormFactorPolyhedron.h" %include "Core/HardParticle/FormFactorPolyhedron.h" %include "Core/HardParticle/ProfileBar.h" -%include "Core/HardParticle/ProfileRipple1.h" -%include "Core/HardParticle/ProfileRipple2.h" +%include "Core/HardParticle/IProfileRipple.h" %include "Core/HardParticle/FormFactorAnisoPyramid.h" %include "Core/HardParticle/FormFactorBox.h" @@ -435,7 +433,6 @@ %include "Core/HardParticle/FormFactorTruncatedCube.h" %include "Core/HardParticle/FormFactorTruncatedSphere.h" %include "Core/HardParticle/FormFactorTruncatedSpheroid.h" -%include "Core/HardParticle/Ripples.h" %include "Core/SoftParticle/FormFactorGauss.h" %include "Core/SoftParticle/FormFactorSphereGaussianRadius.h" diff --git a/auto/Wrap/libBornAgainCore.py b/auto/Wrap/libBornAgainCore.py index 761dac428f7..d06dc15fcc8 100644 --- a/auto/Wrap/libBornAgainCore.py +++ b/auto/Wrap/libBornAgainCore.py @@ -15134,6 +15134,51 @@ class ProfileBar(IFormFactorBorn): # Register ProfileBar in _libBornAgainCore: _libBornAgainCore.ProfileBar_swigregister(ProfileBar) +class IProfileRipple(IFormFactorBorn): + r"""Proxy of C++ IProfileRipple class.""" + + thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") + + def __init__(self, *args, **kwargs): + raise AttributeError("No constructor defined - class is abstract") + __repr__ = _swig_repr + + def getLength(self): + r"""getLength(IProfileRipple self) -> double""" + return _libBornAgainCore.IProfileRipple_getLength(self) + + def getHeight(self): + r"""getHeight(IProfileRipple self) -> double""" + return _libBornAgainCore.IProfileRipple_getHeight(self) + + def getWidth(self): + r"""getWidth(IProfileRipple self) -> double""" + return _libBornAgainCore.IProfileRipple_getWidth(self) + + def radialExtension(self): + r""" + radialExtension(IProfileRipple self) -> double + virtual double IFormFactor::radialExtension() const =0 + + Returns the (approximate in some cases) radial size of the particle of this form factor's shape. This is used for SSCA calculations + + """ + return _libBornAgainCore.IProfileRipple_radialExtension(self) + + def evaluate_for_q(self, q): + r""" + evaluate_for_q(IProfileRipple self, cvector_t q) -> complex_t + virtual complex_t IFormFactorBorn::evaluate_for_q(cvector_t q) const =0 + + Returns scattering amplitude for complex scattering wavevector q=k_i-k_f. This method is public only for convenience of plotting form factors in Python. + + """ + return _libBornAgainCore.IProfileRipple_evaluate_for_q(self, q) + __swig_destroy__ = _libBornAgainCore.delete_IProfileRipple + +# Register IProfileRipple in _libBornAgainCore: +_libBornAgainCore.IProfileRipple_swigregister(IProfileRipple) + class ProfileRipple1(IFormFactorBorn): r""" @@ -17691,38 +17736,6 @@ class FormFactorTruncatedSpheroid(IFormFactorBorn): # Register FormFactorTruncatedSpheroid in _libBornAgainCore: _libBornAgainCore.FormFactorTruncatedSpheroid_swigregister(FormFactorTruncatedSpheroid) - -def factor_x_box(q, l): - r""" - factor_x_box(complex_t q, double l) -> complex_t - complex_t ripples::factor_x_box(complex_t q, double l) - - """ - return _libBornAgainCore.factor_x_box(q, l) - -def factor_x_Gauss(q, l): - r""" - factor_x_Gauss(complex_t q, double l) -> complex_t - complex_t ripples::factor_x_Gauss(complex_t q, double l) - - """ - return _libBornAgainCore.factor_x_Gauss(q, l) - -def factor_x_Lorentz(q, l): - r""" - factor_x_Lorentz(complex_t q, double l) -> complex_t - complex_t ripples::factor_x_Lorentz(complex_t q, double l) - - """ - return _libBornAgainCore.factor_x_Lorentz(q, l) - -def profile_yz_cosine(qy, qz, width, height): - r"""profile_yz_cosine(complex_t qy, complex_t qz, double width, double height) -> complex_t""" - return _libBornAgainCore.profile_yz_cosine(qy, qz, width, height) - -def profile_yz_triangular(qy, qz, width, height, asymmetry): - r"""profile_yz_triangular(complex_t qy, complex_t qz, double width, double height, double asymmetry) -> complex_t""" - return _libBornAgainCore.profile_yz_triangular(qy, qz, width, height, asymmetry) class FormFactorGaussSphere(IFormFactorBorn): r"""Proxy of C++ FormFactorGaussSphere class.""" diff --git a/auto/Wrap/libBornAgainCore_wrap.cpp b/auto/Wrap/libBornAgainCore_wrap.cpp index d2ae11d1204..857d91fd4ea 100644 --- a/auto/Wrap/libBornAgainCore_wrap.cpp +++ b/auto/Wrap/libBornAgainCore_wrap.cpp @@ -3209,203 +3209,204 @@ namespace Swig { #define SWIGTYPE_p_IParticle swig_types[141] #define SWIGTYPE_p_IPeakShape swig_types[142] #define SWIGTYPE_p_IPixel swig_types[143] -#define SWIGTYPE_p_IResolutionFunction2D swig_types[144] -#define SWIGTYPE_p_IRotation swig_types[145] -#define SWIGTYPE_p_ISample swig_types[146] -#define SWIGTYPE_p_ISelectionRule swig_types[147] -#define SWIGTYPE_p_IShape2D swig_types[148] -#define SWIGTYPE_p_ISpecularScan swig_types[149] -#define SWIGTYPE_p_IUnitConverter swig_types[150] -#define SWIGTYPE_p_IVarianceFunction swig_types[151] -#define SWIGTYPE_p_IdentityRotation swig_types[152] -#define SWIGTYPE_p_Instrument swig_types[153] -#define SWIGTYPE_p_IntensityDataIOFactory swig_types[154] -#define SWIGTYPE_p_IntensityFunctionLog swig_types[155] -#define SWIGTYPE_p_IntensityFunctionSqrt swig_types[156] -#define SWIGTYPE_p_InterferenceFunction1DLattice swig_types[157] -#define SWIGTYPE_p_InterferenceFunction2DLattice swig_types[158] -#define SWIGTYPE_p_InterferenceFunction2DParaCrystal swig_types[159] -#define SWIGTYPE_p_InterferenceFunction2DSuperLattice swig_types[160] -#define SWIGTYPE_p_InterferenceFunction3DLattice swig_types[161] -#define SWIGTYPE_p_InterferenceFunctionFinite2DLattice swig_types[162] -#define SWIGTYPE_p_InterferenceFunctionFinite3DLattice swig_types[163] -#define SWIGTYPE_p_InterferenceFunctionHardDisk swig_types[164] -#define SWIGTYPE_p_InterferenceFunctionNone swig_types[165] -#define SWIGTYPE_p_InterferenceFunctionRadialParaCrystal swig_types[166] -#define SWIGTYPE_p_InterferenceFunctionTwin swig_types[167] -#define SWIGTYPE_p_IsGISAXSDetector swig_types[168] -#define SWIGTYPE_p_IsotropicGaussPeakShape swig_types[169] -#define SWIGTYPE_p_IsotropicLorentzPeakShape swig_types[170] -#define SWIGTYPE_p_IterationInfo swig_types[171] -#define SWIGTYPE_p_Lattice swig_types[172] -#define SWIGTYPE_p_Lattice2D swig_types[173] -#define SWIGTYPE_p_Lattice2D__ReciprocalBases swig_types[174] -#define SWIGTYPE_p_Layer swig_types[175] -#define SWIGTYPE_p_LayerInterface swig_types[176] -#define SWIGTYPE_p_LayerRoughness swig_types[177] -#define SWIGTYPE_p_Line swig_types[178] -#define SWIGTYPE_p_LorentzFisherPeakShape swig_types[179] -#define SWIGTYPE_p_Material swig_types[180] -#define SWIGTYPE_p_MesoCrystal swig_types[181] -#define SWIGTYPE_p_MillerIndex swig_types[182] -#define SWIGTYPE_p_MillerIndexOrientation swig_types[183] -#define SWIGTYPE_p_MisesFisherGaussPeakShape swig_types[184] -#define SWIGTYPE_p_MisesGaussPeakShape swig_types[185] -#define SWIGTYPE_p_MultiLayer swig_types[186] -#define SWIGTYPE_p_NodeMeta swig_types[187] -#define SWIGTYPE_p_OffSpecSimulation swig_types[188] -#define SWIGTYPE_p_OutputDataIteratorT_double_OutputDataT_double_t_t swig_types[189] -#define SWIGTYPE_p_OutputDataIteratorT_double_const_OutputDataT_double_t_const_t swig_types[190] -#define SWIGTYPE_p_OutputDataT_CumulativeValue_t swig_types[191] -#define SWIGTYPE_p_OutputDataT_bool_t swig_types[192] -#define SWIGTYPE_p_OutputDataT_double_t swig_types[193] -#define SWIGTYPE_p_ParaMeta swig_types[194] -#define SWIGTYPE_p_ParameterDistribution swig_types[195] -#define SWIGTYPE_p_ParameterPool swig_types[196] -#define SWIGTYPE_p_ParameterSample swig_types[197] -#define SWIGTYPE_p_Particle swig_types[198] -#define SWIGTYPE_p_ParticleComposition swig_types[199] -#define SWIGTYPE_p_ParticleCoreShell swig_types[200] -#define SWIGTYPE_p_ParticleDistribution swig_types[201] -#define SWIGTYPE_p_ParticleLayout swig_types[202] -#define SWIGTYPE_p_ParticleLimits swig_types[203] -#define SWIGTYPE_p_PoissonNoiseBackground swig_types[204] -#define SWIGTYPE_p_Polygon swig_types[205] -#define SWIGTYPE_p_PolygonPrivate swig_types[206] -#define SWIGTYPE_p_PolygonalTopology swig_types[207] -#define SWIGTYPE_p_PolyhedralEdge swig_types[208] -#define SWIGTYPE_p_PolyhedralFace swig_types[209] -#define SWIGTYPE_p_PolyhedralTopology swig_types[210] -#define SWIGTYPE_p_ProfileBar swig_types[211] -#define SWIGTYPE_p_ProfileRipple1 swig_types[212] -#define SWIGTYPE_p_ProfileRipple2 swig_types[213] -#define SWIGTYPE_p_ProgressHandler__Callback_t swig_types[214] -#define SWIGTYPE_p_PyBuilderCallback swig_types[215] -#define SWIGTYPE_p_PyObserverCallback swig_types[216] -#define SWIGTYPE_p_QSpecScan swig_types[217] -#define SWIGTYPE_p_RangedDistribution swig_types[218] -#define SWIGTYPE_p_RangedDistributionCosine swig_types[219] -#define SWIGTYPE_p_RangedDistributionGate swig_types[220] -#define SWIGTYPE_p_RangedDistributionGaussian swig_types[221] -#define SWIGTYPE_p_RangedDistributionLogNormal swig_types[222] -#define SWIGTYPE_p_RangedDistributionLorentz swig_types[223] -#define SWIGTYPE_p_RealLimits swig_types[224] -#define SWIGTYPE_p_RealParameter swig_types[225] -#define SWIGTYPE_p_Rectangle swig_types[226] -#define SWIGTYPE_p_RectangularDetector swig_types[227] -#define SWIGTYPE_p_RectangularPixel swig_types[228] -#define SWIGTYPE_p_RegionOfInterest swig_types[229] -#define SWIGTYPE_p_ResolutionFunction2DGaussian swig_types[230] -#define SWIGTYPE_p_RotationEuler swig_types[231] -#define SWIGTYPE_p_RotationX swig_types[232] -#define SWIGTYPE_p_RotationY swig_types[233] -#define SWIGTYPE_p_RotationZ swig_types[234] -#define SWIGTYPE_p_RoughnessModelWrap swig_types[235] -#define SWIGTYPE_p_RoughnessModelWrap__RoughnessModel swig_types[236] -#define SWIGTYPE_p_SafePointerVectorT_IParticle_t swig_types[237] -#define SWIGTYPE_p_SampleBuilderFactory swig_types[238] -#define SWIGTYPE_p_ScanResolution swig_types[239] -#define SWIGTYPE_p_SimpleSelectionRule swig_types[240] -#define SWIGTYPE_p_Simulation swig_types[241] -#define SWIGTYPE_p_Simulation2D swig_types[242] -#define SWIGTYPE_p_SimulationFactory swig_types[243] -#define SWIGTYPE_p_SimulationOptions swig_types[244] -#define SWIGTYPE_p_SimulationResult swig_types[245] -#define SWIGTYPE_p_SlicedParticle swig_types[246] -#define SWIGTYPE_p_SlicingEffects swig_types[247] -#define SWIGTYPE_p_SpecularDetector1D swig_types[248] -#define SWIGTYPE_p_SpecularSimulation swig_types[249] -#define SWIGTYPE_p_SphericalDetector swig_types[250] -#define SWIGTYPE_p_SphericalPixel swig_types[251] -#define SWIGTYPE_p_SquareLattice swig_types[252] -#define SWIGTYPE_p_ThreadInfo swig_types[253] -#define SWIGTYPE_p_Transform3D swig_types[254] -#define SWIGTYPE_p_VariableBinAxis swig_types[255] -#define SWIGTYPE_p_VarianceConstantFunction swig_types[256] -#define SWIGTYPE_p_VarianceSimFunction swig_types[257] -#define SWIGTYPE_p_VerticalLine swig_types[258] -#define SWIGTYPE_p_WavevectorInfo swig_types[259] -#define SWIGTYPE_p_ZLimits swig_types[260] -#define SWIGTYPE_p_allocator_type swig_types[261] -#define SWIGTYPE_p_bool swig_types[262] -#define SWIGTYPE_p_char swig_types[263] -#define SWIGTYPE_p_const_iterator swig_types[264] -#define SWIGTYPE_p_corr_matrix_t swig_types[265] -#define SWIGTYPE_p_difference_type swig_types[266] -#define SWIGTYPE_p_double swig_types[267] -#define SWIGTYPE_p_first_type swig_types[268] -#define SWIGTYPE_p_int swig_types[269] -#define SWIGTYPE_p_iterator swig_types[270] -#define SWIGTYPE_p_key_type swig_types[271] -#define SWIGTYPE_p_long_long swig_types[272] -#define SWIGTYPE_p_mapped_type swig_types[273] -#define SWIGTYPE_p_observer_t swig_types[274] -#define SWIGTYPE_p_p_PyObject swig_types[275] -#define SWIGTYPE_p_parameters_t swig_types[276] -#define SWIGTYPE_p_second_type swig_types[277] -#define SWIGTYPE_p_short swig_types[278] -#define SWIGTYPE_p_signed_char swig_types[279] -#define SWIGTYPE_p_size_type swig_types[280] -#define SWIGTYPE_p_std__allocatorT_AxisInfo_t swig_types[281] -#define SWIGTYPE_p_std__allocatorT_BasicVector3DT_double_t_t swig_types[282] -#define SWIGTYPE_p_std__allocatorT_BasicVector3DT_std__complexT_double_t_t_t swig_types[283] -#define SWIGTYPE_p_std__allocatorT_IFormFactor_p_t swig_types[284] -#define SWIGTYPE_p_std__allocatorT_INode_const_p_t swig_types[285] -#define SWIGTYPE_p_std__allocatorT_INode_p_t swig_types[286] -#define SWIGTYPE_p_std__allocatorT_ParameterSample_t swig_types[287] -#define SWIGTYPE_p_std__allocatorT_double_t swig_types[288] -#define SWIGTYPE_p_std__allocatorT_int_t swig_types[289] -#define SWIGTYPE_p_std__allocatorT_std__complexT_double_t_t swig_types[290] -#define SWIGTYPE_p_std__allocatorT_std__pairT_double_double_t_t swig_types[291] -#define SWIGTYPE_p_std__allocatorT_std__pairT_std__string_const_double_t_t swig_types[292] -#define SWIGTYPE_p_std__allocatorT_std__string_t swig_types[293] -#define SWIGTYPE_p_std__allocatorT_std__vectorT_double_std__allocatorT_double_t_t_t swig_types[294] -#define SWIGTYPE_p_std__allocatorT_std__vectorT_int_std__allocatorT_int_t_t_t swig_types[295] -#define SWIGTYPE_p_std__allocatorT_unsigned_long_t swig_types[296] -#define SWIGTYPE_p_std__complexT_double_t swig_types[297] -#define SWIGTYPE_p_std__functionT_IMultiLayerBuilder_pfF_t swig_types[298] -#define SWIGTYPE_p_std__functionT_Simulation_pfF_t swig_types[299] -#define SWIGTYPE_p_std__functionT_void_fF_t swig_types[300] -#define SWIGTYPE_p_std__functionT_void_fSimulationAreaIterator_const_RF_t swig_types[301] -#define SWIGTYPE_p_std__invalid_argument swig_types[302] -#define SWIGTYPE_p_std__lessT_std__string_t swig_types[303] -#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[304] -#define SWIGTYPE_p_std__pairT_double_double_t swig_types[305] -#define SWIGTYPE_p_std__shared_ptrT_IMultiLayerBuilder_t swig_types[306] -#define SWIGTYPE_p_std__shared_ptrT_IObserver_t swig_types[307] -#define SWIGTYPE_p_std__vectorT_AxesUnitsWrap__AxesUnits_std__allocatorT_AxesUnitsWrap__AxesUnits_t_t swig_types[308] -#define SWIGTYPE_p_std__vectorT_AxisInfo_std__allocatorT_AxisInfo_t_t swig_types[309] -#define SWIGTYPE_p_std__vectorT_BasicVector3DT_double_t_std__allocatorT_BasicVector3DT_double_t_t_t swig_types[310] -#define SWIGTYPE_p_std__vectorT_BasicVector3DT_std__complexT_double_t_t_std__allocatorT_BasicVector3DT_std__complexT_double_t_t_t_t swig_types[311] -#define SWIGTYPE_p_std__vectorT_HomogeneousRegion_std__allocatorT_HomogeneousRegion_t_t swig_types[312] -#define SWIGTYPE_p_std__vectorT_IFormFactor_p_std__allocatorT_IFormFactor_p_t_t swig_types[313] -#define SWIGTYPE_p_std__vectorT_ILayout_const_p_std__allocatorT_ILayout_const_p_t_t swig_types[314] -#define SWIGTYPE_p_std__vectorT_INode_const_p_std__allocatorT_INode_const_p_t_t swig_types[315] -#define SWIGTYPE_p_std__vectorT_INode_p_std__allocatorT_INode_p_t_t swig_types[316] -#define SWIGTYPE_p_std__vectorT_Material_const_p_std__allocatorT_Material_const_p_t_t swig_types[317] -#define SWIGTYPE_p_std__vectorT_ParaMeta_std__allocatorT_ParaMeta_t_t swig_types[318] -#define SWIGTYPE_p_std__vectorT_ParameterSample_std__allocatorT_ParameterSample_t_t swig_types[319] -#define SWIGTYPE_p_std__vectorT_PolygonalTopology_std__allocatorT_PolygonalTopology_t_t swig_types[320] -#define SWIGTYPE_p_std__vectorT_RealParameter_p_std__allocatorT_RealParameter_p_t_t swig_types[321] -#define SWIGTYPE_p_std__vectorT_SimulationElement_std__allocatorT_SimulationElement_t_t swig_types[322] -#define SWIGTYPE_p_std__vectorT_double_std__allocatorT_double_t_t swig_types[323] -#define SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t swig_types[324] -#define SWIGTYPE_p_std__vectorT_size_t_std__allocatorT_size_t_t_t swig_types[325] -#define SWIGTYPE_p_std__vectorT_std__complexT_double_t_std__allocatorT_std__complexT_double_t_t_t swig_types[326] -#define SWIGTYPE_p_std__vectorT_std__pairT_double_double_t_std__allocatorT_std__pairT_double_double_t_t_t swig_types[327] -#define SWIGTYPE_p_std__vectorT_std__string_std__allocatorT_std__string_t_t swig_types[328] -#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[329] -#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[330] -#define SWIGTYPE_p_std__vectorT_unsigned_int_std__allocatorT_unsigned_int_t_t swig_types[331] -#define SWIGTYPE_p_std__vectorT_unsigned_long_std__allocatorT_unsigned_long_t_t swig_types[332] -#define SWIGTYPE_p_swig__SwigPyIterator swig_types[333] -#define SWIGTYPE_p_unsigned_char swig_types[334] -#define SWIGTYPE_p_unsigned_int swig_types[335] -#define SWIGTYPE_p_unsigned_long_long swig_types[336] -#define SWIGTYPE_p_unsigned_short swig_types[337] -#define SWIGTYPE_p_value_type swig_types[338] -static swig_type_info *swig_types[340]; -static swig_module_info swig_module = {swig_types, 339, 0, 0, 0, 0}; +#define SWIGTYPE_p_IProfileRipple swig_types[144] +#define SWIGTYPE_p_IResolutionFunction2D swig_types[145] +#define SWIGTYPE_p_IRotation swig_types[146] +#define SWIGTYPE_p_ISample swig_types[147] +#define SWIGTYPE_p_ISelectionRule swig_types[148] +#define SWIGTYPE_p_IShape2D swig_types[149] +#define SWIGTYPE_p_ISpecularScan swig_types[150] +#define SWIGTYPE_p_IUnitConverter swig_types[151] +#define SWIGTYPE_p_IVarianceFunction swig_types[152] +#define SWIGTYPE_p_IdentityRotation swig_types[153] +#define SWIGTYPE_p_Instrument swig_types[154] +#define SWIGTYPE_p_IntensityDataIOFactory swig_types[155] +#define SWIGTYPE_p_IntensityFunctionLog swig_types[156] +#define SWIGTYPE_p_IntensityFunctionSqrt swig_types[157] +#define SWIGTYPE_p_InterferenceFunction1DLattice swig_types[158] +#define SWIGTYPE_p_InterferenceFunction2DLattice swig_types[159] +#define SWIGTYPE_p_InterferenceFunction2DParaCrystal swig_types[160] +#define SWIGTYPE_p_InterferenceFunction2DSuperLattice swig_types[161] +#define SWIGTYPE_p_InterferenceFunction3DLattice swig_types[162] +#define SWIGTYPE_p_InterferenceFunctionFinite2DLattice swig_types[163] +#define SWIGTYPE_p_InterferenceFunctionFinite3DLattice swig_types[164] +#define SWIGTYPE_p_InterferenceFunctionHardDisk swig_types[165] +#define SWIGTYPE_p_InterferenceFunctionNone swig_types[166] +#define SWIGTYPE_p_InterferenceFunctionRadialParaCrystal swig_types[167] +#define SWIGTYPE_p_InterferenceFunctionTwin swig_types[168] +#define SWIGTYPE_p_IsGISAXSDetector swig_types[169] +#define SWIGTYPE_p_IsotropicGaussPeakShape swig_types[170] +#define SWIGTYPE_p_IsotropicLorentzPeakShape swig_types[171] +#define SWIGTYPE_p_IterationInfo swig_types[172] +#define SWIGTYPE_p_Lattice swig_types[173] +#define SWIGTYPE_p_Lattice2D swig_types[174] +#define SWIGTYPE_p_Lattice2D__ReciprocalBases swig_types[175] +#define SWIGTYPE_p_Layer swig_types[176] +#define SWIGTYPE_p_LayerInterface swig_types[177] +#define SWIGTYPE_p_LayerRoughness swig_types[178] +#define SWIGTYPE_p_Line swig_types[179] +#define SWIGTYPE_p_LorentzFisherPeakShape swig_types[180] +#define SWIGTYPE_p_Material swig_types[181] +#define SWIGTYPE_p_MesoCrystal swig_types[182] +#define SWIGTYPE_p_MillerIndex swig_types[183] +#define SWIGTYPE_p_MillerIndexOrientation swig_types[184] +#define SWIGTYPE_p_MisesFisherGaussPeakShape swig_types[185] +#define SWIGTYPE_p_MisesGaussPeakShape swig_types[186] +#define SWIGTYPE_p_MultiLayer swig_types[187] +#define SWIGTYPE_p_NodeMeta swig_types[188] +#define SWIGTYPE_p_OffSpecSimulation swig_types[189] +#define SWIGTYPE_p_OutputDataIteratorT_double_OutputDataT_double_t_t swig_types[190] +#define SWIGTYPE_p_OutputDataIteratorT_double_const_OutputDataT_double_t_const_t swig_types[191] +#define SWIGTYPE_p_OutputDataT_CumulativeValue_t swig_types[192] +#define SWIGTYPE_p_OutputDataT_bool_t swig_types[193] +#define SWIGTYPE_p_OutputDataT_double_t swig_types[194] +#define SWIGTYPE_p_ParaMeta swig_types[195] +#define SWIGTYPE_p_ParameterDistribution swig_types[196] +#define SWIGTYPE_p_ParameterPool swig_types[197] +#define SWIGTYPE_p_ParameterSample swig_types[198] +#define SWIGTYPE_p_Particle swig_types[199] +#define SWIGTYPE_p_ParticleComposition swig_types[200] +#define SWIGTYPE_p_ParticleCoreShell swig_types[201] +#define SWIGTYPE_p_ParticleDistribution swig_types[202] +#define SWIGTYPE_p_ParticleLayout swig_types[203] +#define SWIGTYPE_p_ParticleLimits swig_types[204] +#define SWIGTYPE_p_PoissonNoiseBackground swig_types[205] +#define SWIGTYPE_p_Polygon swig_types[206] +#define SWIGTYPE_p_PolygonPrivate swig_types[207] +#define SWIGTYPE_p_PolygonalTopology swig_types[208] +#define SWIGTYPE_p_PolyhedralEdge swig_types[209] +#define SWIGTYPE_p_PolyhedralFace swig_types[210] +#define SWIGTYPE_p_PolyhedralTopology swig_types[211] +#define SWIGTYPE_p_ProfileBar swig_types[212] +#define SWIGTYPE_p_ProfileRipple1 swig_types[213] +#define SWIGTYPE_p_ProfileRipple2 swig_types[214] +#define SWIGTYPE_p_ProgressHandler__Callback_t swig_types[215] +#define SWIGTYPE_p_PyBuilderCallback swig_types[216] +#define SWIGTYPE_p_PyObserverCallback swig_types[217] +#define SWIGTYPE_p_QSpecScan swig_types[218] +#define SWIGTYPE_p_RangedDistribution swig_types[219] +#define SWIGTYPE_p_RangedDistributionCosine swig_types[220] +#define SWIGTYPE_p_RangedDistributionGate swig_types[221] +#define SWIGTYPE_p_RangedDistributionGaussian swig_types[222] +#define SWIGTYPE_p_RangedDistributionLogNormal swig_types[223] +#define SWIGTYPE_p_RangedDistributionLorentz swig_types[224] +#define SWIGTYPE_p_RealLimits swig_types[225] +#define SWIGTYPE_p_RealParameter swig_types[226] +#define SWIGTYPE_p_Rectangle swig_types[227] +#define SWIGTYPE_p_RectangularDetector swig_types[228] +#define SWIGTYPE_p_RectangularPixel swig_types[229] +#define SWIGTYPE_p_RegionOfInterest swig_types[230] +#define SWIGTYPE_p_ResolutionFunction2DGaussian swig_types[231] +#define SWIGTYPE_p_RotationEuler swig_types[232] +#define SWIGTYPE_p_RotationX swig_types[233] +#define SWIGTYPE_p_RotationY swig_types[234] +#define SWIGTYPE_p_RotationZ swig_types[235] +#define SWIGTYPE_p_RoughnessModelWrap swig_types[236] +#define SWIGTYPE_p_RoughnessModelWrap__RoughnessModel swig_types[237] +#define SWIGTYPE_p_SafePointerVectorT_IParticle_t swig_types[238] +#define SWIGTYPE_p_SampleBuilderFactory swig_types[239] +#define SWIGTYPE_p_ScanResolution swig_types[240] +#define SWIGTYPE_p_SimpleSelectionRule swig_types[241] +#define SWIGTYPE_p_Simulation swig_types[242] +#define SWIGTYPE_p_Simulation2D swig_types[243] +#define SWIGTYPE_p_SimulationFactory swig_types[244] +#define SWIGTYPE_p_SimulationOptions swig_types[245] +#define SWIGTYPE_p_SimulationResult swig_types[246] +#define SWIGTYPE_p_SlicedParticle swig_types[247] +#define SWIGTYPE_p_SlicingEffects swig_types[248] +#define SWIGTYPE_p_SpecularDetector1D swig_types[249] +#define SWIGTYPE_p_SpecularSimulation swig_types[250] +#define SWIGTYPE_p_SphericalDetector swig_types[251] +#define SWIGTYPE_p_SphericalPixel swig_types[252] +#define SWIGTYPE_p_SquareLattice swig_types[253] +#define SWIGTYPE_p_ThreadInfo swig_types[254] +#define SWIGTYPE_p_Transform3D swig_types[255] +#define SWIGTYPE_p_VariableBinAxis swig_types[256] +#define SWIGTYPE_p_VarianceConstantFunction swig_types[257] +#define SWIGTYPE_p_VarianceSimFunction swig_types[258] +#define SWIGTYPE_p_VerticalLine swig_types[259] +#define SWIGTYPE_p_WavevectorInfo swig_types[260] +#define SWIGTYPE_p_ZLimits swig_types[261] +#define SWIGTYPE_p_allocator_type swig_types[262] +#define SWIGTYPE_p_bool swig_types[263] +#define SWIGTYPE_p_char swig_types[264] +#define SWIGTYPE_p_const_iterator swig_types[265] +#define SWIGTYPE_p_corr_matrix_t swig_types[266] +#define SWIGTYPE_p_difference_type swig_types[267] +#define SWIGTYPE_p_double swig_types[268] +#define SWIGTYPE_p_first_type swig_types[269] +#define SWIGTYPE_p_int swig_types[270] +#define SWIGTYPE_p_iterator swig_types[271] +#define SWIGTYPE_p_key_type swig_types[272] +#define SWIGTYPE_p_long_long swig_types[273] +#define SWIGTYPE_p_mapped_type swig_types[274] +#define SWIGTYPE_p_observer_t swig_types[275] +#define SWIGTYPE_p_p_PyObject swig_types[276] +#define SWIGTYPE_p_parameters_t swig_types[277] +#define SWIGTYPE_p_second_type swig_types[278] +#define SWIGTYPE_p_short swig_types[279] +#define SWIGTYPE_p_signed_char swig_types[280] +#define SWIGTYPE_p_size_type swig_types[281] +#define SWIGTYPE_p_std__allocatorT_AxisInfo_t swig_types[282] +#define SWIGTYPE_p_std__allocatorT_BasicVector3DT_double_t_t swig_types[283] +#define SWIGTYPE_p_std__allocatorT_BasicVector3DT_std__complexT_double_t_t_t swig_types[284] +#define SWIGTYPE_p_std__allocatorT_IFormFactor_p_t swig_types[285] +#define SWIGTYPE_p_std__allocatorT_INode_const_p_t swig_types[286] +#define SWIGTYPE_p_std__allocatorT_INode_p_t swig_types[287] +#define SWIGTYPE_p_std__allocatorT_ParameterSample_t swig_types[288] +#define SWIGTYPE_p_std__allocatorT_double_t swig_types[289] +#define SWIGTYPE_p_std__allocatorT_int_t swig_types[290] +#define SWIGTYPE_p_std__allocatorT_std__complexT_double_t_t swig_types[291] +#define SWIGTYPE_p_std__allocatorT_std__pairT_double_double_t_t swig_types[292] +#define SWIGTYPE_p_std__allocatorT_std__pairT_std__string_const_double_t_t swig_types[293] +#define SWIGTYPE_p_std__allocatorT_std__string_t swig_types[294] +#define SWIGTYPE_p_std__allocatorT_std__vectorT_double_std__allocatorT_double_t_t_t swig_types[295] +#define SWIGTYPE_p_std__allocatorT_std__vectorT_int_std__allocatorT_int_t_t_t swig_types[296] +#define SWIGTYPE_p_std__allocatorT_unsigned_long_t swig_types[297] +#define SWIGTYPE_p_std__complexT_double_t swig_types[298] +#define SWIGTYPE_p_std__functionT_IMultiLayerBuilder_pfF_t swig_types[299] +#define SWIGTYPE_p_std__functionT_Simulation_pfF_t swig_types[300] +#define SWIGTYPE_p_std__functionT_void_fF_t swig_types[301] +#define SWIGTYPE_p_std__functionT_void_fSimulationAreaIterator_const_RF_t swig_types[302] +#define SWIGTYPE_p_std__invalid_argument swig_types[303] +#define SWIGTYPE_p_std__lessT_std__string_t swig_types[304] +#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[305] +#define SWIGTYPE_p_std__pairT_double_double_t swig_types[306] +#define SWIGTYPE_p_std__shared_ptrT_IMultiLayerBuilder_t swig_types[307] +#define SWIGTYPE_p_std__shared_ptrT_IObserver_t swig_types[308] +#define SWIGTYPE_p_std__vectorT_AxesUnitsWrap__AxesUnits_std__allocatorT_AxesUnitsWrap__AxesUnits_t_t swig_types[309] +#define SWIGTYPE_p_std__vectorT_AxisInfo_std__allocatorT_AxisInfo_t_t swig_types[310] +#define SWIGTYPE_p_std__vectorT_BasicVector3DT_double_t_std__allocatorT_BasicVector3DT_double_t_t_t swig_types[311] +#define SWIGTYPE_p_std__vectorT_BasicVector3DT_std__complexT_double_t_t_std__allocatorT_BasicVector3DT_std__complexT_double_t_t_t_t swig_types[312] +#define SWIGTYPE_p_std__vectorT_HomogeneousRegion_std__allocatorT_HomogeneousRegion_t_t swig_types[313] +#define SWIGTYPE_p_std__vectorT_IFormFactor_p_std__allocatorT_IFormFactor_p_t_t swig_types[314] +#define SWIGTYPE_p_std__vectorT_ILayout_const_p_std__allocatorT_ILayout_const_p_t_t swig_types[315] +#define SWIGTYPE_p_std__vectorT_INode_const_p_std__allocatorT_INode_const_p_t_t swig_types[316] +#define SWIGTYPE_p_std__vectorT_INode_p_std__allocatorT_INode_p_t_t swig_types[317] +#define SWIGTYPE_p_std__vectorT_Material_const_p_std__allocatorT_Material_const_p_t_t swig_types[318] +#define SWIGTYPE_p_std__vectorT_ParaMeta_std__allocatorT_ParaMeta_t_t swig_types[319] +#define SWIGTYPE_p_std__vectorT_ParameterSample_std__allocatorT_ParameterSample_t_t swig_types[320] +#define SWIGTYPE_p_std__vectorT_PolygonalTopology_std__allocatorT_PolygonalTopology_t_t swig_types[321] +#define SWIGTYPE_p_std__vectorT_RealParameter_p_std__allocatorT_RealParameter_p_t_t swig_types[322] +#define SWIGTYPE_p_std__vectorT_SimulationElement_std__allocatorT_SimulationElement_t_t swig_types[323] +#define SWIGTYPE_p_std__vectorT_double_std__allocatorT_double_t_t swig_types[324] +#define SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t swig_types[325] +#define SWIGTYPE_p_std__vectorT_size_t_std__allocatorT_size_t_t_t swig_types[326] +#define SWIGTYPE_p_std__vectorT_std__complexT_double_t_std__allocatorT_std__complexT_double_t_t_t swig_types[327] +#define SWIGTYPE_p_std__vectorT_std__pairT_double_double_t_std__allocatorT_std__pairT_double_double_t_t_t swig_types[328] +#define SWIGTYPE_p_std__vectorT_std__string_std__allocatorT_std__string_t_t swig_types[329] +#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[330] +#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[331] +#define SWIGTYPE_p_std__vectorT_unsigned_int_std__allocatorT_unsigned_int_t_t swig_types[332] +#define SWIGTYPE_p_std__vectorT_unsigned_long_std__allocatorT_unsigned_long_t_t swig_types[333] +#define SWIGTYPE_p_swig__SwigPyIterator swig_types[334] +#define SWIGTYPE_p_unsigned_char swig_types[335] +#define SWIGTYPE_p_unsigned_int swig_types[336] +#define SWIGTYPE_p_unsigned_long_long swig_types[337] +#define SWIGTYPE_p_unsigned_short swig_types[338] +#define SWIGTYPE_p_value_type swig_types[339] +static swig_type_info *swig_types[341]; +static swig_module_info swig_module = {swig_types, 340, 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) @@ -6965,7 +6966,6 @@ SWIGINTERN void std_vector_Sl_std_pair_Sl_double_Sc_double_Sg__Sg__insert__SWIG_ #include "Core/HardParticle/FormFactorTruncatedCube.h" #include "Core/HardParticle/FormFactorTruncatedSphere.h" #include "Core/HardParticle/FormFactorTruncatedSpheroid.h" -#include "Core/HardParticle/Ripples.h" #include "Core/InputOutput/IntensityDataIOFactory.h" #include "Core/Instrument/AngularSpecScan.h" #include "Core/Instrument/ChiSquaredModule.h" @@ -92036,6 +92036,165 @@ SWIGINTERN PyObject *ProfileBar_swigregister(PyObject *SWIGUNUSEDPARM(self), PyO return SWIG_Py_Void(); } +SWIGINTERN PyObject *_wrap_IProfileRipple_getLength(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + IProfileRipple *arg1 = (IProfileRipple *) 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + PyObject *swig_obj[1] ; + double result; + + if (!args) SWIG_fail; + swig_obj[0] = args; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_IProfileRipple, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IProfileRipple_getLength" "', argument " "1"" of type '" "IProfileRipple const *""'"); + } + arg1 = reinterpret_cast< IProfileRipple * >(argp1); + result = (double)((IProfileRipple const *)arg1)->getLength(); + resultobj = SWIG_From_double(static_cast< double >(result)); + return resultobj; +fail: + return NULL; +} + + +SWIGINTERN PyObject *_wrap_IProfileRipple_getHeight(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + IProfileRipple *arg1 = (IProfileRipple *) 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + PyObject *swig_obj[1] ; + double result; + + if (!args) SWIG_fail; + swig_obj[0] = args; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_IProfileRipple, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IProfileRipple_getHeight" "', argument " "1"" of type '" "IProfileRipple const *""'"); + } + arg1 = reinterpret_cast< IProfileRipple * >(argp1); + result = (double)((IProfileRipple const *)arg1)->getHeight(); + resultobj = SWIG_From_double(static_cast< double >(result)); + return resultobj; +fail: + return NULL; +} + + +SWIGINTERN PyObject *_wrap_IProfileRipple_getWidth(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + IProfileRipple *arg1 = (IProfileRipple *) 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + PyObject *swig_obj[1] ; + double result; + + if (!args) SWIG_fail; + swig_obj[0] = args; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_IProfileRipple, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IProfileRipple_getWidth" "', argument " "1"" of type '" "IProfileRipple const *""'"); + } + arg1 = reinterpret_cast< IProfileRipple * >(argp1); + result = (double)((IProfileRipple const *)arg1)->getWidth(); + resultobj = SWIG_From_double(static_cast< double >(result)); + return resultobj; +fail: + return NULL; +} + + +SWIGINTERN PyObject *_wrap_IProfileRipple_radialExtension(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + IProfileRipple *arg1 = (IProfileRipple *) 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + PyObject *swig_obj[1] ; + double result; + + if (!args) SWIG_fail; + swig_obj[0] = args; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_IProfileRipple, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IProfileRipple_radialExtension" "', argument " "1"" of type '" "IProfileRipple const *""'"); + } + arg1 = reinterpret_cast< IProfileRipple * >(argp1); + result = (double)((IProfileRipple const *)arg1)->radialExtension(); + resultobj = SWIG_From_double(static_cast< double >(result)); + return resultobj; +fail: + return NULL; +} + + +SWIGINTERN PyObject *_wrap_IProfileRipple_evaluate_for_q(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + IProfileRipple *arg1 = (IProfileRipple *) 0 ; + cvector_t arg2 ; + void *argp1 = 0 ; + int res1 = 0 ; + void *argp2 ; + int res2 = 0 ; + PyObject *swig_obj[2] ; + complex_t result; + + if (!SWIG_Python_UnpackTuple(args, "IProfileRipple_evaluate_for_q", 2, 2, swig_obj)) SWIG_fail; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_IProfileRipple, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IProfileRipple_evaluate_for_q" "', argument " "1"" of type '" "IProfileRipple const *""'"); + } + arg1 = reinterpret_cast< IProfileRipple * >(argp1); + { + res2 = SWIG_ConvertPtr(swig_obj[1], &argp2, SWIGTYPE_p_BasicVector3DT_std__complexT_double_t_t, 0 | 0); + if (!SWIG_IsOK(res2)) { + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "IProfileRipple_evaluate_for_q" "', argument " "2"" of type '" "cvector_t""'"); + } + if (!argp2) { + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "IProfileRipple_evaluate_for_q" "', argument " "2"" of type '" "cvector_t""'"); + } else { + cvector_t * temp = reinterpret_cast< cvector_t * >(argp2); + arg2 = *temp; + if (SWIG_IsNewObj(res2)) delete temp; + } + } + result = ((IProfileRipple const *)arg1)->evaluate_for_q(arg2); + resultobj = SWIG_From_std_complex_Sl_double_Sg_(static_cast< std::complex<double> >(result)); + return resultobj; +fail: + return NULL; +} + + +SWIGINTERN PyObject *_wrap_delete_IProfileRipple(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + IProfileRipple *arg1 = (IProfileRipple *) 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + PyObject *swig_obj[1] ; + + if (!args) SWIG_fail; + swig_obj[0] = args; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_IProfileRipple, SWIG_POINTER_DISOWN | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_IProfileRipple" "', argument " "1"" of type '" "IProfileRipple *""'"); + } + arg1 = reinterpret_cast< IProfileRipple * >(argp1); + delete arg1; + resultobj = SWIG_Py_Void(); + return resultobj; +fail: + return NULL; +} + + +SWIGINTERN PyObject *IProfileRipple_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *obj; + if (!SWIG_Python_UnpackTuple(args, "swigregister", 1, 1, &obj)) return NULL; + SWIG_TypeNewClientData(SWIGTYPE_p_IProfileRipple, SWIG_NewClientData(obj)); + return SWIG_Py_Void(); +} + SWIGINTERN PyObject *_wrap_ProfileRipple1_getLength(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; ProfileRipple1 *arg1 = (ProfileRipple1 *) 0 ; @@ -99908,196 +100067,6 @@ SWIGINTERN PyObject *FormFactorTruncatedSpheroid_swiginit(PyObject *SWIGUNUSEDPA return SWIG_Python_InitShadowInstance(args); } -SWIGINTERN PyObject *_wrap_factor_x_box(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - complex_t arg1 ; - double arg2 ; - std::complex< double > val1 ; - int ecode1 = 0 ; - double val2 ; - int ecode2 = 0 ; - PyObject *swig_obj[2] ; - complex_t result; - - if (!SWIG_Python_UnpackTuple(args, "factor_x_box", 2, 2, swig_obj)) SWIG_fail; - ecode1 = SWIG_AsVal_std_complex_Sl_double_Sg_(swig_obj[0], &val1); - if (!SWIG_IsOK(ecode1)) { - SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "factor_x_box" "', argument " "1"" of type '" "complex_t""'"); - } - arg1 = static_cast< complex_t >(val1); - ecode2 = SWIG_AsVal_double(swig_obj[1], &val2); - if (!SWIG_IsOK(ecode2)) { - SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "factor_x_box" "', argument " "2"" of type '" "double""'"); - } - arg2 = static_cast< double >(val2); - result = ripples::factor_x_box(arg1,arg2); - resultobj = SWIG_From_std_complex_Sl_double_Sg_(static_cast< std::complex<double> >(result)); - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *_wrap_factor_x_Gauss(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - complex_t arg1 ; - double arg2 ; - std::complex< double > val1 ; - int ecode1 = 0 ; - double val2 ; - int ecode2 = 0 ; - PyObject *swig_obj[2] ; - complex_t result; - - if (!SWIG_Python_UnpackTuple(args, "factor_x_Gauss", 2, 2, swig_obj)) SWIG_fail; - ecode1 = SWIG_AsVal_std_complex_Sl_double_Sg_(swig_obj[0], &val1); - if (!SWIG_IsOK(ecode1)) { - SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "factor_x_Gauss" "', argument " "1"" of type '" "complex_t""'"); - } - arg1 = static_cast< complex_t >(val1); - ecode2 = SWIG_AsVal_double(swig_obj[1], &val2); - if (!SWIG_IsOK(ecode2)) { - SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "factor_x_Gauss" "', argument " "2"" of type '" "double""'"); - } - arg2 = static_cast< double >(val2); - result = ripples::factor_x_Gauss(arg1,arg2); - resultobj = SWIG_From_std_complex_Sl_double_Sg_(static_cast< std::complex<double> >(result)); - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *_wrap_factor_x_Lorentz(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - complex_t arg1 ; - double arg2 ; - std::complex< double > val1 ; - int ecode1 = 0 ; - double val2 ; - int ecode2 = 0 ; - PyObject *swig_obj[2] ; - complex_t result; - - if (!SWIG_Python_UnpackTuple(args, "factor_x_Lorentz", 2, 2, swig_obj)) SWIG_fail; - ecode1 = SWIG_AsVal_std_complex_Sl_double_Sg_(swig_obj[0], &val1); - if (!SWIG_IsOK(ecode1)) { - SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "factor_x_Lorentz" "', argument " "1"" of type '" "complex_t""'"); - } - arg1 = static_cast< complex_t >(val1); - ecode2 = SWIG_AsVal_double(swig_obj[1], &val2); - if (!SWIG_IsOK(ecode2)) { - SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "factor_x_Lorentz" "', argument " "2"" of type '" "double""'"); - } - arg2 = static_cast< double >(val2); - result = ripples::factor_x_Lorentz(arg1,arg2); - resultobj = SWIG_From_std_complex_Sl_double_Sg_(static_cast< std::complex<double> >(result)); - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *_wrap_profile_yz_cosine(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - complex_t arg1 ; - complex_t arg2 ; - double arg3 ; - double arg4 ; - std::complex< double > val1 ; - int ecode1 = 0 ; - std::complex< double > val2 ; - int ecode2 = 0 ; - double val3 ; - int ecode3 = 0 ; - double val4 ; - int ecode4 = 0 ; - PyObject *swig_obj[4] ; - complex_t result; - - if (!SWIG_Python_UnpackTuple(args, "profile_yz_cosine", 4, 4, swig_obj)) SWIG_fail; - ecode1 = SWIG_AsVal_std_complex_Sl_double_Sg_(swig_obj[0], &val1); - if (!SWIG_IsOK(ecode1)) { - SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "profile_yz_cosine" "', argument " "1"" of type '" "complex_t""'"); - } - arg1 = static_cast< complex_t >(val1); - ecode2 = SWIG_AsVal_std_complex_Sl_double_Sg_(swig_obj[1], &val2); - if (!SWIG_IsOK(ecode2)) { - SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "profile_yz_cosine" "', argument " "2"" of type '" "complex_t""'"); - } - arg2 = static_cast< complex_t >(val2); - ecode3 = SWIG_AsVal_double(swig_obj[2], &val3); - if (!SWIG_IsOK(ecode3)) { - SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "profile_yz_cosine" "', argument " "3"" of type '" "double""'"); - } - arg3 = static_cast< double >(val3); - ecode4 = SWIG_AsVal_double(swig_obj[3], &val4); - if (!SWIG_IsOK(ecode4)) { - SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "profile_yz_cosine" "', argument " "4"" of type '" "double""'"); - } - arg4 = static_cast< double >(val4); - result = ripples::profile_yz_cosine(arg1,arg2,arg3,arg4); - resultobj = SWIG_From_std_complex_Sl_double_Sg_(static_cast< std::complex<double> >(result)); - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *_wrap_profile_yz_triangular(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - complex_t arg1 ; - complex_t arg2 ; - double arg3 ; - double arg4 ; - double arg5 ; - std::complex< double > val1 ; - int ecode1 = 0 ; - std::complex< double > val2 ; - int ecode2 = 0 ; - double val3 ; - int ecode3 = 0 ; - double val4 ; - int ecode4 = 0 ; - double val5 ; - int ecode5 = 0 ; - PyObject *swig_obj[5] ; - complex_t result; - - if (!SWIG_Python_UnpackTuple(args, "profile_yz_triangular", 5, 5, swig_obj)) SWIG_fail; - ecode1 = SWIG_AsVal_std_complex_Sl_double_Sg_(swig_obj[0], &val1); - if (!SWIG_IsOK(ecode1)) { - SWIG_exception_fail(SWIG_ArgError(ecode1), "in method '" "profile_yz_triangular" "', argument " "1"" of type '" "complex_t""'"); - } - arg1 = static_cast< complex_t >(val1); - ecode2 = SWIG_AsVal_std_complex_Sl_double_Sg_(swig_obj[1], &val2); - if (!SWIG_IsOK(ecode2)) { - SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "profile_yz_triangular" "', argument " "2"" of type '" "complex_t""'"); - } - arg2 = static_cast< complex_t >(val2); - ecode3 = SWIG_AsVal_double(swig_obj[2], &val3); - if (!SWIG_IsOK(ecode3)) { - SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "profile_yz_triangular" "', argument " "3"" of type '" "double""'"); - } - arg3 = static_cast< double >(val3); - ecode4 = SWIG_AsVal_double(swig_obj[3], &val4); - if (!SWIG_IsOK(ecode4)) { - SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "profile_yz_triangular" "', argument " "4"" of type '" "double""'"); - } - arg4 = static_cast< double >(val4); - ecode5 = SWIG_AsVal_double(swig_obj[4], &val5); - if (!SWIG_IsOK(ecode5)) { - SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "profile_yz_triangular" "', argument " "5"" of type '" "double""'"); - } - arg5 = static_cast< double >(val5); - result = ripples::profile_yz_triangular(arg1,arg2,arg3,arg4,arg5); - resultobj = SWIG_From_std_complex_Sl_double_Sg_(static_cast< std::complex<double> >(result)); - return resultobj; -fail: - return NULL; -} - - SWIGINTERN PyObject *_wrap_new_FormFactorGaussSphere__SWIG_0(PyObject *SWIGUNUSEDPARM(self), Py_ssize_t nobjs, PyObject **swig_obj) { PyObject *resultobj = 0; std::vector< double,std::allocator< double > > arg1 ; @@ -130232,6 +130201,25 @@ static PyMethodDef SwigMethods[] = { ""}, { "delete_ProfileBar", _wrap_delete_ProfileBar, METH_O, "delete_ProfileBar(ProfileBar self)"}, { "ProfileBar_swigregister", ProfileBar_swigregister, METH_O, NULL}, + { "IProfileRipple_getLength", _wrap_IProfileRipple_getLength, METH_O, "IProfileRipple_getLength(IProfileRipple self) -> double"}, + { "IProfileRipple_getHeight", _wrap_IProfileRipple_getHeight, METH_O, "IProfileRipple_getHeight(IProfileRipple self) -> double"}, + { "IProfileRipple_getWidth", _wrap_IProfileRipple_getWidth, METH_O, "IProfileRipple_getWidth(IProfileRipple self) -> double"}, + { "IProfileRipple_radialExtension", _wrap_IProfileRipple_radialExtension, METH_O, "\n" + "IProfileRipple_radialExtension(IProfileRipple self) -> double\n" + "virtual double IFormFactor::radialExtension() const =0\n" + "\n" + "Returns the (approximate in some cases) radial size of the particle of this form factor's shape. This is used for SSCA calculations \n" + "\n" + ""}, + { "IProfileRipple_evaluate_for_q", _wrap_IProfileRipple_evaluate_for_q, METH_VARARGS, "\n" + "IProfileRipple_evaluate_for_q(IProfileRipple self, cvector_t q) -> complex_t\n" + "virtual complex_t IFormFactorBorn::evaluate_for_q(cvector_t q) const =0\n" + "\n" + "Returns scattering amplitude for complex scattering wavevector q=k_i-k_f. This method is public only for convenience of plotting form factors in Python. \n" + "\n" + ""}, + { "delete_IProfileRipple", _wrap_delete_IProfileRipple, METH_O, "delete_IProfileRipple(IProfileRipple self)"}, + { "IProfileRipple_swigregister", IProfileRipple_swigregister, METH_O, NULL}, { "ProfileRipple1_getLength", _wrap_ProfileRipple1_getLength, METH_O, "\n" "ProfileRipple1_getLength(ProfileRipple1 self) -> double\n" "double ProfileRipple1::getLength() const\n" @@ -131776,23 +131764,6 @@ static PyMethodDef SwigMethods[] = { { "delete_FormFactorTruncatedSpheroid", _wrap_delete_FormFactorTruncatedSpheroid, METH_O, "delete_FormFactorTruncatedSpheroid(FormFactorTruncatedSpheroid self)"}, { "FormFactorTruncatedSpheroid_swigregister", FormFactorTruncatedSpheroid_swigregister, METH_O, NULL}, { "FormFactorTruncatedSpheroid_swiginit", FormFactorTruncatedSpheroid_swiginit, METH_VARARGS, NULL}, - { "factor_x_box", _wrap_factor_x_box, METH_VARARGS, "\n" - "factor_x_box(complex_t q, double l) -> complex_t\n" - "complex_t ripples::factor_x_box(complex_t q, double l)\n" - "\n" - ""}, - { "factor_x_Gauss", _wrap_factor_x_Gauss, METH_VARARGS, "\n" - "factor_x_Gauss(complex_t q, double l) -> complex_t\n" - "complex_t ripples::factor_x_Gauss(complex_t q, double l)\n" - "\n" - ""}, - { "factor_x_Lorentz", _wrap_factor_x_Lorentz, METH_VARARGS, "\n" - "factor_x_Lorentz(complex_t q, double l) -> complex_t\n" - "complex_t ripples::factor_x_Lorentz(complex_t q, double l)\n" - "\n" - ""}, - { "profile_yz_cosine", _wrap_profile_yz_cosine, METH_VARARGS, "profile_yz_cosine(complex_t qy, complex_t qz, double width, double height) -> complex_t"}, - { "profile_yz_triangular", _wrap_profile_yz_triangular, METH_VARARGS, "profile_yz_triangular(complex_t qy, complex_t qz, double width, double height, double asymmetry) -> complex_t"}, { "new_FormFactorGaussSphere", _wrap_new_FormFactorGaussSphere, METH_VARARGS, "\n" "FormFactorGaussSphere(vdouble1d_t P)\n" "new_FormFactorGaussSphere(double mean_radius) -> FormFactorGaussSphere\n" @@ -135008,6 +134979,9 @@ static void *_p_FormFactorFullSpheroidTo_p_IFormFactorBorn(void *x, int *SWIGUNU static void *_p_FormFactorTruncatedSpheroidTo_p_IFormFactorBorn(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((IFormFactorBorn *) ((FormFactorTruncatedSpheroid *) x)); } +static void *_p_IProfileRippleTo_p_IFormFactorBorn(void *x, int *SWIGUNUSEDPARM(newmemory)) { + return (void *)((IFormFactorBorn *) ((IProfileRipple *) x)); +} static void *_p_FormFactorRipple1BoxTo_p_IFormFactorBorn(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((IFormFactorBorn *) (ProfileRipple1 *) ((FormFactorRipple1Box *) x)); } @@ -135023,15 +134997,15 @@ static void *_p_FormFactorPolygonalSurfaceTo_p_IFormFactorBorn(void *x, int *SWI static void *_p_ProfileRipple2To_p_IFormFactorBorn(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((IFormFactorBorn *) ((ProfileRipple2 *) x)); } -static void *_p_FormFactorTruncatedCubeTo_p_IFormFactorBorn(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((IFormFactorBorn *) (FormFactorPolyhedron *) ((FormFactorTruncatedCube *) x)); -} static void *_p_FormFactorCantellatedCubeTo_p_IFormFactorBorn(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((IFormFactorBorn *) (FormFactorPolyhedron *) ((FormFactorCantellatedCube *) x)); } static void *_p_FormFactorFullSphereTo_p_IFormFactorBorn(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((IFormFactorBorn *) ((FormFactorFullSphere *) x)); } +static void *_p_FormFactorTruncatedCubeTo_p_IFormFactorBorn(void *x, int *SWIGUNUSEDPARM(newmemory)) { + return (void *)((IFormFactorBorn *) (FormFactorPolyhedron *) ((FormFactorTruncatedCube *) x)); +} static void *_p_FormFactorTruncatedSphereTo_p_IFormFactorBorn(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((IFormFactorBorn *) ((FormFactorTruncatedSphere *) x)); } @@ -135053,15 +135027,15 @@ static void *_p_FormFactorTetrahedronTo_p_IFormFactorBorn(void *x, int *SWIGUNUS static void *_p_FormFactorIcosahedronTo_p_IFormFactorBorn(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((IFormFactorBorn *) (FormFactorPolyhedron *) ((FormFactorIcosahedron *) x)); } +static void *_p_FormFactorDodecahedronTo_p_IFormFactorBorn(void *x, int *SWIGUNUSEDPARM(newmemory)) { + return (void *)((IFormFactorBorn *) (FormFactorPolyhedron *) ((FormFactorDodecahedron *) x)); +} static void *_p_FormFactorPolyhedronTo_p_IFormFactorBorn(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((IFormFactorBorn *) ((FormFactorPolyhedron *) x)); } static void *_p_FormFactorCuboctahedronTo_p_IFormFactorBorn(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((IFormFactorBorn *) (FormFactorPolyhedron *) ((FormFactorCuboctahedron *) x)); } -static void *_p_FormFactorDodecahedronTo_p_IFormFactorBorn(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((IFormFactorBorn *) (FormFactorPolyhedron *) ((FormFactorDodecahedron *) x)); -} static void *_p_FormFactorConeTo_p_IFormFactorBorn(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((IFormFactorBorn *) ((FormFactorCone *) x)); } @@ -135407,6 +135381,9 @@ static void *_p_FormFactorTruncatedSphereTo_p_ICloneable(void *x, int *SWIGUNUSE static void *_p_FormFactorFullSphereTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ICloneable *) (ISample *)(IFormFactor *)(IFormFactorBorn *) ((FormFactorFullSphere *) x)); } +static void *_p_IProfileRippleTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { + return (void *)((ICloneable *) (ISample *)(IFormFactor *)(IFormFactorBorn *) ((IProfileRipple *) x)); +} static void *_p_IClusteredParticlesTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ICloneable *) (ISample *) ((IClusteredParticles *) x)); } @@ -135479,9 +135456,6 @@ static void *_p_FormFactorFullSpheroidTo_p_ICloneable(void *x, int *SWIGUNUSEDPA static void *_p_ISpecularScanTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ICloneable *) ((ISpecularScan *) x)); } -static void *_p_HexagonalLatticeTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((ICloneable *) (Lattice2D *) ((HexagonalLattice *) x)); -} static void *_p_SquareLatticeTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ICloneable *) (Lattice2D *) ((SquareLattice *) x)); } @@ -135509,6 +135483,9 @@ static void *_p_InterferenceFunction1DLatticeTo_p_ICloneable(void *x, int *SWIGU static void *_p_IShape2DTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ICloneable *) ((IShape2D *) x)); } +static void *_p_HexagonalLatticeTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { + return (void *)((ICloneable *) (Lattice2D *) ((HexagonalLattice *) x)); +} static void *_p_FootprintSquareTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ICloneable *) (IFootprintFactor *) ((FootprintSquare *) x)); } @@ -136052,6 +136029,9 @@ static void *_p_CrystalTo_p_IParameterized(void *x, int *SWIGUNUSEDPARM(newmemor static void *_p_MesoCrystalTo_p_IParameterized(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((IParameterized *) (INode *)(ISample *)(IAbstractParticle *)(IParticle *) ((MesoCrystal *) x)); } +static void *_p_IProfileRippleTo_p_IParameterized(void *x, int *SWIGUNUSEDPARM(newmemory)) { + return (void *)((IParameterized *) (INode *)(ISample *)(IFormFactor *)(IFormFactorBorn *) ((IProfileRipple *) x)); +} static void *_p_IFTDistribution2DTo_p_IParameterized(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((IParameterized *) (INode *) ((IFTDistribution2D *) x)); } @@ -136145,6 +136125,9 @@ static void *_p_FormFactorFullSpheroidTo_p_IFormFactor(void *x, int *SWIGUNUSEDP static void *_p_FormFactorTruncatedSpheroidTo_p_IFormFactor(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((IFormFactor *) (IFormFactorBorn *) ((FormFactorTruncatedSpheroid *) x)); } +static void *_p_IProfileRippleTo_p_IFormFactor(void *x, int *SWIGUNUSEDPARM(newmemory)) { + return (void *)((IFormFactor *) (IFormFactorBorn *) ((IProfileRipple *) x)); +} static void *_p_FormFactorRipple1BoxTo_p_IFormFactor(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((IFormFactor *) (IFormFactorBorn *)(ProfileRipple1 *) ((FormFactorRipple1Box *) x)); } @@ -136364,12 +136347,12 @@ static void *_p_InterferenceFunctionHardDiskTo_p_ISample(void *x, int *SWIGUNUSE static void *_p_FormFactorRipple1BoxTo_p_ISample(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ISample *) (IFormFactor *)(IFormFactorBorn *)(ProfileRipple1 *) ((FormFactorRipple1Box *) x)); } -static void *_p_FormFactorTruncatedSpheroidTo_p_ISample(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((ISample *) (IFormFactor *)(IFormFactorBorn *) ((FormFactorTruncatedSpheroid *) x)); -} static void *_p_FormFactorFullSpheroidTo_p_ISample(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ISample *) (IFormFactor *)(IFormFactorBorn *) ((FormFactorFullSpheroid *) x)); } +static void *_p_FormFactorTruncatedSpheroidTo_p_ISample(void *x, int *SWIGUNUSEDPARM(newmemory)) { + return (void *)((ISample *) (IFormFactor *)(IFormFactorBorn *) ((FormFactorTruncatedSpheroid *) x)); +} static void *_p_FormFactorTruncatedCubeTo_p_ISample(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ISample *) (IFormFactor *)(IFormFactorBorn *)(FormFactorPolyhedron *) ((FormFactorTruncatedCube *) x)); } @@ -136457,6 +136440,9 @@ static void *_p_InterferenceFunction2DParaCrystalTo_p_ISample(void *x, int *SWIG static void *_p_InterferenceFunctionRadialParaCrystalTo_p_ISample(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ISample *) (IInterferenceFunction *) ((InterferenceFunctionRadialParaCrystal *) x)); } +static void *_p_IProfileRippleTo_p_ISample(void *x, int *SWIGUNUSEDPARM(newmemory)) { + return (void *)((ISample *) (IFormFactor *)(IFormFactorBorn *) ((IProfileRipple *) x)); +} static void *_p_FormFactorHollowSphereTo_p_ISample(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ISample *) (IFormFactor *)(IFormFactorBorn *) ((FormFactorHollowSphere *) x)); } @@ -136841,6 +136827,9 @@ static void *_p_CrystalTo_p_INode(void *x, int *SWIGUNUSEDPARM(newmemory)) { static void *_p_MesoCrystalTo_p_INode(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((INode *) (ISample *)(IAbstractParticle *)(IParticle *) ((MesoCrystal *) x)); } +static void *_p_IProfileRippleTo_p_INode(void *x, int *SWIGUNUSEDPARM(newmemory)) { + return (void *)((INode *) (ISample *)(IFormFactor *)(IFormFactorBorn *) ((IProfileRipple *) x)); +} static void *_p_IFTDistribution2DTo_p_INode(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((INode *) ((IFTDistribution2D *) x)); } @@ -137234,6 +137223,7 @@ static swig_type_info _swigt__p_IParameterized = {"_p_IParameterized", "IParamet static swig_type_info _swigt__p_IParticle = {"_p_IParticle", "IParticle *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_IPeakShape = {"_p_IPeakShape", "IPeakShape *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_IPixel = {"_p_IPixel", "IPixel *", 0, 0, (void*)0, 0}; +static swig_type_info _swigt__p_IProfileRipple = {"_p_IProfileRipple", "IProfileRipple *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_IResolutionFunction2D = {"_p_IResolutionFunction2D", "IResolutionFunction2D *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_IRotation = {"_p_IRotation", "IRotation *", 0, 0, (void*)0, 0}; static swig_type_info _swigt__p_ISample = {"_p_ISample", "ISample *", 0, 0, (void*)0, 0}; @@ -137575,6 +137565,7 @@ static swig_type_info *swig_type_initial[] = { &_swigt__p_IParticle, &_swigt__p_IPeakShape, &_swigt__p_IPixel, + &_swigt__p_IProfileRipple, &_swigt__p_IResolutionFunction2D, &_swigt__p_IRotation, &_swigt__p_ISample, @@ -137885,7 +137876,7 @@ static swig_cast_info _swigc__p_IAbstractParticle[] = { {&_swigt__p_ParticleCom static swig_cast_info _swigc__p_IAxis[] = { {&_swigt__p_IAxis, 0, 0, 0}, {&_swigt__p_VariableBinAxis, _p_VariableBinAxisTo_p_IAxis, 0, 0}, {&_swigt__p_ConstKBinAxis, _p_ConstKBinAxisTo_p_IAxis, 0, 0}, {&_swigt__p_CustomBinAxis, _p_CustomBinAxisTo_p_IAxis, 0, 0}, {&_swigt__p_FixedBinAxis, _p_FixedBinAxisTo_p_IAxis, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_IBackground[] = { {&_swigt__p_IBackground, 0, 0, 0}, {&_swigt__p_ConstantBackground, _p_ConstantBackgroundTo_p_IBackground, 0, 0}, {&_swigt__p_PoissonNoiseBackground, _p_PoissonNoiseBackgroundTo_p_IBackground, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_IChiSquaredModule[] = { {&_swigt__p_IChiSquaredModule, 0, 0, 0}, {&_swigt__p_ChiSquaredModule, _p_ChiSquaredModuleTo_p_IChiSquaredModule, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_ICloneable[] = { {&_swigt__p_Line, _p_LineTo_p_ICloneable, 0, 0}, {&_swigt__p_DistributionTrapezoid, _p_DistributionTrapezoidTo_p_ICloneable, 0, 0}, {&_swigt__p_ParticleLayout, _p_ParticleLayoutTo_p_ICloneable, 0, 0}, {&_swigt__p_ILayout, _p_ILayoutTo_p_ICloneable, 0, 0}, {&_swigt__p_FTDecayFunction2DVoigt, _p_FTDecayFunction2DVoigtTo_p_ICloneable, 0, 0}, {&_swigt__p_FTDistribution2DVoigt, _p_FTDistribution2DVoigtTo_p_ICloneable, 0, 0}, {&_swigt__p_InterferenceFunctionNone, _p_InterferenceFunctionNoneTo_p_ICloneable, 0, 0}, {&_swigt__p_RotationEuler, _p_RotationEulerTo_p_ICloneable, 0, 0}, {&_swigt__p_RangedDistributionGate, _p_RangedDistributionGateTo_p_ICloneable, 0, 0}, {&_swigt__p_DistributionGate, _p_DistributionGateTo_p_ICloneable, 0, 0}, {&_swigt__p_IdentityRotation, _p_IdentityRotationTo_p_ICloneable, 0, 0}, {&_swigt__p_IRotation, _p_IRotationTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorPolygonalSurface, _p_FormFactorPolygonalSurfaceTo_p_ICloneable, 0, 0}, {&_swigt__p_IUnitConverter, _p_IUnitConverterTo_p_ICloneable, 0, 0}, {&_swigt__p_IFormFactor, _p_IFormFactorTo_p_ICloneable, 0, 0}, {&_swigt__p_MultiLayer, _p_MultiLayerTo_p_ICloneable, 0, 0}, {&_swigt__p_RotationX, _p_RotationXTo_p_ICloneable, 0, 0}, {&_swigt__p_RotationY, _p_RotationYTo_p_ICloneable, 0, 0}, {&_swigt__p_LayerRoughness, _p_LayerRoughnessTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorCylinder, _p_FormFactorCylinderTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorEllipsoidalCylinder, _p_FormFactorEllipsoidalCylinderTo_p_ICloneable, 0, 0}, {&_swigt__p_RotationZ, _p_RotationZTo_p_ICloneable, 0, 0}, {&_swigt__p_FTDistribution2DCauchy, _p_FTDistribution2DCauchyTo_p_ICloneable, 0, 0}, {&_swigt__p_FTDistribution1DCauchy, _p_FTDistribution1DCauchyTo_p_ICloneable, 0, 0}, {&_swigt__p_FTDecayFunction2DCauchy, _p_FTDecayFunction2DCauchyTo_p_ICloneable, 0, 0}, {&_swigt__p_FTDecayFunction1DCauchy, _p_FTDecayFunction1DCauchyTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorTetrahedron, _p_FormFactorTetrahedronTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorPolyhedron, _p_FormFactorPolyhedronTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorCuboctahedron, _p_FormFactorCuboctahedronTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorDodecahedron, _p_FormFactorDodecahedronTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorIcosahedron, _p_FormFactorIcosahedronTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorCrystal, _p_FormFactorCrystalTo_p_ICloneable, 0, 0}, {&_swigt__p_InterferenceFunction2DParaCrystal, _p_InterferenceFunction2DParaCrystalTo_p_ICloneable, 0, 0}, {&_swigt__p_InterferenceFunctionRadialParaCrystal, _p_InterferenceFunctionRadialParaCrystalTo_p_ICloneable, 0, 0}, {&_swigt__p_Crystal, _p_CrystalTo_p_ICloneable, 0, 0}, {&_swigt__p_MesoCrystal, _p_MesoCrystalTo_p_ICloneable, 0, 0}, {&_swigt__p_MisesGaussPeakShape, _p_MisesGaussPeakShapeTo_p_ICloneable, 0, 0}, {&_swigt__p_MisesFisherGaussPeakShape, _p_MisesFisherGaussPeakShapeTo_p_ICloneable, 0, 0}, {&_swigt__p_LorentzFisherPeakShape, _p_LorentzFisherPeakShapeTo_p_ICloneable, 0, 0}, {&_swigt__p_GaussFisherPeakShape, _p_GaussFisherPeakShapeTo_p_ICloneable, 0, 0}, {&_swigt__p_IPeakShape, _p_IPeakShapeTo_p_ICloneable, 0, 0}, {&_swigt__p_IsotropicGaussPeakShape, _p_IsotropicGaussPeakShapeTo_p_ICloneable, 0, 0}, {&_swigt__p_IsotropicLorentzPeakShape, _p_IsotropicLorentzPeakShapeTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorWeighted, _p_FormFactorWeightedTo_p_ICloneable, 0, 0}, {&_swigt__p_FTDistribution1DVoigt, _p_FTDistribution1DVoigtTo_p_ICloneable, 0, 0}, {&_swigt__p_FTDecayFunction1DVoigt, _p_FTDecayFunction1DVoigtTo_p_ICloneable, 0, 0}, {&_swigt__p_IChiSquaredModule, _p_IChiSquaredModuleTo_p_ICloneable, 0, 0}, {&_swigt__p_ChiSquaredModule, _p_ChiSquaredModuleTo_p_ICloneable, 0, 0}, {&_swigt__p_Lattice2D, _p_Lattice2DTo_p_ICloneable, 0, 0}, {&_swigt__p_ParticleCoreShell, _p_ParticleCoreShellTo_p_ICloneable, 0, 0}, {&_swigt__p_Particle, _p_ParticleTo_p_ICloneable, 0, 0}, {&_swigt__p_IParticle, _p_IParticleTo_p_ICloneable, 0, 0}, {&_swigt__p_IAbstractParticle, _p_IAbstractParticleTo_p_ICloneable, 0, 0}, {&_swigt__p_FTDistribution2DGate, _p_FTDistribution2DGateTo_p_ICloneable, 0, 0}, {&_swigt__p_IFormFactorDecorator, _p_IFormFactorDecoratorTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorAnisoPyramid, _p_FormFactorAnisoPyramidTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorPyramid, _p_FormFactorPyramidTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorTruncatedCube, _p_FormFactorTruncatedCubeTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorCantellatedCube, _p_FormFactorCantellatedCubeTo_p_ICloneable, 0, 0}, {&_swigt__p_RangedDistribution, _p_RangedDistributionTo_p_ICloneable, 0, 0}, {&_swigt__p_ParticleDistribution, _p_ParticleDistributionTo_p_ICloneable, 0, 0}, {&_swigt__p_FTDistribution1DTriangle, _p_FTDistribution1DTriangleTo_p_ICloneable, 0, 0}, {&_swigt__p_FTDecayFunction1DTriangle, _p_FTDecayFunction1DTriangleTo_p_ICloneable, 0, 0}, {&_swigt__p_ProfileBar, _p_ProfileBarTo_p_ICloneable, 0, 0}, {&_swigt__p_ParameterPool, _p_ParameterPoolTo_p_ICloneable, 0, 0}, {&_swigt__p_FootprintGauss, _p_FootprintGaussTo_p_ICloneable, 0, 0}, {&_swigt__p_ICloneable, 0, 0, 0}, {&_swigt__p_FormFactorDot, _p_FormFactorDotTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorRipple2Gauss, _p_FormFactorRipple2GaussTo_p_ICloneable, 0, 0}, {&_swigt__p_DistributionGaussian, _p_DistributionGaussianTo_p_ICloneable, 0, 0}, {&_swigt__p_ResolutionFunction2DGaussian, _p_ResolutionFunction2DGaussianTo_p_ICloneable, 0, 0}, {&_swigt__p_RangedDistributionGaussian, _p_RangedDistributionGaussianTo_p_ICloneable, 0, 0}, {&_swigt__p_PoissonNoiseBackground, _p_PoissonNoiseBackgroundTo_p_ICloneable, 0, 0}, {&_swigt__p_ConstantBackground, _p_ConstantBackgroundTo_p_ICloneable, 0, 0}, {&_swigt__p_IBackground, _p_IBackgroundTo_p_ICloneable, 0, 0}, {&_swigt__p_ScanResolution, _p_ScanResolutionTo_p_ICloneable, 0, 0}, {&_swigt__p_IDetectorResolution, _p_IDetectorResolutionTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorTruncatedSphere, _p_FormFactorTruncatedSphereTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorFullSphere, _p_FormFactorFullSphereTo_p_ICloneable, 0, 0}, {&_swigt__p_IClusteredParticles, _p_IClusteredParticlesTo_p_ICloneable, 0, 0}, {&_swigt__p_InterferenceFunctionHardDisk, _p_InterferenceFunctionHardDiskTo_p_ICloneable, 0, 0}, {&_swigt__p_ParticleComposition, _p_ParticleCompositionTo_p_ICloneable, 0, 0}, {&_swigt__p_DistributionCosine, _p_DistributionCosineTo_p_ICloneable, 0, 0}, {&_swigt__p_FTDistribution1DCosine, _p_FTDistribution1DCosineTo_p_ICloneable, 0, 0}, {&_swigt__p_RangedDistributionCosine, _p_RangedDistributionCosineTo_p_ICloneable, 0, 0}, {&_swigt__p_Polygon, _p_PolygonTo_p_ICloneable, 0, 0}, {&_swigt__p_IInterferenceFunction, _p_IInterferenceFunctionTo_p_ICloneable, 0, 0}, {&_swigt__p_InterferenceFunctionTwin, _p_InterferenceFunctionTwinTo_p_ICloneable, 0, 0}, {&_swigt__p_QSpecScan, _p_QSpecScanTo_p_ICloneable, 0, 0}, {&_swigt__p_AngularSpecScan, _p_AngularSpecScanTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorGaussSphere, _p_FormFactorGaussSphereTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorHollowSphere, _p_FormFactorHollowSphereTo_p_ICloneable, 0, 0}, {&_swigt__p_VerticalLine, _p_VerticalLineTo_p_ICloneable, 0, 0}, {&_swigt__p_FTDecayFunction2DGauss, _p_FTDecayFunction2DGaussTo_p_ICloneable, 0, 0}, {&_swigt__p_FTDistribution2DGauss, _p_FTDistribution2DGaussTo_p_ICloneable, 0, 0}, {&_swigt__p_IFormFactorBorn, _p_IFormFactorBornTo_p_ICloneable, 0, 0}, {&_swigt__p_RectangularDetector, _p_RectangularDetectorTo_p_ICloneable, 0, 0}, {&_swigt__p_IsGISAXSDetector, _p_IsGISAXSDetectorTo_p_ICloneable, 0, 0}, {&_swigt__p_SphericalDetector, _p_SphericalDetectorTo_p_ICloneable, 0, 0}, {&_swigt__p_IDetector, _p_IDetectorTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorTruncatedSpheroid, _p_FormFactorTruncatedSpheroidTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorFullSpheroid, _p_FormFactorFullSpheroidTo_p_ICloneable, 0, 0}, {&_swigt__p_ISpecularScan, _p_ISpecularScanTo_p_ICloneable, 0, 0}, {&_swigt__p_InterferenceFunctionFinite3DLattice, _p_InterferenceFunctionFinite3DLatticeTo_p_ICloneable, 0, 0}, {&_swigt__p_InterferenceFunctionFinite2DLattice, _p_InterferenceFunctionFinite2DLatticeTo_p_ICloneable, 0, 0}, {&_swigt__p_InterferenceFunction3DLattice, _p_InterferenceFunction3DLatticeTo_p_ICloneable, 0, 0}, {&_swigt__p_InterferenceFunction2DSuperLattice, _p_InterferenceFunction2DSuperLatticeTo_p_ICloneable, 0, 0}, {&_swigt__p_InterferenceFunction2DLattice, _p_InterferenceFunction2DLatticeTo_p_ICloneable, 0, 0}, {&_swigt__p_InterferenceFunction1DLattice, _p_InterferenceFunction1DLatticeTo_p_ICloneable, 0, 0}, {&_swigt__p_HexagonalLattice, _p_HexagonalLatticeTo_p_ICloneable, 0, 0}, {&_swigt__p_SquareLattice, _p_SquareLatticeTo_p_ICloneable, 0, 0}, {&_swigt__p_BasicLattice, _p_BasicLatticeTo_p_ICloneable, 0, 0}, {&_swigt__p_IShape2D, _p_IShape2DTo_p_ICloneable, 0, 0}, {&_swigt__p_FootprintSquare, _p_FootprintSquareTo_p_ICloneable, 0, 0}, {&_swigt__p_Rectangle, _p_RectangleTo_p_ICloneable, 0, 0}, {&_swigt__p_HorizontalLine, _p_HorizontalLineTo_p_ICloneable, 0, 0}, {&_swigt__p_FTDecayFunction1DGauss, _p_FTDecayFunction1DGaussTo_p_ICloneable, 0, 0}, {&_swigt__p_FTDistribution1DGauss, _p_FTDistribution1DGaussTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorCone6, _p_FormFactorCone6To_p_ICloneable, 0, 0}, {&_swigt__p_IDistribution1D, _p_IDistribution1DTo_p_ICloneable, 0, 0}, {&_swigt__p_IFTDecayFunction1D, _p_IFTDecayFunction1DTo_p_ICloneable, 0, 0}, {&_swigt__p_IFTDistribution1D, _p_IFTDistribution1DTo_p_ICloneable, 0, 0}, {&_swigt__p_SpecularSimulation, _p_SpecularSimulationTo_p_ICloneable, 0, 0}, {&_swigt__p_DepthProbeSimulation, _p_DepthProbeSimulationTo_p_ICloneable, 0, 0}, {&_swigt__p_OffSpecSimulation, _p_OffSpecSimulationTo_p_ICloneable, 0, 0}, {&_swigt__p_GISASSimulation, _p_GISASSimulationTo_p_ICloneable, 0, 0}, {&_swigt__p_Simulation, _p_SimulationTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorCone, _p_FormFactorConeTo_p_ICloneable, 0, 0}, {&_swigt__p_DistributionLogNormal, _p_DistributionLogNormalTo_p_ICloneable, 0, 0}, {&_swigt__p_RangedDistributionLogNormal, _p_RangedDistributionLogNormalTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorBox, _p_FormFactorBoxTo_p_ICloneable, 0, 0}, {&_swigt__p_FTDistribution1DGate, _p_FTDistribution1DGateTo_p_ICloneable, 0, 0}, {&_swigt__p_ProfileRipple1, _p_ProfileRipple1To_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorPolygonalPrism, _p_FormFactorPolygonalPrismTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorLongBoxGauss, _p_FormFactorLongBoxGaussTo_p_ICloneable, 0, 0}, {&_swigt__p_ProfileRipple2, _p_ProfileRipple2To_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorPrism3, _p_FormFactorPrism3To_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorHemiEllipsoid, _p_FormFactorHemiEllipsoidTo_p_ICloneable, 0, 0}, {&_swigt__p_DistributionLorentz, _p_DistributionLorentzTo_p_ICloneable, 0, 0}, {&_swigt__p_RangedDistributionLorentz, _p_RangedDistributionLorentzTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorRipple1Lorentz, _p_FormFactorRipple1LorentzTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorRipple2Lorentz, _p_FormFactorRipple2LorentzTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorLongBoxLorentz, _p_FormFactorLongBoxLorentzTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorRipple1Box, _p_FormFactorRipple1BoxTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorPrism6, _p_FormFactorPrism6To_p_ICloneable, 0, 0}, {&_swigt__p_FTDistribution2DCone, _p_FTDistribution2DConeTo_p_ICloneable, 0, 0}, {&_swigt__p_IDetector2D, _p_IDetector2DTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorRipple2Box, _p_FormFactorRipple2BoxTo_p_ICloneable, 0, 0}, {&_swigt__p_IFootprintFactor, _p_IFootprintFactorTo_p_ICloneable, 0, 0}, {&_swigt__p_ISample, _p_ISampleTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorRipple1Gauss, _p_FormFactorRipple1GaussTo_p_ICloneable, 0, 0}, {&_swigt__p_IFTDecayFunction2D, _p_IFTDecayFunction2DTo_p_ICloneable, 0, 0}, {&_swigt__p_IFTDistribution2D, _p_IFTDistribution2DTo_p_ICloneable, 0, 0}, {&_swigt__p_Simulation2D, _p_Simulation2DTo_p_ICloneable, 0, 0}, {&_swigt__p_Ellipse, _p_EllipseTo_p_ICloneable, 0, 0}, {&_swigt__p_IResolutionFunction2D, _p_IResolutionFunction2DTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorSphereLogNormalRadius, _p_FormFactorSphereLogNormalRadiusTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorSphereGaussianRadius, _p_FormFactorSphereGaussianRadiusTo_p_ICloneable, 0, 0}, {&_swigt__p_Layer, _p_LayerTo_p_ICloneable, 0, 0},{0, 0, 0, 0}}; +static swig_cast_info _swigc__p_ICloneable[] = { {&_swigt__p_Line, _p_LineTo_p_ICloneable, 0, 0}, {&_swigt__p_DistributionTrapezoid, _p_DistributionTrapezoidTo_p_ICloneable, 0, 0}, {&_swigt__p_ParticleLayout, _p_ParticleLayoutTo_p_ICloneable, 0, 0}, {&_swigt__p_ILayout, _p_ILayoutTo_p_ICloneable, 0, 0}, {&_swigt__p_FTDecayFunction2DVoigt, _p_FTDecayFunction2DVoigtTo_p_ICloneable, 0, 0}, {&_swigt__p_FTDistribution2DVoigt, _p_FTDistribution2DVoigtTo_p_ICloneable, 0, 0}, {&_swigt__p_InterferenceFunctionNone, _p_InterferenceFunctionNoneTo_p_ICloneable, 0, 0}, {&_swigt__p_RotationEuler, _p_RotationEulerTo_p_ICloneable, 0, 0}, {&_swigt__p_RangedDistributionGate, _p_RangedDistributionGateTo_p_ICloneable, 0, 0}, {&_swigt__p_DistributionGate, _p_DistributionGateTo_p_ICloneable, 0, 0}, {&_swigt__p_IdentityRotation, _p_IdentityRotationTo_p_ICloneable, 0, 0}, {&_swigt__p_IRotation, _p_IRotationTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorPolygonalSurface, _p_FormFactorPolygonalSurfaceTo_p_ICloneable, 0, 0}, {&_swigt__p_IUnitConverter, _p_IUnitConverterTo_p_ICloneable, 0, 0}, {&_swigt__p_IFormFactor, _p_IFormFactorTo_p_ICloneable, 0, 0}, {&_swigt__p_MultiLayer, _p_MultiLayerTo_p_ICloneable, 0, 0}, {&_swigt__p_RotationX, _p_RotationXTo_p_ICloneable, 0, 0}, {&_swigt__p_RotationY, _p_RotationYTo_p_ICloneable, 0, 0}, {&_swigt__p_LayerRoughness, _p_LayerRoughnessTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorCylinder, _p_FormFactorCylinderTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorEllipsoidalCylinder, _p_FormFactorEllipsoidalCylinderTo_p_ICloneable, 0, 0}, {&_swigt__p_RotationZ, _p_RotationZTo_p_ICloneable, 0, 0}, {&_swigt__p_FTDistribution2DCauchy, _p_FTDistribution2DCauchyTo_p_ICloneable, 0, 0}, {&_swigt__p_FTDistribution1DCauchy, _p_FTDistribution1DCauchyTo_p_ICloneable, 0, 0}, {&_swigt__p_FTDecayFunction2DCauchy, _p_FTDecayFunction2DCauchyTo_p_ICloneable, 0, 0}, {&_swigt__p_FTDecayFunction1DCauchy, _p_FTDecayFunction1DCauchyTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorTetrahedron, _p_FormFactorTetrahedronTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorPolyhedron, _p_FormFactorPolyhedronTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorCuboctahedron, _p_FormFactorCuboctahedronTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorDodecahedron, _p_FormFactorDodecahedronTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorIcosahedron, _p_FormFactorIcosahedronTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorCrystal, _p_FormFactorCrystalTo_p_ICloneable, 0, 0}, {&_swigt__p_InterferenceFunction2DParaCrystal, _p_InterferenceFunction2DParaCrystalTo_p_ICloneable, 0, 0}, {&_swigt__p_InterferenceFunctionRadialParaCrystal, _p_InterferenceFunctionRadialParaCrystalTo_p_ICloneable, 0, 0}, {&_swigt__p_Crystal, _p_CrystalTo_p_ICloneable, 0, 0}, {&_swigt__p_MesoCrystal, _p_MesoCrystalTo_p_ICloneable, 0, 0}, {&_swigt__p_MisesGaussPeakShape, _p_MisesGaussPeakShapeTo_p_ICloneable, 0, 0}, {&_swigt__p_MisesFisherGaussPeakShape, _p_MisesFisherGaussPeakShapeTo_p_ICloneable, 0, 0}, {&_swigt__p_LorentzFisherPeakShape, _p_LorentzFisherPeakShapeTo_p_ICloneable, 0, 0}, {&_swigt__p_GaussFisherPeakShape, _p_GaussFisherPeakShapeTo_p_ICloneable, 0, 0}, {&_swigt__p_IsotropicLorentzPeakShape, _p_IsotropicLorentzPeakShapeTo_p_ICloneable, 0, 0}, {&_swigt__p_IPeakShape, _p_IPeakShapeTo_p_ICloneable, 0, 0}, {&_swigt__p_IsotropicGaussPeakShape, _p_IsotropicGaussPeakShapeTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorWeighted, _p_FormFactorWeightedTo_p_ICloneable, 0, 0}, {&_swigt__p_FTDistribution1DVoigt, _p_FTDistribution1DVoigtTo_p_ICloneable, 0, 0}, {&_swigt__p_FTDecayFunction1DVoigt, _p_FTDecayFunction1DVoigtTo_p_ICloneable, 0, 0}, {&_swigt__p_IChiSquaredModule, _p_IChiSquaredModuleTo_p_ICloneable, 0, 0}, {&_swigt__p_ChiSquaredModule, _p_ChiSquaredModuleTo_p_ICloneable, 0, 0}, {&_swigt__p_Lattice2D, _p_Lattice2DTo_p_ICloneable, 0, 0}, {&_swigt__p_ParticleCoreShell, _p_ParticleCoreShellTo_p_ICloneable, 0, 0}, {&_swigt__p_Particle, _p_ParticleTo_p_ICloneable, 0, 0}, {&_swigt__p_IParticle, _p_IParticleTo_p_ICloneable, 0, 0}, {&_swigt__p_IAbstractParticle, _p_IAbstractParticleTo_p_ICloneable, 0, 0}, {&_swigt__p_FTDistribution2DGate, _p_FTDistribution2DGateTo_p_ICloneable, 0, 0}, {&_swigt__p_IFormFactorDecorator, _p_IFormFactorDecoratorTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorAnisoPyramid, _p_FormFactorAnisoPyramidTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorPyramid, _p_FormFactorPyramidTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorTruncatedCube, _p_FormFactorTruncatedCubeTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorCantellatedCube, _p_FormFactorCantellatedCubeTo_p_ICloneable, 0, 0}, {&_swigt__p_RangedDistribution, _p_RangedDistributionTo_p_ICloneable, 0, 0}, {&_swigt__p_ParticleDistribution, _p_ParticleDistributionTo_p_ICloneable, 0, 0}, {&_swigt__p_FTDistribution1DTriangle, _p_FTDistribution1DTriangleTo_p_ICloneable, 0, 0}, {&_swigt__p_FTDecayFunction1DTriangle, _p_FTDecayFunction1DTriangleTo_p_ICloneable, 0, 0}, {&_swigt__p_ProfileBar, _p_ProfileBarTo_p_ICloneable, 0, 0}, {&_swigt__p_ParameterPool, _p_ParameterPoolTo_p_ICloneable, 0, 0}, {&_swigt__p_FootprintGauss, _p_FootprintGaussTo_p_ICloneable, 0, 0}, {&_swigt__p_ICloneable, 0, 0, 0}, {&_swigt__p_FormFactorDot, _p_FormFactorDotTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorRipple2Gauss, _p_FormFactorRipple2GaussTo_p_ICloneable, 0, 0}, {&_swigt__p_DistributionGaussian, _p_DistributionGaussianTo_p_ICloneable, 0, 0}, {&_swigt__p_ResolutionFunction2DGaussian, _p_ResolutionFunction2DGaussianTo_p_ICloneable, 0, 0}, {&_swigt__p_RangedDistributionGaussian, _p_RangedDistributionGaussianTo_p_ICloneable, 0, 0}, {&_swigt__p_PoissonNoiseBackground, _p_PoissonNoiseBackgroundTo_p_ICloneable, 0, 0}, {&_swigt__p_ConstantBackground, _p_ConstantBackgroundTo_p_ICloneable, 0, 0}, {&_swigt__p_IBackground, _p_IBackgroundTo_p_ICloneable, 0, 0}, {&_swigt__p_ScanResolution, _p_ScanResolutionTo_p_ICloneable, 0, 0}, {&_swigt__p_IDetectorResolution, _p_IDetectorResolutionTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorTruncatedSphere, _p_FormFactorTruncatedSphereTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorFullSphere, _p_FormFactorFullSphereTo_p_ICloneable, 0, 0}, {&_swigt__p_IProfileRipple, _p_IProfileRippleTo_p_ICloneable, 0, 0}, {&_swigt__p_IClusteredParticles, _p_IClusteredParticlesTo_p_ICloneable, 0, 0}, {&_swigt__p_InterferenceFunctionHardDisk, _p_InterferenceFunctionHardDiskTo_p_ICloneable, 0, 0}, {&_swigt__p_ParticleComposition, _p_ParticleCompositionTo_p_ICloneable, 0, 0}, {&_swigt__p_DistributionCosine, _p_DistributionCosineTo_p_ICloneable, 0, 0}, {&_swigt__p_FTDistribution1DCosine, _p_FTDistribution1DCosineTo_p_ICloneable, 0, 0}, {&_swigt__p_RangedDistributionCosine, _p_RangedDistributionCosineTo_p_ICloneable, 0, 0}, {&_swigt__p_Polygon, _p_PolygonTo_p_ICloneable, 0, 0}, {&_swigt__p_IInterferenceFunction, _p_IInterferenceFunctionTo_p_ICloneable, 0, 0}, {&_swigt__p_InterferenceFunctionTwin, _p_InterferenceFunctionTwinTo_p_ICloneable, 0, 0}, {&_swigt__p_QSpecScan, _p_QSpecScanTo_p_ICloneable, 0, 0}, {&_swigt__p_AngularSpecScan, _p_AngularSpecScanTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorGaussSphere, _p_FormFactorGaussSphereTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorHollowSphere, _p_FormFactorHollowSphereTo_p_ICloneable, 0, 0}, {&_swigt__p_VerticalLine, _p_VerticalLineTo_p_ICloneable, 0, 0}, {&_swigt__p_FTDecayFunction2DGauss, _p_FTDecayFunction2DGaussTo_p_ICloneable, 0, 0}, {&_swigt__p_FTDistribution2DGauss, _p_FTDistribution2DGaussTo_p_ICloneable, 0, 0}, {&_swigt__p_IFormFactorBorn, _p_IFormFactorBornTo_p_ICloneable, 0, 0}, {&_swigt__p_RectangularDetector, _p_RectangularDetectorTo_p_ICloneable, 0, 0}, {&_swigt__p_IsGISAXSDetector, _p_IsGISAXSDetectorTo_p_ICloneable, 0, 0}, {&_swigt__p_SphericalDetector, _p_SphericalDetectorTo_p_ICloneable, 0, 0}, {&_swigt__p_IDetector, _p_IDetectorTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorTruncatedSpheroid, _p_FormFactorTruncatedSpheroidTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorFullSpheroid, _p_FormFactorFullSpheroidTo_p_ICloneable, 0, 0}, {&_swigt__p_ISpecularScan, _p_ISpecularScanTo_p_ICloneable, 0, 0}, {&_swigt__p_InterferenceFunctionFinite3DLattice, _p_InterferenceFunctionFinite3DLatticeTo_p_ICloneable, 0, 0}, {&_swigt__p_InterferenceFunctionFinite2DLattice, _p_InterferenceFunctionFinite2DLatticeTo_p_ICloneable, 0, 0}, {&_swigt__p_InterferenceFunction3DLattice, _p_InterferenceFunction3DLatticeTo_p_ICloneable, 0, 0}, {&_swigt__p_InterferenceFunction2DSuperLattice, _p_InterferenceFunction2DSuperLatticeTo_p_ICloneable, 0, 0}, {&_swigt__p_InterferenceFunction2DLattice, _p_InterferenceFunction2DLatticeTo_p_ICloneable, 0, 0}, {&_swigt__p_InterferenceFunction1DLattice, _p_InterferenceFunction1DLatticeTo_p_ICloneable, 0, 0}, {&_swigt__p_HexagonalLattice, _p_HexagonalLatticeTo_p_ICloneable, 0, 0}, {&_swigt__p_SquareLattice, _p_SquareLatticeTo_p_ICloneable, 0, 0}, {&_swigt__p_BasicLattice, _p_BasicLatticeTo_p_ICloneable, 0, 0}, {&_swigt__p_IShape2D, _p_IShape2DTo_p_ICloneable, 0, 0}, {&_swigt__p_FootprintSquare, _p_FootprintSquareTo_p_ICloneable, 0, 0}, {&_swigt__p_Rectangle, _p_RectangleTo_p_ICloneable, 0, 0}, {&_swigt__p_HorizontalLine, _p_HorizontalLineTo_p_ICloneable, 0, 0}, {&_swigt__p_FTDecayFunction1DGauss, _p_FTDecayFunction1DGaussTo_p_ICloneable, 0, 0}, {&_swigt__p_FTDistribution1DGauss, _p_FTDistribution1DGaussTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorCone6, _p_FormFactorCone6To_p_ICloneable, 0, 0}, {&_swigt__p_IDistribution1D, _p_IDistribution1DTo_p_ICloneable, 0, 0}, {&_swigt__p_IFTDecayFunction1D, _p_IFTDecayFunction1DTo_p_ICloneable, 0, 0}, {&_swigt__p_IFTDistribution1D, _p_IFTDistribution1DTo_p_ICloneable, 0, 0}, {&_swigt__p_SpecularSimulation, _p_SpecularSimulationTo_p_ICloneable, 0, 0}, {&_swigt__p_DepthProbeSimulation, _p_DepthProbeSimulationTo_p_ICloneable, 0, 0}, {&_swigt__p_OffSpecSimulation, _p_OffSpecSimulationTo_p_ICloneable, 0, 0}, {&_swigt__p_GISASSimulation, _p_GISASSimulationTo_p_ICloneable, 0, 0}, {&_swigt__p_Simulation, _p_SimulationTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorCone, _p_FormFactorConeTo_p_ICloneable, 0, 0}, {&_swigt__p_DistributionLogNormal, _p_DistributionLogNormalTo_p_ICloneable, 0, 0}, {&_swigt__p_RangedDistributionLogNormal, _p_RangedDistributionLogNormalTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorBox, _p_FormFactorBoxTo_p_ICloneable, 0, 0}, {&_swigt__p_FTDistribution1DGate, _p_FTDistribution1DGateTo_p_ICloneable, 0, 0}, {&_swigt__p_ProfileRipple1, _p_ProfileRipple1To_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorPolygonalPrism, _p_FormFactorPolygonalPrismTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorLongBoxGauss, _p_FormFactorLongBoxGaussTo_p_ICloneable, 0, 0}, {&_swigt__p_ProfileRipple2, _p_ProfileRipple2To_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorPrism3, _p_FormFactorPrism3To_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorHemiEllipsoid, _p_FormFactorHemiEllipsoidTo_p_ICloneable, 0, 0}, {&_swigt__p_DistributionLorentz, _p_DistributionLorentzTo_p_ICloneable, 0, 0}, {&_swigt__p_RangedDistributionLorentz, _p_RangedDistributionLorentzTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorRipple1Lorentz, _p_FormFactorRipple1LorentzTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorRipple2Lorentz, _p_FormFactorRipple2LorentzTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorLongBoxLorentz, _p_FormFactorLongBoxLorentzTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorRipple1Box, _p_FormFactorRipple1BoxTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorPrism6, _p_FormFactorPrism6To_p_ICloneable, 0, 0}, {&_swigt__p_FTDistribution2DCone, _p_FTDistribution2DConeTo_p_ICloneable, 0, 0}, {&_swigt__p_IDetector2D, _p_IDetector2DTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorRipple2Box, _p_FormFactorRipple2BoxTo_p_ICloneable, 0, 0}, {&_swigt__p_IFootprintFactor, _p_IFootprintFactorTo_p_ICloneable, 0, 0}, {&_swigt__p_ISample, _p_ISampleTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorRipple1Gauss, _p_FormFactorRipple1GaussTo_p_ICloneable, 0, 0}, {&_swigt__p_IFTDistribution2D, _p_IFTDistribution2DTo_p_ICloneable, 0, 0}, {&_swigt__p_Simulation2D, _p_Simulation2DTo_p_ICloneable, 0, 0}, {&_swigt__p_Ellipse, _p_EllipseTo_p_ICloneable, 0, 0}, {&_swigt__p_IFTDecayFunction2D, _p_IFTDecayFunction2DTo_p_ICloneable, 0, 0}, {&_swigt__p_IResolutionFunction2D, _p_IResolutionFunction2DTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorSphereLogNormalRadius, _p_FormFactorSphereLogNormalRadiusTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorSphereGaussianRadius, _p_FormFactorSphereGaussianRadiusTo_p_ICloneable, 0, 0}, {&_swigt__p_Layer, _p_LayerTo_p_ICloneable, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_IClusteredParticles[] = { {&_swigt__p_IClusteredParticles, 0, 0, 0}, {&_swigt__p_Crystal, _p_CrystalTo_p_IClusteredParticles, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_IDetector[] = { {&_swigt__p_IDetector, 0, 0, 0}, {&_swigt__p_SphericalDetector, _p_SphericalDetectorTo_p_IDetector, 0, 0}, {&_swigt__p_IsGISAXSDetector, _p_IsGISAXSDetectorTo_p_IDetector, 0, 0}, {&_swigt__p_RectangularDetector, _p_RectangularDetectorTo_p_IDetector, 0, 0}, {&_swigt__p_IDetector2D, _p_IDetector2DTo_p_IDetector, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_IDetector2D[] = { {&_swigt__p_SphericalDetector, _p_SphericalDetectorTo_p_IDetector2D, 0, 0}, {&_swigt__p_IsGISAXSDetector, _p_IsGISAXSDetectorTo_p_IDetector2D, 0, 0}, {&_swigt__p_RectangularDetector, _p_RectangularDetectorTo_p_IDetector2D, 0, 0}, {&_swigt__p_IDetector2D, 0, 0, 0},{0, 0, 0, 0}}; @@ -137898,8 +137889,8 @@ static swig_cast_info _swigc__p_IFTDistribution2D[] = { {&_swigt__p_FTDistribut static swig_cast_info _swigc__p_IFactoryT_std__string_IMultiLayerBuilder_t[] = { {&_swigt__p_IFactoryT_std__string_IMultiLayerBuilder_t, 0, 0, 0}, {&_swigt__p_SampleBuilderFactory, _p_SampleBuilderFactoryTo_p_IFactoryT_std__string_IMultiLayerBuilder_t, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_IFactoryT_std__string_Simulation_t[] = { {&_swigt__p_SimulationFactory, _p_SimulationFactoryTo_p_IFactoryT_std__string_Simulation_t, 0, 0}, {&_swigt__p_IFactoryT_std__string_Simulation_t, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_IFootprintFactor[] = { {&_swigt__p_FootprintSquare, _p_FootprintSquareTo_p_IFootprintFactor, 0, 0}, {&_swigt__p_IFootprintFactor, 0, 0, 0}, {&_swigt__p_FootprintGauss, _p_FootprintGaussTo_p_IFootprintFactor, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_IFormFactor[] = { {&_swigt__p_FormFactorPrism6, _p_FormFactorPrism6To_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorHemiEllipsoid, _p_FormFactorHemiEllipsoidTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorPolygonalPrism, _p_FormFactorPolygonalPrismTo_p_IFormFactor, 0, 0}, {&_swigt__p_IFormFactor, 0, 0, 0}, {&_swigt__p_FormFactorFullSpheroid, _p_FormFactorFullSpheroidTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorTruncatedSpheroid, _p_FormFactorTruncatedSpheroidTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorRipple1Box, _p_FormFactorRipple1BoxTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorLongBoxGauss, _p_FormFactorLongBoxGaussTo_p_IFormFactor, 0, 0}, {&_swigt__p_ProfileRipple1, _p_ProfileRipple1To_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorPolygonalSurface, _p_FormFactorPolygonalSurfaceTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorCrystal, _p_FormFactorCrystalTo_p_IFormFactor, 0, 0}, {&_swigt__p_ProfileRipple2, _p_ProfileRipple2To_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorCantellatedCube, _p_FormFactorCantellatedCubeTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorTruncatedCube, _p_FormFactorTruncatedCubeTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorFullSphere, _p_FormFactorFullSphereTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorTruncatedSphere, _p_FormFactorTruncatedSphereTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorRipple1Gauss, _p_FormFactorRipple1GaussTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorEllipsoidalCylinder, _p_FormFactorEllipsoidalCylinderTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorCylinder, _p_FormFactorCylinderTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorBox, _p_FormFactorBoxTo_p_IFormFactor, 0, 0}, {&_swigt__p_IFormFactorDecorator, _p_IFormFactorDecoratorTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorIcosahedron, _p_FormFactorIcosahedronTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorDodecahedron, _p_FormFactorDodecahedronTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorCuboctahedron, _p_FormFactorCuboctahedronTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorPolyhedron, _p_FormFactorPolyhedronTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorTetrahedron, _p_FormFactorTetrahedronTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorCone, _p_FormFactorConeTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorCone6, _p_FormFactorCone6To_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorSphereLogNormalRadius, _p_FormFactorSphereLogNormalRadiusTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorSphereGaussianRadius, _p_FormFactorSphereGaussianRadiusTo_p_IFormFactor, 0, 0}, {&_swigt__p_IFormFactorBorn, _p_IFormFactorBornTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorGaussSphere, _p_FormFactorGaussSphereTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorHollowSphere, _p_FormFactorHollowSphereTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorDot, _p_FormFactorDotTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorRipple2Box, _p_FormFactorRipple2BoxTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorRipple2Lorentz, _p_FormFactorRipple2LorentzTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorRipple1Lorentz, _p_FormFactorRipple1LorentzTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorLongBoxLorentz, _p_FormFactorLongBoxLorentzTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorWeighted, _p_FormFactorWeightedTo_p_IFormFactor, 0, 0}, {&_swigt__p_ProfileBar, _p_ProfileBarTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorPyramid, _p_FormFactorPyramidTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorAnisoPyramid, _p_FormFactorAnisoPyramidTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorPrism3, _p_FormFactorPrism3To_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorRipple2Gauss, _p_FormFactorRipple2GaussTo_p_IFormFactor, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_IFormFactorBorn[] = { {&_swigt__p_FormFactorPrism6, _p_FormFactorPrism6To_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorHemiEllipsoid, _p_FormFactorHemiEllipsoidTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorPolygonalPrism, _p_FormFactorPolygonalPrismTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorFullSpheroid, _p_FormFactorFullSpheroidTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorTruncatedSpheroid, _p_FormFactorTruncatedSpheroidTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorRipple1Box, _p_FormFactorRipple1BoxTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorLongBoxGauss, _p_FormFactorLongBoxGaussTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_ProfileRipple1, _p_ProfileRipple1To_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorPolygonalSurface, _p_FormFactorPolygonalSurfaceTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_ProfileRipple2, _p_ProfileRipple2To_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorCantellatedCube, _p_FormFactorCantellatedCubeTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorTruncatedCube, _p_FormFactorTruncatedCubeTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorFullSphere, _p_FormFactorFullSphereTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorTruncatedSphere, _p_FormFactorTruncatedSphereTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorRipple1Gauss, _p_FormFactorRipple1GaussTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorEllipsoidalCylinder, _p_FormFactorEllipsoidalCylinderTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorCylinder, _p_FormFactorCylinderTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorBox, _p_FormFactorBoxTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorTetrahedron, _p_FormFactorTetrahedronTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorIcosahedron, _p_FormFactorIcosahedronTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorPolyhedron, _p_FormFactorPolyhedronTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorCuboctahedron, _p_FormFactorCuboctahedronTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorDodecahedron, _p_FormFactorDodecahedronTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorCone, _p_FormFactorConeTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorCone6, _p_FormFactorCone6To_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorSphereLogNormalRadius, _p_FormFactorSphereLogNormalRadiusTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorSphereGaussianRadius, _p_FormFactorSphereGaussianRadiusTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_IFormFactorBorn, 0, 0, 0}, {&_swigt__p_FormFactorGaussSphere, _p_FormFactorGaussSphereTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorHollowSphere, _p_FormFactorHollowSphereTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorDot, _p_FormFactorDotTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorRipple2Box, _p_FormFactorRipple2BoxTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorRipple2Lorentz, _p_FormFactorRipple2LorentzTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorRipple1Lorentz, _p_FormFactorRipple1LorentzTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorLongBoxLorentz, _p_FormFactorLongBoxLorentzTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_ProfileBar, _p_ProfileBarTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorPyramid, _p_FormFactorPyramidTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorAnisoPyramid, _p_FormFactorAnisoPyramidTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorPrism3, _p_FormFactorPrism3To_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorRipple2Gauss, _p_FormFactorRipple2GaussTo_p_IFormFactorBorn, 0, 0},{0, 0, 0, 0}}; +static swig_cast_info _swigc__p_IFormFactor[] = { {&_swigt__p_FormFactorPrism6, _p_FormFactorPrism6To_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorHemiEllipsoid, _p_FormFactorHemiEllipsoidTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorPolygonalPrism, _p_FormFactorPolygonalPrismTo_p_IFormFactor, 0, 0}, {&_swigt__p_IFormFactor, 0, 0, 0}, {&_swigt__p_FormFactorFullSpheroid, _p_FormFactorFullSpheroidTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorTruncatedSpheroid, _p_FormFactorTruncatedSpheroidTo_p_IFormFactor, 0, 0}, {&_swigt__p_IProfileRipple, _p_IProfileRippleTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorRipple1Box, _p_FormFactorRipple1BoxTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorLongBoxGauss, _p_FormFactorLongBoxGaussTo_p_IFormFactor, 0, 0}, {&_swigt__p_ProfileRipple1, _p_ProfileRipple1To_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorPolygonalSurface, _p_FormFactorPolygonalSurfaceTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorCrystal, _p_FormFactorCrystalTo_p_IFormFactor, 0, 0}, {&_swigt__p_ProfileRipple2, _p_ProfileRipple2To_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorCantellatedCube, _p_FormFactorCantellatedCubeTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorTruncatedCube, _p_FormFactorTruncatedCubeTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorFullSphere, _p_FormFactorFullSphereTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorTruncatedSphere, _p_FormFactorTruncatedSphereTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorRipple1Gauss, _p_FormFactorRipple1GaussTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorEllipsoidalCylinder, _p_FormFactorEllipsoidalCylinderTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorCylinder, _p_FormFactorCylinderTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorBox, _p_FormFactorBoxTo_p_IFormFactor, 0, 0}, {&_swigt__p_IFormFactorDecorator, _p_IFormFactorDecoratorTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorIcosahedron, _p_FormFactorIcosahedronTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorDodecahedron, _p_FormFactorDodecahedronTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorCuboctahedron, _p_FormFactorCuboctahedronTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorPolyhedron, _p_FormFactorPolyhedronTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorTetrahedron, _p_FormFactorTetrahedronTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorCone, _p_FormFactorConeTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorCone6, _p_FormFactorCone6To_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorSphereLogNormalRadius, _p_FormFactorSphereLogNormalRadiusTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorSphereGaussianRadius, _p_FormFactorSphereGaussianRadiusTo_p_IFormFactor, 0, 0}, {&_swigt__p_IFormFactorBorn, _p_IFormFactorBornTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorGaussSphere, _p_FormFactorGaussSphereTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorHollowSphere, _p_FormFactorHollowSphereTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorDot, _p_FormFactorDotTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorRipple2Box, _p_FormFactorRipple2BoxTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorRipple2Lorentz, _p_FormFactorRipple2LorentzTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorRipple1Lorentz, _p_FormFactorRipple1LorentzTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorLongBoxLorentz, _p_FormFactorLongBoxLorentzTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorWeighted, _p_FormFactorWeightedTo_p_IFormFactor, 0, 0}, {&_swigt__p_ProfileBar, _p_ProfileBarTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorAnisoPyramid, _p_FormFactorAnisoPyramidTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorPrism3, _p_FormFactorPrism3To_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorPyramid, _p_FormFactorPyramidTo_p_IFormFactor, 0, 0}, {&_swigt__p_FormFactorRipple2Gauss, _p_FormFactorRipple2GaussTo_p_IFormFactor, 0, 0},{0, 0, 0, 0}}; +static swig_cast_info _swigc__p_IFormFactorBorn[] = { {&_swigt__p_FormFactorPrism6, _p_FormFactorPrism6To_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorHemiEllipsoid, _p_FormFactorHemiEllipsoidTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorPolygonalPrism, _p_FormFactorPolygonalPrismTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorFullSpheroid, _p_FormFactorFullSpheroidTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorTruncatedSpheroid, _p_FormFactorTruncatedSpheroidTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_IProfileRipple, _p_IProfileRippleTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorRipple1Box, _p_FormFactorRipple1BoxTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorLongBoxGauss, _p_FormFactorLongBoxGaussTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_ProfileRipple1, _p_ProfileRipple1To_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorPolygonalSurface, _p_FormFactorPolygonalSurfaceTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_ProfileRipple2, _p_ProfileRipple2To_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorCantellatedCube, _p_FormFactorCantellatedCubeTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorTruncatedCube, _p_FormFactorTruncatedCubeTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorFullSphere, _p_FormFactorFullSphereTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorTruncatedSphere, _p_FormFactorTruncatedSphereTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorRipple1Gauss, _p_FormFactorRipple1GaussTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorEllipsoidalCylinder, _p_FormFactorEllipsoidalCylinderTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorCylinder, _p_FormFactorCylinderTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorBox, _p_FormFactorBoxTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorTetrahedron, _p_FormFactorTetrahedronTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorIcosahedron, _p_FormFactorIcosahedronTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorDodecahedron, _p_FormFactorDodecahedronTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorPolyhedron, _p_FormFactorPolyhedronTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorCuboctahedron, _p_FormFactorCuboctahedronTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorCone, _p_FormFactorConeTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorCone6, _p_FormFactorCone6To_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorSphereLogNormalRadius, _p_FormFactorSphereLogNormalRadiusTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorSphereGaussianRadius, _p_FormFactorSphereGaussianRadiusTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_IFormFactorBorn, 0, 0, 0}, {&_swigt__p_FormFactorGaussSphere, _p_FormFactorGaussSphereTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorHollowSphere, _p_FormFactorHollowSphereTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorDot, _p_FormFactorDotTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorRipple2Box, _p_FormFactorRipple2BoxTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorRipple2Lorentz, _p_FormFactorRipple2LorentzTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorRipple1Lorentz, _p_FormFactorRipple1LorentzTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorLongBoxLorentz, _p_FormFactorLongBoxLorentzTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_ProfileBar, _p_ProfileBarTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorPyramid, _p_FormFactorPyramidTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorAnisoPyramid, _p_FormFactorAnisoPyramidTo_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorPrism3, _p_FormFactorPrism3To_p_IFormFactorBorn, 0, 0}, {&_swigt__p_FormFactorRipple2Gauss, _p_FormFactorRipple2GaussTo_p_IFormFactorBorn, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_IFormFactorDecorator[] = { {&_swigt__p_IFormFactorDecorator, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_IHistogram[] = { {&_swigt__p_IHistogram, 0, 0, 0}, {&_swigt__p_Histogram2D, _p_Histogram2DTo_p_IHistogram, 0, 0}, {&_swigt__p_Histogram1D, _p_Histogram1DTo_p_IHistogram, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_IIntensityFunction[] = { {&_swigt__p_IntensityFunctionSqrt, _p_IntensityFunctionSqrtTo_p_IIntensityFunction, 0, 0}, {&_swigt__p_IIntensityFunction, 0, 0, 0}, {&_swigt__p_IntensityFunctionLog, _p_IntensityFunctionLogTo_p_IIntensityFunction, 0, 0},{0, 0, 0, 0}}; @@ -137907,18 +137898,19 @@ static swig_cast_info _swigc__p_IInterferenceFunction[] = { {&_swigt__p_Interfe static swig_cast_info _swigc__p_ILatticeOrientation[] = { {&_swigt__p_ILatticeOrientation, 0, 0, 0}, {&_swigt__p_MillerIndexOrientation, _p_MillerIndexOrientationTo_p_ILatticeOrientation, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_ILayout[] = { {&_swigt__p_ILayout, 0, 0, 0}, {&_swigt__p_ParticleLayout, _p_ParticleLayoutTo_p_ILayout, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_IMultiLayerBuilder[] = { {&_swigt__p_IMultiLayerBuilder, 0, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_INode[] = { {&_swigt__p_FormFactorBox, _p_FormFactorBoxTo_p_INode, 0, 0}, {&_swigt__p_IBackground, _p_IBackgroundTo_p_INode, 0, 0}, {&_swigt__p_ConstantBackground, _p_ConstantBackgroundTo_p_INode, 0, 0}, {&_swigt__p_PoissonNoiseBackground, _p_PoissonNoiseBackgroundTo_p_INode, 0, 0}, {&_swigt__p_FormFactorSphereGaussianRadius, _p_FormFactorSphereGaussianRadiusTo_p_INode, 0, 0}, {&_swigt__p_FormFactorSphereLogNormalRadius, _p_FormFactorSphereLogNormalRadiusTo_p_INode, 0, 0}, {&_swigt__p_MultiLayer, _p_MultiLayerTo_p_INode, 0, 0}, {&_swigt__p_ParticleDistribution, _p_ParticleDistributionTo_p_INode, 0, 0}, {&_swigt__p_FTDistribution1DGauss, _p_FTDistribution1DGaussTo_p_INode, 0, 0}, {&_swigt__p_FTDecayFunction1DGauss, _p_FTDecayFunction1DGaussTo_p_INode, 0, 0}, {&_swigt__p_InterferenceFunctionNone, _p_InterferenceFunctionNoneTo_p_INode, 0, 0}, {&_swigt__p_IDetector2D, _p_IDetector2DTo_p_INode, 0, 0}, {&_swigt__p_ParticleLayout, _p_ParticleLayoutTo_p_INode, 0, 0}, {&_swigt__p_ILayout, _p_ILayoutTo_p_INode, 0, 0}, {&_swigt__p_FormFactorHemiEllipsoid, _p_FormFactorHemiEllipsoidTo_p_INode, 0, 0}, {&_swigt__p_SphericalDetector, _p_SphericalDetectorTo_p_INode, 0, 0}, {&_swigt__p_IsGISAXSDetector, _p_IsGISAXSDetectorTo_p_INode, 0, 0}, {&_swigt__p_RectangularDetector, _p_RectangularDetectorTo_p_INode, 0, 0}, {&_swigt__p_IDetector, _p_IDetectorTo_p_INode, 0, 0}, {&_swigt__p_INode, 0, 0, 0}, {&_swigt__p_FormFactorRipple2Box, _p_FormFactorRipple2BoxTo_p_INode, 0, 0}, {&_swigt__p_MisesGaussPeakShape, _p_MisesGaussPeakShapeTo_p_INode, 0, 0}, {&_swigt__p_MisesFisherGaussPeakShape, _p_MisesFisherGaussPeakShapeTo_p_INode, 0, 0}, {&_swigt__p_LorentzFisherPeakShape, _p_LorentzFisherPeakShapeTo_p_INode, 0, 0}, {&_swigt__p_GaussFisherPeakShape, _p_GaussFisherPeakShapeTo_p_INode, 0, 0}, {&_swigt__p_IsotropicLorentzPeakShape, _p_IsotropicLorentzPeakShapeTo_p_INode, 0, 0}, {&_swigt__p_IsotropicGaussPeakShape, _p_IsotropicGaussPeakShapeTo_p_INode, 0, 0}, {&_swigt__p_IPeakShape, _p_IPeakShapeTo_p_INode, 0, 0}, {&_swigt__p_FormFactorPrism3, _p_FormFactorPrism3To_p_INode, 0, 0}, {&_swigt__p_DistributionTrapezoid, _p_DistributionTrapezoidTo_p_INode, 0, 0}, {&_swigt__p_FormFactorIcosahedron, _p_FormFactorIcosahedronTo_p_INode, 0, 0}, {&_swigt__p_FormFactorTetrahedron, _p_FormFactorTetrahedronTo_p_INode, 0, 0}, {&_swigt__p_FormFactorPolyhedron, _p_FormFactorPolyhedronTo_p_INode, 0, 0}, {&_swigt__p_FormFactorCuboctahedron, _p_FormFactorCuboctahedronTo_p_INode, 0, 0}, {&_swigt__p_FormFactorDodecahedron, _p_FormFactorDodecahedronTo_p_INode, 0, 0}, {&_swigt__p_FormFactorPrism6, _p_FormFactorPrism6To_p_INode, 0, 0}, {&_swigt__p_Simulation, _p_SimulationTo_p_INode, 0, 0}, {&_swigt__p_GISASSimulation, _p_GISASSimulationTo_p_INode, 0, 0}, {&_swigt__p_DepthProbeSimulation, _p_DepthProbeSimulationTo_p_INode, 0, 0}, {&_swigt__p_SpecularSimulation, _p_SpecularSimulationTo_p_INode, 0, 0}, {&_swigt__p_OffSpecSimulation, _p_OffSpecSimulationTo_p_INode, 0, 0}, {&_swigt__p_FTDistribution2DCone, _p_FTDistribution2DConeTo_p_INode, 0, 0}, {&_swigt__p_ParticleCoreShell, _p_ParticleCoreShellTo_p_INode, 0, 0}, {&_swigt__p_ProfileBar, _p_ProfileBarTo_p_INode, 0, 0}, {&_swigt__p_FormFactorFullSphere, _p_FormFactorFullSphereTo_p_INode, 0, 0}, {&_swigt__p_FormFactorTruncatedSphere, _p_FormFactorTruncatedSphereTo_p_INode, 0, 0}, {&_swigt__p_IFormFactor, _p_IFormFactorTo_p_INode, 0, 0}, {&_swigt__p_FormFactorPolygonalSurface, _p_FormFactorPolygonalSurfaceTo_p_INode, 0, 0}, {&_swigt__p_ISample, _p_ISampleTo_p_INode, 0, 0}, {&_swigt__p_FormFactorLongBoxGauss, _p_FormFactorLongBoxGaussTo_p_INode, 0, 0}, {&_swigt__p_FormFactorPolygonalPrism, _p_FormFactorPolygonalPrismTo_p_INode, 0, 0}, {&_swigt__p_InterferenceFunctionHardDisk, _p_InterferenceFunctionHardDiskTo_p_INode, 0, 0}, {&_swigt__p_FTDistribution2DGate, _p_FTDistribution2DGateTo_p_INode, 0, 0}, {&_swigt__p_DistributionLogNormal, _p_DistributionLogNormalTo_p_INode, 0, 0}, {&_swigt__p_FormFactorRipple1Box, _p_FormFactorRipple1BoxTo_p_INode, 0, 0}, {&_swigt__p_Instrument, _p_InstrumentTo_p_INode, 0, 0}, {&_swigt__p_FTDecayFunction1DVoigt, _p_FTDecayFunction1DVoigtTo_p_INode, 0, 0}, {&_swigt__p_FTDistribution1DVoigt, _p_FTDistribution1DVoigtTo_p_INode, 0, 0}, {&_swigt__p_IRotation, _p_IRotationTo_p_INode, 0, 0}, {&_swigt__p_IdentityRotation, _p_IdentityRotationTo_p_INode, 0, 0}, {&_swigt__p_FormFactorTruncatedSpheroid, _p_FormFactorTruncatedSpheroidTo_p_INode, 0, 0}, {&_swigt__p_FormFactorFullSpheroid, _p_FormFactorFullSpheroidTo_p_INode, 0, 0}, {&_swigt__p_RotationX, _p_RotationXTo_p_INode, 0, 0}, {&_swigt__p_FootprintGauss, _p_FootprintGaussTo_p_INode, 0, 0}, {&_swigt__p_FormFactorTruncatedCube, _p_FormFactorTruncatedCubeTo_p_INode, 0, 0}, {&_swigt__p_FormFactorCantellatedCube, _p_FormFactorCantellatedCubeTo_p_INode, 0, 0}, {&_swigt__p_RotationY, _p_RotationYTo_p_INode, 0, 0}, {&_swigt__p_FTDecayFunction2DGauss, _p_FTDecayFunction2DGaussTo_p_INode, 0, 0}, {&_swigt__p_FTDistribution2DGauss, _p_FTDistribution2DGaussTo_p_INode, 0, 0}, {&_swigt__p_RotationZ, _p_RotationZTo_p_INode, 0, 0}, {&_swigt__p_FormFactorRipple2Gauss, _p_FormFactorRipple2GaussTo_p_INode, 0, 0}, {&_swigt__p_IFormFactorBorn, _p_IFormFactorBornTo_p_INode, 0, 0}, {&_swigt__p_IDetectorResolution, _p_IDetectorResolutionTo_p_INode, 0, 0}, {&_swigt__p_IClusteredParticles, _p_IClusteredParticlesTo_p_INode, 0, 0}, {&_swigt__p_IAbstractParticle, _p_IAbstractParticleTo_p_INode, 0, 0}, {&_swigt__p_IParticle, _p_IParticleTo_p_INode, 0, 0}, {&_swigt__p_Particle, _p_ParticleTo_p_INode, 0, 0}, {&_swigt__p_Lattice2D, _p_Lattice2DTo_p_INode, 0, 0}, {&_swigt__p_DistributionGate, _p_DistributionGateTo_p_INode, 0, 0}, {&_swigt__p_IFTDistribution1D, _p_IFTDistribution1DTo_p_INode, 0, 0}, {&_swigt__p_IDistribution1D, _p_IDistribution1DTo_p_INode, 0, 0}, {&_swigt__p_IFTDecayFunction1D, _p_IFTDecayFunction1DTo_p_INode, 0, 0}, {&_swigt__p_FormFactorCone, _p_FormFactorConeTo_p_INode, 0, 0}, {&_swigt__p_InterferenceFunctionTwin, _p_InterferenceFunctionTwinTo_p_INode, 0, 0}, {&_swigt__p_ProfileRipple1, _p_ProfileRipple1To_p_INode, 0, 0}, {&_swigt__p_Layer, _p_LayerTo_p_INode, 0, 0}, {&_swigt__p_FormFactorPyramid, _p_FormFactorPyramidTo_p_INode, 0, 0}, {&_swigt__p_FormFactorAnisoPyramid, _p_FormFactorAnisoPyramidTo_p_INode, 0, 0}, {&_swigt__p_ProfileRipple2, _p_ProfileRipple2To_p_INode, 0, 0}, {&_swigt__p_FormFactorEllipsoidalCylinder, _p_FormFactorEllipsoidalCylinderTo_p_INode, 0, 0}, {&_swigt__p_FormFactorCylinder, _p_FormFactorCylinderTo_p_INode, 0, 0}, {&_swigt__p_DistributionGaussian, _p_DistributionGaussianTo_p_INode, 0, 0}, {&_swigt__p_ResolutionFunction2DGaussian, _p_ResolutionFunction2DGaussianTo_p_INode, 0, 0}, {&_swigt__p_IFootprintFactor, _p_IFootprintFactorTo_p_INode, 0, 0}, {&_swigt__p_ParticleComposition, _p_ParticleCompositionTo_p_INode, 0, 0}, {&_swigt__p_FTDistribution1DCosine, _p_FTDistribution1DCosineTo_p_INode, 0, 0}, {&_swigt__p_FTDistribution1DGate, _p_FTDistribution1DGateTo_p_INode, 0, 0}, {&_swigt__p_DistributionCosine, _p_DistributionCosineTo_p_INode, 0, 0}, {&_swigt__p_FTDistribution2DVoigt, _p_FTDistribution2DVoigtTo_p_INode, 0, 0}, {&_swigt__p_FTDecayFunction2DVoigt, _p_FTDecayFunction2DVoigtTo_p_INode, 0, 0}, {&_swigt__p_FTDistribution1DCauchy, _p_FTDistribution1DCauchyTo_p_INode, 0, 0}, {&_swigt__p_FTDecayFunction1DCauchy, _p_FTDecayFunction1DCauchyTo_p_INode, 0, 0}, {&_swigt__p_FTDistribution2DCauchy, _p_FTDistribution2DCauchyTo_p_INode, 0, 0}, {&_swigt__p_FTDecayFunction2DCauchy, _p_FTDecayFunction2DCauchyTo_p_INode, 0, 0}, {&_swigt__p_IInterferenceFunction, _p_IInterferenceFunctionTo_p_INode, 0, 0}, {&_swigt__p_FootprintSquare, _p_FootprintSquareTo_p_INode, 0, 0}, {&_swigt__p_FormFactorCone6, _p_FormFactorCone6To_p_INode, 0, 0}, {&_swigt__p_FormFactorRipple1Gauss, _p_FormFactorRipple1GaussTo_p_INode, 0, 0}, {&_swigt__p_Beam, _p_BeamTo_p_INode, 0, 0}, {&_swigt__p_IFormFactorDecorator, _p_IFormFactorDecoratorTo_p_INode, 0, 0}, {&_swigt__p_FormFactorDot, _p_FormFactorDotTo_p_INode, 0, 0}, {&_swigt__p_LayerRoughness, _p_LayerRoughnessTo_p_INode, 0, 0}, {&_swigt__p_FormFactorCrystal, _p_FormFactorCrystalTo_p_INode, 0, 0}, {&_swigt__p_Crystal, _p_CrystalTo_p_INode, 0, 0}, {&_swigt__p_MesoCrystal, _p_MesoCrystalTo_p_INode, 0, 0}, {&_swigt__p_InterferenceFunction2DParaCrystal, _p_InterferenceFunction2DParaCrystalTo_p_INode, 0, 0}, {&_swigt__p_InterferenceFunctionRadialParaCrystal, _p_InterferenceFunctionRadialParaCrystalTo_p_INode, 0, 0}, {&_swigt__p_Simulation2D, _p_Simulation2DTo_p_INode, 0, 0}, {&_swigt__p_FormFactorHollowSphere, _p_FormFactorHollowSphereTo_p_INode, 0, 0}, {&_swigt__p_FormFactorGaussSphere, _p_FormFactorGaussSphereTo_p_INode, 0, 0}, {&_swigt__p_IFTDistribution2D, _p_IFTDistribution2DTo_p_INode, 0, 0}, {&_swigt__p_IFTDecayFunction2D, _p_IFTDecayFunction2DTo_p_INode, 0, 0}, {&_swigt__p_IResolutionFunction2D, _p_IResolutionFunction2DTo_p_INode, 0, 0}, {&_swigt__p_FormFactorWeighted, _p_FormFactorWeightedTo_p_INode, 0, 0}, {&_swigt__p_FormFactorRipple2Lorentz, _p_FormFactorRipple2LorentzTo_p_INode, 0, 0}, {&_swigt__p_FormFactorRipple1Lorentz, _p_FormFactorRipple1LorentzTo_p_INode, 0, 0}, {&_swigt__p_FormFactorLongBoxLorentz, _p_FormFactorLongBoxLorentzTo_p_INode, 0, 0}, {&_swigt__p_InterferenceFunction1DLattice, _p_InterferenceFunction1DLatticeTo_p_INode, 0, 0}, {&_swigt__p_InterferenceFunction2DLattice, _p_InterferenceFunction2DLatticeTo_p_INode, 0, 0}, {&_swigt__p_InterferenceFunction2DSuperLattice, _p_InterferenceFunction2DSuperLatticeTo_p_INode, 0, 0}, {&_swigt__p_InterferenceFunction3DLattice, _p_InterferenceFunction3DLatticeTo_p_INode, 0, 0}, {&_swigt__p_InterferenceFunctionFinite2DLattice, _p_InterferenceFunctionFinite2DLatticeTo_p_INode, 0, 0}, {&_swigt__p_InterferenceFunctionFinite3DLattice, _p_InterferenceFunctionFinite3DLatticeTo_p_INode, 0, 0}, {&_swigt__p_BasicLattice, _p_BasicLatticeTo_p_INode, 0, 0}, {&_swigt__p_SquareLattice, _p_SquareLatticeTo_p_INode, 0, 0}, {&_swigt__p_HexagonalLattice, _p_HexagonalLatticeTo_p_INode, 0, 0}, {&_swigt__p_DistributionLorentz, _p_DistributionLorentzTo_p_INode, 0, 0}, {&_swigt__p_Lattice, _p_LatticeTo_p_INode, 0, 0}, {&_swigt__p_FTDistribution1DTriangle, _p_FTDistribution1DTriangleTo_p_INode, 0, 0}, {&_swigt__p_FTDecayFunction1DTriangle, _p_FTDecayFunction1DTriangleTo_p_INode, 0, 0}, {&_swigt__p_RotationEuler, _p_RotationEulerTo_p_INode, 0, 0},{0, 0, 0, 0}}; +static swig_cast_info _swigc__p_INode[] = { {&_swigt__p_FormFactorBox, _p_FormFactorBoxTo_p_INode, 0, 0}, {&_swigt__p_IBackground, _p_IBackgroundTo_p_INode, 0, 0}, {&_swigt__p_ConstantBackground, _p_ConstantBackgroundTo_p_INode, 0, 0}, {&_swigt__p_PoissonNoiseBackground, _p_PoissonNoiseBackgroundTo_p_INode, 0, 0}, {&_swigt__p_FormFactorSphereGaussianRadius, _p_FormFactorSphereGaussianRadiusTo_p_INode, 0, 0}, {&_swigt__p_FormFactorSphereLogNormalRadius, _p_FormFactorSphereLogNormalRadiusTo_p_INode, 0, 0}, {&_swigt__p_MultiLayer, _p_MultiLayerTo_p_INode, 0, 0}, {&_swigt__p_ParticleDistribution, _p_ParticleDistributionTo_p_INode, 0, 0}, {&_swigt__p_FTDistribution1DGauss, _p_FTDistribution1DGaussTo_p_INode, 0, 0}, {&_swigt__p_FTDecayFunction1DGauss, _p_FTDecayFunction1DGaussTo_p_INode, 0, 0}, {&_swigt__p_InterferenceFunctionNone, _p_InterferenceFunctionNoneTo_p_INode, 0, 0}, {&_swigt__p_IDetector2D, _p_IDetector2DTo_p_INode, 0, 0}, {&_swigt__p_ParticleLayout, _p_ParticleLayoutTo_p_INode, 0, 0}, {&_swigt__p_ILayout, _p_ILayoutTo_p_INode, 0, 0}, {&_swigt__p_FormFactorHemiEllipsoid, _p_FormFactorHemiEllipsoidTo_p_INode, 0, 0}, {&_swigt__p_SphericalDetector, _p_SphericalDetectorTo_p_INode, 0, 0}, {&_swigt__p_IsGISAXSDetector, _p_IsGISAXSDetectorTo_p_INode, 0, 0}, {&_swigt__p_RectangularDetector, _p_RectangularDetectorTo_p_INode, 0, 0}, {&_swigt__p_IDetector, _p_IDetectorTo_p_INode, 0, 0}, {&_swigt__p_INode, 0, 0, 0}, {&_swigt__p_FormFactorRipple2Box, _p_FormFactorRipple2BoxTo_p_INode, 0, 0}, {&_swigt__p_MisesGaussPeakShape, _p_MisesGaussPeakShapeTo_p_INode, 0, 0}, {&_swigt__p_MisesFisherGaussPeakShape, _p_MisesFisherGaussPeakShapeTo_p_INode, 0, 0}, {&_swigt__p_LorentzFisherPeakShape, _p_LorentzFisherPeakShapeTo_p_INode, 0, 0}, {&_swigt__p_GaussFisherPeakShape, _p_GaussFisherPeakShapeTo_p_INode, 0, 0}, {&_swigt__p_IsotropicLorentzPeakShape, _p_IsotropicLorentzPeakShapeTo_p_INode, 0, 0}, {&_swigt__p_IsotropicGaussPeakShape, _p_IsotropicGaussPeakShapeTo_p_INode, 0, 0}, {&_swigt__p_IPeakShape, _p_IPeakShapeTo_p_INode, 0, 0}, {&_swigt__p_FormFactorPrism3, _p_FormFactorPrism3To_p_INode, 0, 0}, {&_swigt__p_DistributionTrapezoid, _p_DistributionTrapezoidTo_p_INode, 0, 0}, {&_swigt__p_FormFactorIcosahedron, _p_FormFactorIcosahedronTo_p_INode, 0, 0}, {&_swigt__p_FormFactorTetrahedron, _p_FormFactorTetrahedronTo_p_INode, 0, 0}, {&_swigt__p_FormFactorPolyhedron, _p_FormFactorPolyhedronTo_p_INode, 0, 0}, {&_swigt__p_FormFactorCuboctahedron, _p_FormFactorCuboctahedronTo_p_INode, 0, 0}, {&_swigt__p_FormFactorDodecahedron, _p_FormFactorDodecahedronTo_p_INode, 0, 0}, {&_swigt__p_FormFactorPrism6, _p_FormFactorPrism6To_p_INode, 0, 0}, {&_swigt__p_Simulation, _p_SimulationTo_p_INode, 0, 0}, {&_swigt__p_GISASSimulation, _p_GISASSimulationTo_p_INode, 0, 0}, {&_swigt__p_DepthProbeSimulation, _p_DepthProbeSimulationTo_p_INode, 0, 0}, {&_swigt__p_SpecularSimulation, _p_SpecularSimulationTo_p_INode, 0, 0}, {&_swigt__p_OffSpecSimulation, _p_OffSpecSimulationTo_p_INode, 0, 0}, {&_swigt__p_FTDistribution2DCone, _p_FTDistribution2DConeTo_p_INode, 0, 0}, {&_swigt__p_ParticleCoreShell, _p_ParticleCoreShellTo_p_INode, 0, 0}, {&_swigt__p_ProfileBar, _p_ProfileBarTo_p_INode, 0, 0}, {&_swigt__p_FormFactorFullSphere, _p_FormFactorFullSphereTo_p_INode, 0, 0}, {&_swigt__p_FormFactorTruncatedSphere, _p_FormFactorTruncatedSphereTo_p_INode, 0, 0}, {&_swigt__p_IFormFactor, _p_IFormFactorTo_p_INode, 0, 0}, {&_swigt__p_FormFactorPolygonalSurface, _p_FormFactorPolygonalSurfaceTo_p_INode, 0, 0}, {&_swigt__p_ISample, _p_ISampleTo_p_INode, 0, 0}, {&_swigt__p_FormFactorLongBoxGauss, _p_FormFactorLongBoxGaussTo_p_INode, 0, 0}, {&_swigt__p_FormFactorPolygonalPrism, _p_FormFactorPolygonalPrismTo_p_INode, 0, 0}, {&_swigt__p_InterferenceFunctionHardDisk, _p_InterferenceFunctionHardDiskTo_p_INode, 0, 0}, {&_swigt__p_FTDistribution2DGate, _p_FTDistribution2DGateTo_p_INode, 0, 0}, {&_swigt__p_DistributionLogNormal, _p_DistributionLogNormalTo_p_INode, 0, 0}, {&_swigt__p_FormFactorRipple1Box, _p_FormFactorRipple1BoxTo_p_INode, 0, 0}, {&_swigt__p_Instrument, _p_InstrumentTo_p_INode, 0, 0}, {&_swigt__p_FTDecayFunction1DVoigt, _p_FTDecayFunction1DVoigtTo_p_INode, 0, 0}, {&_swigt__p_FTDistribution1DVoigt, _p_FTDistribution1DVoigtTo_p_INode, 0, 0}, {&_swigt__p_IRotation, _p_IRotationTo_p_INode, 0, 0}, {&_swigt__p_IdentityRotation, _p_IdentityRotationTo_p_INode, 0, 0}, {&_swigt__p_FormFactorTruncatedSpheroid, _p_FormFactorTruncatedSpheroidTo_p_INode, 0, 0}, {&_swigt__p_FormFactorFullSpheroid, _p_FormFactorFullSpheroidTo_p_INode, 0, 0}, {&_swigt__p_RotationX, _p_RotationXTo_p_INode, 0, 0}, {&_swigt__p_FootprintGauss, _p_FootprintGaussTo_p_INode, 0, 0}, {&_swigt__p_FormFactorTruncatedCube, _p_FormFactorTruncatedCubeTo_p_INode, 0, 0}, {&_swigt__p_FormFactorCantellatedCube, _p_FormFactorCantellatedCubeTo_p_INode, 0, 0}, {&_swigt__p_RotationY, _p_RotationYTo_p_INode, 0, 0}, {&_swigt__p_FTDecayFunction2DGauss, _p_FTDecayFunction2DGaussTo_p_INode, 0, 0}, {&_swigt__p_FTDistribution2DGauss, _p_FTDistribution2DGaussTo_p_INode, 0, 0}, {&_swigt__p_RotationZ, _p_RotationZTo_p_INode, 0, 0}, {&_swigt__p_FormFactorRipple2Gauss, _p_FormFactorRipple2GaussTo_p_INode, 0, 0}, {&_swigt__p_IFormFactorBorn, _p_IFormFactorBornTo_p_INode, 0, 0}, {&_swigt__p_IDetectorResolution, _p_IDetectorResolutionTo_p_INode, 0, 0}, {&_swigt__p_IClusteredParticles, _p_IClusteredParticlesTo_p_INode, 0, 0}, {&_swigt__p_IAbstractParticle, _p_IAbstractParticleTo_p_INode, 0, 0}, {&_swigt__p_IParticle, _p_IParticleTo_p_INode, 0, 0}, {&_swigt__p_Particle, _p_ParticleTo_p_INode, 0, 0}, {&_swigt__p_Lattice2D, _p_Lattice2DTo_p_INode, 0, 0}, {&_swigt__p_DistributionGate, _p_DistributionGateTo_p_INode, 0, 0}, {&_swigt__p_IFTDistribution1D, _p_IFTDistribution1DTo_p_INode, 0, 0}, {&_swigt__p_IDistribution1D, _p_IDistribution1DTo_p_INode, 0, 0}, {&_swigt__p_IFTDecayFunction1D, _p_IFTDecayFunction1DTo_p_INode, 0, 0}, {&_swigt__p_FormFactorCone, _p_FormFactorConeTo_p_INode, 0, 0}, {&_swigt__p_InterferenceFunctionTwin, _p_InterferenceFunctionTwinTo_p_INode, 0, 0}, {&_swigt__p_ProfileRipple1, _p_ProfileRipple1To_p_INode, 0, 0}, {&_swigt__p_Layer, _p_LayerTo_p_INode, 0, 0}, {&_swigt__p_FormFactorPyramid, _p_FormFactorPyramidTo_p_INode, 0, 0}, {&_swigt__p_FormFactorAnisoPyramid, _p_FormFactorAnisoPyramidTo_p_INode, 0, 0}, {&_swigt__p_ProfileRipple2, _p_ProfileRipple2To_p_INode, 0, 0}, {&_swigt__p_FormFactorEllipsoidalCylinder, _p_FormFactorEllipsoidalCylinderTo_p_INode, 0, 0}, {&_swigt__p_FormFactorCylinder, _p_FormFactorCylinderTo_p_INode, 0, 0}, {&_swigt__p_DistributionGaussian, _p_DistributionGaussianTo_p_INode, 0, 0}, {&_swigt__p_ResolutionFunction2DGaussian, _p_ResolutionFunction2DGaussianTo_p_INode, 0, 0}, {&_swigt__p_IFootprintFactor, _p_IFootprintFactorTo_p_INode, 0, 0}, {&_swigt__p_ParticleComposition, _p_ParticleCompositionTo_p_INode, 0, 0}, {&_swigt__p_FTDistribution1DCosine, _p_FTDistribution1DCosineTo_p_INode, 0, 0}, {&_swigt__p_FTDistribution1DGate, _p_FTDistribution1DGateTo_p_INode, 0, 0}, {&_swigt__p_DistributionCosine, _p_DistributionCosineTo_p_INode, 0, 0}, {&_swigt__p_FTDistribution2DVoigt, _p_FTDistribution2DVoigtTo_p_INode, 0, 0}, {&_swigt__p_FTDecayFunction2DVoigt, _p_FTDecayFunction2DVoigtTo_p_INode, 0, 0}, {&_swigt__p_FTDistribution1DCauchy, _p_FTDistribution1DCauchyTo_p_INode, 0, 0}, {&_swigt__p_FTDecayFunction1DCauchy, _p_FTDecayFunction1DCauchyTo_p_INode, 0, 0}, {&_swigt__p_FTDistribution2DCauchy, _p_FTDistribution2DCauchyTo_p_INode, 0, 0}, {&_swigt__p_FTDecayFunction2DCauchy, _p_FTDecayFunction2DCauchyTo_p_INode, 0, 0}, {&_swigt__p_IInterferenceFunction, _p_IInterferenceFunctionTo_p_INode, 0, 0}, {&_swigt__p_FootprintSquare, _p_FootprintSquareTo_p_INode, 0, 0}, {&_swigt__p_FormFactorCone6, _p_FormFactorCone6To_p_INode, 0, 0}, {&_swigt__p_FormFactorRipple1Gauss, _p_FormFactorRipple1GaussTo_p_INode, 0, 0}, {&_swigt__p_Beam, _p_BeamTo_p_INode, 0, 0}, {&_swigt__p_IFormFactorDecorator, _p_IFormFactorDecoratorTo_p_INode, 0, 0}, {&_swigt__p_FormFactorDot, _p_FormFactorDotTo_p_INode, 0, 0}, {&_swigt__p_LayerRoughness, _p_LayerRoughnessTo_p_INode, 0, 0}, {&_swigt__p_FormFactorCrystal, _p_FormFactorCrystalTo_p_INode, 0, 0}, {&_swigt__p_IProfileRipple, _p_IProfileRippleTo_p_INode, 0, 0}, {&_swigt__p_Crystal, _p_CrystalTo_p_INode, 0, 0}, {&_swigt__p_MesoCrystal, _p_MesoCrystalTo_p_INode, 0, 0}, {&_swigt__p_InterferenceFunction2DParaCrystal, _p_InterferenceFunction2DParaCrystalTo_p_INode, 0, 0}, {&_swigt__p_InterferenceFunctionRadialParaCrystal, _p_InterferenceFunctionRadialParaCrystalTo_p_INode, 0, 0}, {&_swigt__p_Simulation2D, _p_Simulation2DTo_p_INode, 0, 0}, {&_swigt__p_FormFactorHollowSphere, _p_FormFactorHollowSphereTo_p_INode, 0, 0}, {&_swigt__p_FormFactorGaussSphere, _p_FormFactorGaussSphereTo_p_INode, 0, 0}, {&_swigt__p_IFTDistribution2D, _p_IFTDistribution2DTo_p_INode, 0, 0}, {&_swigt__p_IFTDecayFunction2D, _p_IFTDecayFunction2DTo_p_INode, 0, 0}, {&_swigt__p_IResolutionFunction2D, _p_IResolutionFunction2DTo_p_INode, 0, 0}, {&_swigt__p_FormFactorWeighted, _p_FormFactorWeightedTo_p_INode, 0, 0}, {&_swigt__p_FormFactorRipple2Lorentz, _p_FormFactorRipple2LorentzTo_p_INode, 0, 0}, {&_swigt__p_FormFactorRipple1Lorentz, _p_FormFactorRipple1LorentzTo_p_INode, 0, 0}, {&_swigt__p_FormFactorLongBoxLorentz, _p_FormFactorLongBoxLorentzTo_p_INode, 0, 0}, {&_swigt__p_InterferenceFunction1DLattice, _p_InterferenceFunction1DLatticeTo_p_INode, 0, 0}, {&_swigt__p_InterferenceFunction2DLattice, _p_InterferenceFunction2DLatticeTo_p_INode, 0, 0}, {&_swigt__p_InterferenceFunction2DSuperLattice, _p_InterferenceFunction2DSuperLatticeTo_p_INode, 0, 0}, {&_swigt__p_InterferenceFunction3DLattice, _p_InterferenceFunction3DLatticeTo_p_INode, 0, 0}, {&_swigt__p_InterferenceFunctionFinite2DLattice, _p_InterferenceFunctionFinite2DLatticeTo_p_INode, 0, 0}, {&_swigt__p_InterferenceFunctionFinite3DLattice, _p_InterferenceFunctionFinite3DLatticeTo_p_INode, 0, 0}, {&_swigt__p_BasicLattice, _p_BasicLatticeTo_p_INode, 0, 0}, {&_swigt__p_SquareLattice, _p_SquareLatticeTo_p_INode, 0, 0}, {&_swigt__p_HexagonalLattice, _p_HexagonalLatticeTo_p_INode, 0, 0}, {&_swigt__p_DistributionLorentz, _p_DistributionLorentzTo_p_INode, 0, 0}, {&_swigt__p_Lattice, _p_LatticeTo_p_INode, 0, 0}, {&_swigt__p_FTDistribution1DTriangle, _p_FTDistribution1DTriangleTo_p_INode, 0, 0}, {&_swigt__p_FTDecayFunction1DTriangle, _p_FTDecayFunction1DTriangleTo_p_INode, 0, 0}, {&_swigt__p_RotationEuler, _p_RotationEulerTo_p_INode, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_INodeVisitor[] = { {&_swigt__p_INodeVisitor, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_IObservable[] = { {&_swigt__p_IObservable, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_IObserver[] = { {&_swigt__p_IObserver, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_IParameterT_double_t[] = { {&_swigt__p_IParameterT_double_t, 0, 0, 0}, {&_swigt__p_RealParameter, _p_RealParameterTo_p_IParameterT_double_t, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_IParameterized[] = { {&_swigt__p_FormFactorBox, _p_FormFactorBoxTo_p_IParameterized, 0, 0}, {&_swigt__p_IBackground, _p_IBackgroundTo_p_IParameterized, 0, 0}, {&_swigt__p_ConstantBackground, _p_ConstantBackgroundTo_p_IParameterized, 0, 0}, {&_swigt__p_PoissonNoiseBackground, _p_PoissonNoiseBackgroundTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorSphereGaussianRadius, _p_FormFactorSphereGaussianRadiusTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorSphereLogNormalRadius, _p_FormFactorSphereLogNormalRadiusTo_p_IParameterized, 0, 0}, {&_swigt__p_MultiLayer, _p_MultiLayerTo_p_IParameterized, 0, 0}, {&_swigt__p_ParameterDistribution, _p_ParameterDistributionTo_p_IParameterized, 0, 0}, {&_swigt__p_ParticleDistribution, _p_ParticleDistributionTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDistribution1DGauss, _p_FTDistribution1DGaussTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDecayFunction1DGauss, _p_FTDecayFunction1DGaussTo_p_IParameterized, 0, 0}, {&_swigt__p_InterferenceFunctionNone, _p_InterferenceFunctionNoneTo_p_IParameterized, 0, 0}, {&_swigt__p_IDetector2D, _p_IDetector2DTo_p_IParameterized, 0, 0}, {&_swigt__p_ParticleLayout, _p_ParticleLayoutTo_p_IParameterized, 0, 0}, {&_swigt__p_ILayout, _p_ILayoutTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorHemiEllipsoid, _p_FormFactorHemiEllipsoidTo_p_IParameterized, 0, 0}, {&_swigt__p_SphericalDetector, _p_SphericalDetectorTo_p_IParameterized, 0, 0}, {&_swigt__p_IsGISAXSDetector, _p_IsGISAXSDetectorTo_p_IParameterized, 0, 0}, {&_swigt__p_RectangularDetector, _p_RectangularDetectorTo_p_IParameterized, 0, 0}, {&_swigt__p_IDetector, _p_IDetectorTo_p_IParameterized, 0, 0}, {&_swigt__p_INode, _p_INodeTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorRipple2Box, _p_FormFactorRipple2BoxTo_p_IParameterized, 0, 0}, {&_swigt__p_MisesGaussPeakShape, _p_MisesGaussPeakShapeTo_p_IParameterized, 0, 0}, {&_swigt__p_MisesFisherGaussPeakShape, _p_MisesFisherGaussPeakShapeTo_p_IParameterized, 0, 0}, {&_swigt__p_LorentzFisherPeakShape, _p_LorentzFisherPeakShapeTo_p_IParameterized, 0, 0}, {&_swigt__p_GaussFisherPeakShape, _p_GaussFisherPeakShapeTo_p_IParameterized, 0, 0}, {&_swigt__p_IsotropicLorentzPeakShape, _p_IsotropicLorentzPeakShapeTo_p_IParameterized, 0, 0}, {&_swigt__p_IsotropicGaussPeakShape, _p_IsotropicGaussPeakShapeTo_p_IParameterized, 0, 0}, {&_swigt__p_IPeakShape, _p_IPeakShapeTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorPrism3, _p_FormFactorPrism3To_p_IParameterized, 0, 0}, {&_swigt__p_DistributionTrapezoid, _p_DistributionTrapezoidTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorIcosahedron, _p_FormFactorIcosahedronTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorDodecahedron, _p_FormFactorDodecahedronTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorCuboctahedron, _p_FormFactorCuboctahedronTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorTetrahedron, _p_FormFactorTetrahedronTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorPolyhedron, _p_FormFactorPolyhedronTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorPrism6, _p_FormFactorPrism6To_p_IParameterized, 0, 0}, {&_swigt__p_Simulation, _p_SimulationTo_p_IParameterized, 0, 0}, {&_swigt__p_GISASSimulation, _p_GISASSimulationTo_p_IParameterized, 0, 0}, {&_swigt__p_DepthProbeSimulation, _p_DepthProbeSimulationTo_p_IParameterized, 0, 0}, {&_swigt__p_SpecularSimulation, _p_SpecularSimulationTo_p_IParameterized, 0, 0}, {&_swigt__p_OffSpecSimulation, _p_OffSpecSimulationTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDistribution2DCone, _p_FTDistribution2DConeTo_p_IParameterized, 0, 0}, {&_swigt__p_ParticleCoreShell, _p_ParticleCoreShellTo_p_IParameterized, 0, 0}, {&_swigt__p_ProfileBar, _p_ProfileBarTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorFullSphere, _p_FormFactorFullSphereTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorTruncatedSphere, _p_FormFactorTruncatedSphereTo_p_IParameterized, 0, 0}, {&_swigt__p_IFormFactor, _p_IFormFactorTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorPolygonalSurface, _p_FormFactorPolygonalSurfaceTo_p_IParameterized, 0, 0}, {&_swigt__p_ISample, _p_ISampleTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorLongBoxGauss, _p_FormFactorLongBoxGaussTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorPolygonalPrism, _p_FormFactorPolygonalPrismTo_p_IParameterized, 0, 0}, {&_swigt__p_InterferenceFunctionHardDisk, _p_InterferenceFunctionHardDiskTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDistribution2DGate, _p_FTDistribution2DGateTo_p_IParameterized, 0, 0}, {&_swigt__p_DistributionLogNormal, _p_DistributionLogNormalTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorRipple1Box, _p_FormFactorRipple1BoxTo_p_IParameterized, 0, 0}, {&_swigt__p_Instrument, _p_InstrumentTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDecayFunction1DVoigt, _p_FTDecayFunction1DVoigtTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDistribution1DVoigt, _p_FTDistribution1DVoigtTo_p_IParameterized, 0, 0}, {&_swigt__p_IRotation, _p_IRotationTo_p_IParameterized, 0, 0}, {&_swigt__p_IdentityRotation, _p_IdentityRotationTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorTruncatedSpheroid, _p_FormFactorTruncatedSpheroidTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorFullSpheroid, _p_FormFactorFullSpheroidTo_p_IParameterized, 0, 0}, {&_swigt__p_RotationX, _p_RotationXTo_p_IParameterized, 0, 0}, {&_swigt__p_FootprintGauss, _p_FootprintGaussTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorTruncatedCube, _p_FormFactorTruncatedCubeTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorCantellatedCube, _p_FormFactorCantellatedCubeTo_p_IParameterized, 0, 0}, {&_swigt__p_RotationY, _p_RotationYTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDecayFunction2DGauss, _p_FTDecayFunction2DGaussTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDistribution2DGauss, _p_FTDistribution2DGaussTo_p_IParameterized, 0, 0}, {&_swigt__p_RotationZ, _p_RotationZTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorRipple2Gauss, _p_FormFactorRipple2GaussTo_p_IParameterized, 0, 0}, {&_swigt__p_IFormFactorBorn, _p_IFormFactorBornTo_p_IParameterized, 0, 0}, {&_swigt__p_IDetectorResolution, _p_IDetectorResolutionTo_p_IParameterized, 0, 0}, {&_swigt__p_IClusteredParticles, _p_IClusteredParticlesTo_p_IParameterized, 0, 0}, {&_swigt__p_IMultiLayerBuilder, _p_IMultiLayerBuilderTo_p_IParameterized, 0, 0}, {&_swigt__p_IAbstractParticle, _p_IAbstractParticleTo_p_IParameterized, 0, 0}, {&_swigt__p_IParticle, _p_IParticleTo_p_IParameterized, 0, 0}, {&_swigt__p_Particle, _p_ParticleTo_p_IParameterized, 0, 0}, {&_swigt__p_Lattice2D, _p_Lattice2DTo_p_IParameterized, 0, 0}, {&_swigt__p_DistributionGate, _p_DistributionGateTo_p_IParameterized, 0, 0}, {&_swigt__p_IFTDistribution1D, _p_IFTDistribution1DTo_p_IParameterized, 0, 0}, {&_swigt__p_IDistribution1D, _p_IDistribution1DTo_p_IParameterized, 0, 0}, {&_swigt__p_IFTDecayFunction1D, _p_IFTDecayFunction1DTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorCone, _p_FormFactorConeTo_p_IParameterized, 0, 0}, {&_swigt__p_InterferenceFunctionTwin, _p_InterferenceFunctionTwinTo_p_IParameterized, 0, 0}, {&_swigt__p_ProfileRipple1, _p_ProfileRipple1To_p_IParameterized, 0, 0}, {&_swigt__p_Layer, _p_LayerTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorPyramid, _p_FormFactorPyramidTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorAnisoPyramid, _p_FormFactorAnisoPyramidTo_p_IParameterized, 0, 0}, {&_swigt__p_ProfileRipple2, _p_ProfileRipple2To_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorEllipsoidalCylinder, _p_FormFactorEllipsoidalCylinderTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorCylinder, _p_FormFactorCylinderTo_p_IParameterized, 0, 0}, {&_swigt__p_DistributionGaussian, _p_DistributionGaussianTo_p_IParameterized, 0, 0}, {&_swigt__p_ResolutionFunction2DGaussian, _p_ResolutionFunction2DGaussianTo_p_IParameterized, 0, 0}, {&_swigt__p_IFootprintFactor, _p_IFootprintFactorTo_p_IParameterized, 0, 0}, {&_swigt__p_ParticleComposition, _p_ParticleCompositionTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDistribution1DCosine, _p_FTDistribution1DCosineTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDistribution1DGate, _p_FTDistribution1DGateTo_p_IParameterized, 0, 0}, {&_swigt__p_DistributionCosine, _p_DistributionCosineTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDistribution2DVoigt, _p_FTDistribution2DVoigtTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDecayFunction2DVoigt, _p_FTDecayFunction2DVoigtTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDistribution1DCauchy, _p_FTDistribution1DCauchyTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDecayFunction1DCauchy, _p_FTDecayFunction1DCauchyTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDistribution2DCauchy, _p_FTDistribution2DCauchyTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDecayFunction2DCauchy, _p_FTDecayFunction2DCauchyTo_p_IParameterized, 0, 0}, {&_swigt__p_IInterferenceFunction, _p_IInterferenceFunctionTo_p_IParameterized, 0, 0}, {&_swigt__p_FootprintSquare, _p_FootprintSquareTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorCone6, _p_FormFactorCone6To_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorRipple1Gauss, _p_FormFactorRipple1GaussTo_p_IParameterized, 0, 0}, {&_swigt__p_Beam, _p_BeamTo_p_IParameterized, 0, 0}, {&_swigt__p_IFormFactorDecorator, _p_IFormFactorDecoratorTo_p_IParameterized, 0, 0}, {&_swigt__p_IParameterized, 0, 0, 0}, {&_swigt__p_FormFactorDot, _p_FormFactorDotTo_p_IParameterized, 0, 0}, {&_swigt__p_LayerRoughness, _p_LayerRoughnessTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorCrystal, _p_FormFactorCrystalTo_p_IParameterized, 0, 0}, {&_swigt__p_Crystal, _p_CrystalTo_p_IParameterized, 0, 0}, {&_swigt__p_MesoCrystal, _p_MesoCrystalTo_p_IParameterized, 0, 0}, {&_swigt__p_InterferenceFunction2DParaCrystal, _p_InterferenceFunction2DParaCrystalTo_p_IParameterized, 0, 0}, {&_swigt__p_InterferenceFunctionRadialParaCrystal, _p_InterferenceFunctionRadialParaCrystalTo_p_IParameterized, 0, 0}, {&_swigt__p_Simulation2D, _p_Simulation2DTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorGaussSphere, _p_FormFactorGaussSphereTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorHollowSphere, _p_FormFactorHollowSphereTo_p_IParameterized, 0, 0}, {&_swigt__p_IFTDistribution2D, _p_IFTDistribution2DTo_p_IParameterized, 0, 0}, {&_swigt__p_IFTDecayFunction2D, _p_IFTDecayFunction2DTo_p_IParameterized, 0, 0}, {&_swigt__p_IResolutionFunction2D, _p_IResolutionFunction2DTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorWeighted, _p_FormFactorWeightedTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorRipple2Lorentz, _p_FormFactorRipple2LorentzTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorRipple1Lorentz, _p_FormFactorRipple1LorentzTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorLongBoxLorentz, _p_FormFactorLongBoxLorentzTo_p_IParameterized, 0, 0}, {&_swigt__p_InterferenceFunction1DLattice, _p_InterferenceFunction1DLatticeTo_p_IParameterized, 0, 0}, {&_swigt__p_InterferenceFunction2DLattice, _p_InterferenceFunction2DLatticeTo_p_IParameterized, 0, 0}, {&_swigt__p_InterferenceFunction2DSuperLattice, _p_InterferenceFunction2DSuperLatticeTo_p_IParameterized, 0, 0}, {&_swigt__p_InterferenceFunction3DLattice, _p_InterferenceFunction3DLatticeTo_p_IParameterized, 0, 0}, {&_swigt__p_InterferenceFunctionFinite2DLattice, _p_InterferenceFunctionFinite2DLatticeTo_p_IParameterized, 0, 0}, {&_swigt__p_InterferenceFunctionFinite3DLattice, _p_InterferenceFunctionFinite3DLatticeTo_p_IParameterized, 0, 0}, {&_swigt__p_BasicLattice, _p_BasicLatticeTo_p_IParameterized, 0, 0}, {&_swigt__p_SquareLattice, _p_SquareLatticeTo_p_IParameterized, 0, 0}, {&_swigt__p_HexagonalLattice, _p_HexagonalLatticeTo_p_IParameterized, 0, 0}, {&_swigt__p_DistributionLorentz, _p_DistributionLorentzTo_p_IParameterized, 0, 0}, {&_swigt__p_Lattice, _p_LatticeTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDistribution1DTriangle, _p_FTDistribution1DTriangleTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDecayFunction1DTriangle, _p_FTDecayFunction1DTriangleTo_p_IParameterized, 0, 0}, {&_swigt__p_RotationEuler, _p_RotationEulerTo_p_IParameterized, 0, 0},{0, 0, 0, 0}}; +static swig_cast_info _swigc__p_IParameterized[] = { {&_swigt__p_FormFactorBox, _p_FormFactorBoxTo_p_IParameterized, 0, 0}, {&_swigt__p_IBackground, _p_IBackgroundTo_p_IParameterized, 0, 0}, {&_swigt__p_ConstantBackground, _p_ConstantBackgroundTo_p_IParameterized, 0, 0}, {&_swigt__p_PoissonNoiseBackground, _p_PoissonNoiseBackgroundTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorSphereGaussianRadius, _p_FormFactorSphereGaussianRadiusTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorSphereLogNormalRadius, _p_FormFactorSphereLogNormalRadiusTo_p_IParameterized, 0, 0}, {&_swigt__p_MultiLayer, _p_MultiLayerTo_p_IParameterized, 0, 0}, {&_swigt__p_ParameterDistribution, _p_ParameterDistributionTo_p_IParameterized, 0, 0}, {&_swigt__p_ParticleDistribution, _p_ParticleDistributionTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDistribution1DGauss, _p_FTDistribution1DGaussTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDecayFunction1DGauss, _p_FTDecayFunction1DGaussTo_p_IParameterized, 0, 0}, {&_swigt__p_InterferenceFunctionNone, _p_InterferenceFunctionNoneTo_p_IParameterized, 0, 0}, {&_swigt__p_IDetector2D, _p_IDetector2DTo_p_IParameterized, 0, 0}, {&_swigt__p_ParticleLayout, _p_ParticleLayoutTo_p_IParameterized, 0, 0}, {&_swigt__p_ILayout, _p_ILayoutTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorHemiEllipsoid, _p_FormFactorHemiEllipsoidTo_p_IParameterized, 0, 0}, {&_swigt__p_SphericalDetector, _p_SphericalDetectorTo_p_IParameterized, 0, 0}, {&_swigt__p_IsGISAXSDetector, _p_IsGISAXSDetectorTo_p_IParameterized, 0, 0}, {&_swigt__p_RectangularDetector, _p_RectangularDetectorTo_p_IParameterized, 0, 0}, {&_swigt__p_IDetector, _p_IDetectorTo_p_IParameterized, 0, 0}, {&_swigt__p_INode, _p_INodeTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorRipple2Box, _p_FormFactorRipple2BoxTo_p_IParameterized, 0, 0}, {&_swigt__p_MisesGaussPeakShape, _p_MisesGaussPeakShapeTo_p_IParameterized, 0, 0}, {&_swigt__p_MisesFisherGaussPeakShape, _p_MisesFisherGaussPeakShapeTo_p_IParameterized, 0, 0}, {&_swigt__p_LorentzFisherPeakShape, _p_LorentzFisherPeakShapeTo_p_IParameterized, 0, 0}, {&_swigt__p_GaussFisherPeakShape, _p_GaussFisherPeakShapeTo_p_IParameterized, 0, 0}, {&_swigt__p_IsotropicLorentzPeakShape, _p_IsotropicLorentzPeakShapeTo_p_IParameterized, 0, 0}, {&_swigt__p_IsotropicGaussPeakShape, _p_IsotropicGaussPeakShapeTo_p_IParameterized, 0, 0}, {&_swigt__p_IPeakShape, _p_IPeakShapeTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorPrism3, _p_FormFactorPrism3To_p_IParameterized, 0, 0}, {&_swigt__p_DistributionTrapezoid, _p_DistributionTrapezoidTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorIcosahedron, _p_FormFactorIcosahedronTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorDodecahedron, _p_FormFactorDodecahedronTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorCuboctahedron, _p_FormFactorCuboctahedronTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorTetrahedron, _p_FormFactorTetrahedronTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorPolyhedron, _p_FormFactorPolyhedronTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorPrism6, _p_FormFactorPrism6To_p_IParameterized, 0, 0}, {&_swigt__p_Simulation, _p_SimulationTo_p_IParameterized, 0, 0}, {&_swigt__p_GISASSimulation, _p_GISASSimulationTo_p_IParameterized, 0, 0}, {&_swigt__p_DepthProbeSimulation, _p_DepthProbeSimulationTo_p_IParameterized, 0, 0}, {&_swigt__p_SpecularSimulation, _p_SpecularSimulationTo_p_IParameterized, 0, 0}, {&_swigt__p_OffSpecSimulation, _p_OffSpecSimulationTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDistribution2DCone, _p_FTDistribution2DConeTo_p_IParameterized, 0, 0}, {&_swigt__p_ParticleCoreShell, _p_ParticleCoreShellTo_p_IParameterized, 0, 0}, {&_swigt__p_ProfileBar, _p_ProfileBarTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorFullSphere, _p_FormFactorFullSphereTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorTruncatedSphere, _p_FormFactorTruncatedSphereTo_p_IParameterized, 0, 0}, {&_swigt__p_IFormFactor, _p_IFormFactorTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorPolygonalSurface, _p_FormFactorPolygonalSurfaceTo_p_IParameterized, 0, 0}, {&_swigt__p_ISample, _p_ISampleTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorLongBoxGauss, _p_FormFactorLongBoxGaussTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorPolygonalPrism, _p_FormFactorPolygonalPrismTo_p_IParameterized, 0, 0}, {&_swigt__p_InterferenceFunctionHardDisk, _p_InterferenceFunctionHardDiskTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDistribution2DGate, _p_FTDistribution2DGateTo_p_IParameterized, 0, 0}, {&_swigt__p_DistributionLogNormal, _p_DistributionLogNormalTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorRipple1Box, _p_FormFactorRipple1BoxTo_p_IParameterized, 0, 0}, {&_swigt__p_Instrument, _p_InstrumentTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDecayFunction1DVoigt, _p_FTDecayFunction1DVoigtTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDistribution1DVoigt, _p_FTDistribution1DVoigtTo_p_IParameterized, 0, 0}, {&_swigt__p_IRotation, _p_IRotationTo_p_IParameterized, 0, 0}, {&_swigt__p_IdentityRotation, _p_IdentityRotationTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorTruncatedSpheroid, _p_FormFactorTruncatedSpheroidTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorFullSpheroid, _p_FormFactorFullSpheroidTo_p_IParameterized, 0, 0}, {&_swigt__p_RotationX, _p_RotationXTo_p_IParameterized, 0, 0}, {&_swigt__p_FootprintGauss, _p_FootprintGaussTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorTruncatedCube, _p_FormFactorTruncatedCubeTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorCantellatedCube, _p_FormFactorCantellatedCubeTo_p_IParameterized, 0, 0}, {&_swigt__p_RotationY, _p_RotationYTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDecayFunction2DGauss, _p_FTDecayFunction2DGaussTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDistribution2DGauss, _p_FTDistribution2DGaussTo_p_IParameterized, 0, 0}, {&_swigt__p_RotationZ, _p_RotationZTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorRipple2Gauss, _p_FormFactorRipple2GaussTo_p_IParameterized, 0, 0}, {&_swigt__p_IFormFactorBorn, _p_IFormFactorBornTo_p_IParameterized, 0, 0}, {&_swigt__p_IDetectorResolution, _p_IDetectorResolutionTo_p_IParameterized, 0, 0}, {&_swigt__p_IClusteredParticles, _p_IClusteredParticlesTo_p_IParameterized, 0, 0}, {&_swigt__p_IMultiLayerBuilder, _p_IMultiLayerBuilderTo_p_IParameterized, 0, 0}, {&_swigt__p_IAbstractParticle, _p_IAbstractParticleTo_p_IParameterized, 0, 0}, {&_swigt__p_IParticle, _p_IParticleTo_p_IParameterized, 0, 0}, {&_swigt__p_Particle, _p_ParticleTo_p_IParameterized, 0, 0}, {&_swigt__p_Lattice2D, _p_Lattice2DTo_p_IParameterized, 0, 0}, {&_swigt__p_DistributionGate, _p_DistributionGateTo_p_IParameterized, 0, 0}, {&_swigt__p_IFTDistribution1D, _p_IFTDistribution1DTo_p_IParameterized, 0, 0}, {&_swigt__p_IDistribution1D, _p_IDistribution1DTo_p_IParameterized, 0, 0}, {&_swigt__p_IFTDecayFunction1D, _p_IFTDecayFunction1DTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorCone, _p_FormFactorConeTo_p_IParameterized, 0, 0}, {&_swigt__p_InterferenceFunctionTwin, _p_InterferenceFunctionTwinTo_p_IParameterized, 0, 0}, {&_swigt__p_ProfileRipple1, _p_ProfileRipple1To_p_IParameterized, 0, 0}, {&_swigt__p_Layer, _p_LayerTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorPyramid, _p_FormFactorPyramidTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorAnisoPyramid, _p_FormFactorAnisoPyramidTo_p_IParameterized, 0, 0}, {&_swigt__p_ProfileRipple2, _p_ProfileRipple2To_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorEllipsoidalCylinder, _p_FormFactorEllipsoidalCylinderTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorCylinder, _p_FormFactorCylinderTo_p_IParameterized, 0, 0}, {&_swigt__p_DistributionGaussian, _p_DistributionGaussianTo_p_IParameterized, 0, 0}, {&_swigt__p_ResolutionFunction2DGaussian, _p_ResolutionFunction2DGaussianTo_p_IParameterized, 0, 0}, {&_swigt__p_IFootprintFactor, _p_IFootprintFactorTo_p_IParameterized, 0, 0}, {&_swigt__p_ParticleComposition, _p_ParticleCompositionTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDistribution1DCosine, _p_FTDistribution1DCosineTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDistribution1DGate, _p_FTDistribution1DGateTo_p_IParameterized, 0, 0}, {&_swigt__p_DistributionCosine, _p_DistributionCosineTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDistribution2DVoigt, _p_FTDistribution2DVoigtTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDecayFunction2DVoigt, _p_FTDecayFunction2DVoigtTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDistribution1DCauchy, _p_FTDistribution1DCauchyTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDecayFunction1DCauchy, _p_FTDecayFunction1DCauchyTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDistribution2DCauchy, _p_FTDistribution2DCauchyTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDecayFunction2DCauchy, _p_FTDecayFunction2DCauchyTo_p_IParameterized, 0, 0}, {&_swigt__p_IInterferenceFunction, _p_IInterferenceFunctionTo_p_IParameterized, 0, 0}, {&_swigt__p_FootprintSquare, _p_FootprintSquareTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorCone6, _p_FormFactorCone6To_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorRipple1Gauss, _p_FormFactorRipple1GaussTo_p_IParameterized, 0, 0}, {&_swigt__p_Beam, _p_BeamTo_p_IParameterized, 0, 0}, {&_swigt__p_IFormFactorDecorator, _p_IFormFactorDecoratorTo_p_IParameterized, 0, 0}, {&_swigt__p_IParameterized, 0, 0, 0}, {&_swigt__p_FormFactorDot, _p_FormFactorDotTo_p_IParameterized, 0, 0}, {&_swigt__p_LayerRoughness, _p_LayerRoughnessTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorCrystal, _p_FormFactorCrystalTo_p_IParameterized, 0, 0}, {&_swigt__p_IProfileRipple, _p_IProfileRippleTo_p_IParameterized, 0, 0}, {&_swigt__p_Crystal, _p_CrystalTo_p_IParameterized, 0, 0}, {&_swigt__p_MesoCrystal, _p_MesoCrystalTo_p_IParameterized, 0, 0}, {&_swigt__p_InterferenceFunction2DParaCrystal, _p_InterferenceFunction2DParaCrystalTo_p_IParameterized, 0, 0}, {&_swigt__p_InterferenceFunctionRadialParaCrystal, _p_InterferenceFunctionRadialParaCrystalTo_p_IParameterized, 0, 0}, {&_swigt__p_Simulation2D, _p_Simulation2DTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorGaussSphere, _p_FormFactorGaussSphereTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorHollowSphere, _p_FormFactorHollowSphereTo_p_IParameterized, 0, 0}, {&_swigt__p_IFTDistribution2D, _p_IFTDistribution2DTo_p_IParameterized, 0, 0}, {&_swigt__p_IFTDecayFunction2D, _p_IFTDecayFunction2DTo_p_IParameterized, 0, 0}, {&_swigt__p_IResolutionFunction2D, _p_IResolutionFunction2DTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorWeighted, _p_FormFactorWeightedTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorRipple2Lorentz, _p_FormFactorRipple2LorentzTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorRipple1Lorentz, _p_FormFactorRipple1LorentzTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorLongBoxLorentz, _p_FormFactorLongBoxLorentzTo_p_IParameterized, 0, 0}, {&_swigt__p_InterferenceFunction1DLattice, _p_InterferenceFunction1DLatticeTo_p_IParameterized, 0, 0}, {&_swigt__p_InterferenceFunction2DLattice, _p_InterferenceFunction2DLatticeTo_p_IParameterized, 0, 0}, {&_swigt__p_InterferenceFunction2DSuperLattice, _p_InterferenceFunction2DSuperLatticeTo_p_IParameterized, 0, 0}, {&_swigt__p_InterferenceFunction3DLattice, _p_InterferenceFunction3DLatticeTo_p_IParameterized, 0, 0}, {&_swigt__p_InterferenceFunctionFinite2DLattice, _p_InterferenceFunctionFinite2DLatticeTo_p_IParameterized, 0, 0}, {&_swigt__p_InterferenceFunctionFinite3DLattice, _p_InterferenceFunctionFinite3DLatticeTo_p_IParameterized, 0, 0}, {&_swigt__p_BasicLattice, _p_BasicLatticeTo_p_IParameterized, 0, 0}, {&_swigt__p_SquareLattice, _p_SquareLatticeTo_p_IParameterized, 0, 0}, {&_swigt__p_HexagonalLattice, _p_HexagonalLatticeTo_p_IParameterized, 0, 0}, {&_swigt__p_DistributionLorentz, _p_DistributionLorentzTo_p_IParameterized, 0, 0}, {&_swigt__p_Lattice, _p_LatticeTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDistribution1DTriangle, _p_FTDistribution1DTriangleTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDecayFunction1DTriangle, _p_FTDecayFunction1DTriangleTo_p_IParameterized, 0, 0}, {&_swigt__p_RotationEuler, _p_RotationEulerTo_p_IParameterized, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_IParticle[] = { {&_swigt__p_ParticleComposition, _p_ParticleCompositionTo_p_IParticle, 0, 0}, {&_swigt__p_MesoCrystal, _p_MesoCrystalTo_p_IParticle, 0, 0}, {&_swigt__p_IParticle, 0, 0, 0}, {&_swigt__p_Particle, _p_ParticleTo_p_IParticle, 0, 0}, {&_swigt__p_ParticleCoreShell, _p_ParticleCoreShellTo_p_IParticle, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_IPeakShape[] = { {&_swigt__p_IPeakShape, 0, 0, 0}, {&_swigt__p_IsotropicGaussPeakShape, _p_IsotropicGaussPeakShapeTo_p_IPeakShape, 0, 0}, {&_swigt__p_IsotropicLorentzPeakShape, _p_IsotropicLorentzPeakShapeTo_p_IPeakShape, 0, 0}, {&_swigt__p_GaussFisherPeakShape, _p_GaussFisherPeakShapeTo_p_IPeakShape, 0, 0}, {&_swigt__p_LorentzFisherPeakShape, _p_LorentzFisherPeakShapeTo_p_IPeakShape, 0, 0}, {&_swigt__p_MisesFisherGaussPeakShape, _p_MisesFisherGaussPeakShapeTo_p_IPeakShape, 0, 0}, {&_swigt__p_MisesGaussPeakShape, _p_MisesGaussPeakShapeTo_p_IPeakShape, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_IPixel[] = { {&_swigt__p_RectangularPixel, _p_RectangularPixelTo_p_IPixel, 0, 0}, {&_swigt__p_SphericalPixel, _p_SphericalPixelTo_p_IPixel, 0, 0}, {&_swigt__p_IPixel, 0, 0, 0},{0, 0, 0, 0}}; +static swig_cast_info _swigc__p_IProfileRipple[] = { {&_swigt__p_IProfileRipple, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_IResolutionFunction2D[] = { {&_swigt__p_IResolutionFunction2D, 0, 0, 0}, {&_swigt__p_ResolutionFunction2DGaussian, _p_ResolutionFunction2DGaussianTo_p_IResolutionFunction2D, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_IRotation[] = { {&_swigt__p_RotationY, _p_RotationYTo_p_IRotation, 0, 0}, {&_swigt__p_RotationEuler, _p_RotationEulerTo_p_IRotation, 0, 0}, {&_swigt__p_RotationZ, _p_RotationZTo_p_IRotation, 0, 0}, {&_swigt__p_IRotation, 0, 0, 0}, {&_swigt__p_IdentityRotation, _p_IdentityRotationTo_p_IRotation, 0, 0}, {&_swigt__p_RotationX, _p_RotationXTo_p_IRotation, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_ISample[] = { {&_swigt__p_FormFactorBox, _p_FormFactorBoxTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorSphereGaussianRadius, _p_FormFactorSphereGaussianRadiusTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorSphereLogNormalRadius, _p_FormFactorSphereLogNormalRadiusTo_p_ISample, 0, 0}, {&_swigt__p_MultiLayer, _p_MultiLayerTo_p_ISample, 0, 0}, {&_swigt__p_ParticleDistribution, _p_ParticleDistributionTo_p_ISample, 0, 0}, {&_swigt__p_InterferenceFunctionNone, _p_InterferenceFunctionNoneTo_p_ISample, 0, 0}, {&_swigt__p_ParticleLayout, _p_ParticleLayoutTo_p_ISample, 0, 0}, {&_swigt__p_ILayout, _p_ILayoutTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorHemiEllipsoid, _p_FormFactorHemiEllipsoidTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorRipple2Box, _p_FormFactorRipple2BoxTo_p_ISample, 0, 0}, {&_swigt__p_IPeakShape, _p_IPeakShapeTo_p_ISample, 0, 0}, {&_swigt__p_IsotropicGaussPeakShape, _p_IsotropicGaussPeakShapeTo_p_ISample, 0, 0}, {&_swigt__p_IsotropicLorentzPeakShape, _p_IsotropicLorentzPeakShapeTo_p_ISample, 0, 0}, {&_swigt__p_GaussFisherPeakShape, _p_GaussFisherPeakShapeTo_p_ISample, 0, 0}, {&_swigt__p_LorentzFisherPeakShape, _p_LorentzFisherPeakShapeTo_p_ISample, 0, 0}, {&_swigt__p_MisesFisherGaussPeakShape, _p_MisesFisherGaussPeakShapeTo_p_ISample, 0, 0}, {&_swigt__p_MisesGaussPeakShape, _p_MisesGaussPeakShapeTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorPrism3, _p_FormFactorPrism3To_p_ISample, 0, 0}, {&_swigt__p_FormFactorTetrahedron, _p_FormFactorTetrahedronTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorIcosahedron, _p_FormFactorIcosahedronTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorDodecahedron, _p_FormFactorDodecahedronTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorCuboctahedron, _p_FormFactorCuboctahedronTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorPolyhedron, _p_FormFactorPolyhedronTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorPrism6, _p_FormFactorPrism6To_p_ISample, 0, 0}, {&_swigt__p_ParticleCoreShell, _p_ParticleCoreShellTo_p_ISample, 0, 0}, {&_swigt__p_ProfileBar, _p_ProfileBarTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorTruncatedSphere, _p_FormFactorTruncatedSphereTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorFullSphere, _p_FormFactorFullSphereTo_p_ISample, 0, 0}, {&_swigt__p_IFormFactor, _p_IFormFactorTo_p_ISample, 0, 0}, {&_swigt__p_ISample, 0, 0, 0}, {&_swigt__p_FormFactorPolygonalSurface, _p_FormFactorPolygonalSurfaceTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorLongBoxGauss, _p_FormFactorLongBoxGaussTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorPolygonalPrism, _p_FormFactorPolygonalPrismTo_p_ISample, 0, 0}, {&_swigt__p_InterferenceFunctionHardDisk, _p_InterferenceFunctionHardDiskTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorRipple1Box, _p_FormFactorRipple1BoxTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorTruncatedSpheroid, _p_FormFactorTruncatedSpheroidTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorFullSpheroid, _p_FormFactorFullSpheroidTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorCantellatedCube, _p_FormFactorCantellatedCubeTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorTruncatedCube, _p_FormFactorTruncatedCubeTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorRipple2Gauss, _p_FormFactorRipple2GaussTo_p_ISample, 0, 0}, {&_swigt__p_IFormFactorBorn, _p_IFormFactorBornTo_p_ISample, 0, 0}, {&_swigt__p_IClusteredParticles, _p_IClusteredParticlesTo_p_ISample, 0, 0}, {&_swigt__p_Particle, _p_ParticleTo_p_ISample, 0, 0}, {&_swigt__p_IParticle, _p_IParticleTo_p_ISample, 0, 0}, {&_swigt__p_IAbstractParticle, _p_IAbstractParticleTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorCone, _p_FormFactorConeTo_p_ISample, 0, 0}, {&_swigt__p_InterferenceFunctionTwin, _p_InterferenceFunctionTwinTo_p_ISample, 0, 0}, {&_swigt__p_ProfileRipple1, _p_ProfileRipple1To_p_ISample, 0, 0}, {&_swigt__p_Layer, _p_LayerTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorAnisoPyramid, _p_FormFactorAnisoPyramidTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorPyramid, _p_FormFactorPyramidTo_p_ISample, 0, 0}, {&_swigt__p_ProfileRipple2, _p_ProfileRipple2To_p_ISample, 0, 0}, {&_swigt__p_FormFactorEllipsoidalCylinder, _p_FormFactorEllipsoidalCylinderTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorCylinder, _p_FormFactorCylinderTo_p_ISample, 0, 0}, {&_swigt__p_ParticleComposition, _p_ParticleCompositionTo_p_ISample, 0, 0}, {&_swigt__p_IInterferenceFunction, _p_IInterferenceFunctionTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorCone6, _p_FormFactorCone6To_p_ISample, 0, 0}, {&_swigt__p_FormFactorRipple1Gauss, _p_FormFactorRipple1GaussTo_p_ISample, 0, 0}, {&_swigt__p_IFormFactorDecorator, _p_IFormFactorDecoratorTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorDot, _p_FormFactorDotTo_p_ISample, 0, 0}, {&_swigt__p_LayerRoughness, _p_LayerRoughnessTo_p_ISample, 0, 0}, {&_swigt__p_MesoCrystal, _p_MesoCrystalTo_p_ISample, 0, 0}, {&_swigt__p_Crystal, _p_CrystalTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorCrystal, _p_FormFactorCrystalTo_p_ISample, 0, 0}, {&_swigt__p_InterferenceFunction2DParaCrystal, _p_InterferenceFunction2DParaCrystalTo_p_ISample, 0, 0}, {&_swigt__p_InterferenceFunctionRadialParaCrystal, _p_InterferenceFunctionRadialParaCrystalTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorHollowSphere, _p_FormFactorHollowSphereTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorGaussSphere, _p_FormFactorGaussSphereTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorWeighted, _p_FormFactorWeightedTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorLongBoxLorentz, _p_FormFactorLongBoxLorentzTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorRipple2Lorentz, _p_FormFactorRipple2LorentzTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorRipple1Lorentz, _p_FormFactorRipple1LorentzTo_p_ISample, 0, 0}, {&_swigt__p_InterferenceFunctionFinite2DLattice, _p_InterferenceFunctionFinite2DLatticeTo_p_ISample, 0, 0}, {&_swigt__p_InterferenceFunction3DLattice, _p_InterferenceFunction3DLatticeTo_p_ISample, 0, 0}, {&_swigt__p_InterferenceFunction2DSuperLattice, _p_InterferenceFunction2DSuperLatticeTo_p_ISample, 0, 0}, {&_swigt__p_InterferenceFunction2DLattice, _p_InterferenceFunction2DLatticeTo_p_ISample, 0, 0}, {&_swigt__p_InterferenceFunction1DLattice, _p_InterferenceFunction1DLatticeTo_p_ISample, 0, 0}, {&_swigt__p_InterferenceFunctionFinite3DLattice, _p_InterferenceFunctionFinite3DLatticeTo_p_ISample, 0, 0},{0, 0, 0, 0}}; +static swig_cast_info _swigc__p_ISample[] = { {&_swigt__p_FormFactorBox, _p_FormFactorBoxTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorSphereGaussianRadius, _p_FormFactorSphereGaussianRadiusTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorSphereLogNormalRadius, _p_FormFactorSphereLogNormalRadiusTo_p_ISample, 0, 0}, {&_swigt__p_MultiLayer, _p_MultiLayerTo_p_ISample, 0, 0}, {&_swigt__p_ParticleDistribution, _p_ParticleDistributionTo_p_ISample, 0, 0}, {&_swigt__p_InterferenceFunctionNone, _p_InterferenceFunctionNoneTo_p_ISample, 0, 0}, {&_swigt__p_ParticleLayout, _p_ParticleLayoutTo_p_ISample, 0, 0}, {&_swigt__p_ILayout, _p_ILayoutTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorHemiEllipsoid, _p_FormFactorHemiEllipsoidTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorRipple2Box, _p_FormFactorRipple2BoxTo_p_ISample, 0, 0}, {&_swigt__p_IPeakShape, _p_IPeakShapeTo_p_ISample, 0, 0}, {&_swigt__p_IsotropicGaussPeakShape, _p_IsotropicGaussPeakShapeTo_p_ISample, 0, 0}, {&_swigt__p_IsotropicLorentzPeakShape, _p_IsotropicLorentzPeakShapeTo_p_ISample, 0, 0}, {&_swigt__p_GaussFisherPeakShape, _p_GaussFisherPeakShapeTo_p_ISample, 0, 0}, {&_swigt__p_LorentzFisherPeakShape, _p_LorentzFisherPeakShapeTo_p_ISample, 0, 0}, {&_swigt__p_MisesFisherGaussPeakShape, _p_MisesFisherGaussPeakShapeTo_p_ISample, 0, 0}, {&_swigt__p_MisesGaussPeakShape, _p_MisesGaussPeakShapeTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorPrism3, _p_FormFactorPrism3To_p_ISample, 0, 0}, {&_swigt__p_FormFactorTetrahedron, _p_FormFactorTetrahedronTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorIcosahedron, _p_FormFactorIcosahedronTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorDodecahedron, _p_FormFactorDodecahedronTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorCuboctahedron, _p_FormFactorCuboctahedronTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorPolyhedron, _p_FormFactorPolyhedronTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorPrism6, _p_FormFactorPrism6To_p_ISample, 0, 0}, {&_swigt__p_ParticleCoreShell, _p_ParticleCoreShellTo_p_ISample, 0, 0}, {&_swigt__p_ProfileBar, _p_ProfileBarTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorTruncatedSphere, _p_FormFactorTruncatedSphereTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorFullSphere, _p_FormFactorFullSphereTo_p_ISample, 0, 0}, {&_swigt__p_IFormFactor, _p_IFormFactorTo_p_ISample, 0, 0}, {&_swigt__p_ISample, 0, 0, 0}, {&_swigt__p_FormFactorPolygonalSurface, _p_FormFactorPolygonalSurfaceTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorLongBoxGauss, _p_FormFactorLongBoxGaussTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorPolygonalPrism, _p_FormFactorPolygonalPrismTo_p_ISample, 0, 0}, {&_swigt__p_InterferenceFunctionHardDisk, _p_InterferenceFunctionHardDiskTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorRipple1Box, _p_FormFactorRipple1BoxTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorTruncatedSpheroid, _p_FormFactorTruncatedSpheroidTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorFullSpheroid, _p_FormFactorFullSpheroidTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorCantellatedCube, _p_FormFactorCantellatedCubeTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorTruncatedCube, _p_FormFactorTruncatedCubeTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorRipple2Gauss, _p_FormFactorRipple2GaussTo_p_ISample, 0, 0}, {&_swigt__p_IFormFactorBorn, _p_IFormFactorBornTo_p_ISample, 0, 0}, {&_swigt__p_IClusteredParticles, _p_IClusteredParticlesTo_p_ISample, 0, 0}, {&_swigt__p_Particle, _p_ParticleTo_p_ISample, 0, 0}, {&_swigt__p_IParticle, _p_IParticleTo_p_ISample, 0, 0}, {&_swigt__p_IAbstractParticle, _p_IAbstractParticleTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorCone, _p_FormFactorConeTo_p_ISample, 0, 0}, {&_swigt__p_InterferenceFunctionTwin, _p_InterferenceFunctionTwinTo_p_ISample, 0, 0}, {&_swigt__p_ProfileRipple1, _p_ProfileRipple1To_p_ISample, 0, 0}, {&_swigt__p_Layer, _p_LayerTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorAnisoPyramid, _p_FormFactorAnisoPyramidTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorPyramid, _p_FormFactorPyramidTo_p_ISample, 0, 0}, {&_swigt__p_ProfileRipple2, _p_ProfileRipple2To_p_ISample, 0, 0}, {&_swigt__p_FormFactorEllipsoidalCylinder, _p_FormFactorEllipsoidalCylinderTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorCylinder, _p_FormFactorCylinderTo_p_ISample, 0, 0}, {&_swigt__p_ParticleComposition, _p_ParticleCompositionTo_p_ISample, 0, 0}, {&_swigt__p_IInterferenceFunction, _p_IInterferenceFunctionTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorCone6, _p_FormFactorCone6To_p_ISample, 0, 0}, {&_swigt__p_FormFactorRipple1Gauss, _p_FormFactorRipple1GaussTo_p_ISample, 0, 0}, {&_swigt__p_IFormFactorDecorator, _p_IFormFactorDecoratorTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorDot, _p_FormFactorDotTo_p_ISample, 0, 0}, {&_swigt__p_LayerRoughness, _p_LayerRoughnessTo_p_ISample, 0, 0}, {&_swigt__p_MesoCrystal, _p_MesoCrystalTo_p_ISample, 0, 0}, {&_swigt__p_Crystal, _p_CrystalTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorCrystal, _p_FormFactorCrystalTo_p_ISample, 0, 0}, {&_swigt__p_IProfileRipple, _p_IProfileRippleTo_p_ISample, 0, 0}, {&_swigt__p_InterferenceFunction2DParaCrystal, _p_InterferenceFunction2DParaCrystalTo_p_ISample, 0, 0}, {&_swigt__p_InterferenceFunctionRadialParaCrystal, _p_InterferenceFunctionRadialParaCrystalTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorHollowSphere, _p_FormFactorHollowSphereTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorGaussSphere, _p_FormFactorGaussSphereTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorWeighted, _p_FormFactorWeightedTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorLongBoxLorentz, _p_FormFactorLongBoxLorentzTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorRipple2Lorentz, _p_FormFactorRipple2LorentzTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorRipple1Lorentz, _p_FormFactorRipple1LorentzTo_p_ISample, 0, 0}, {&_swigt__p_InterferenceFunction3DLattice, _p_InterferenceFunction3DLatticeTo_p_ISample, 0, 0}, {&_swigt__p_InterferenceFunction2DSuperLattice, _p_InterferenceFunction2DSuperLatticeTo_p_ISample, 0, 0}, {&_swigt__p_InterferenceFunction2DLattice, _p_InterferenceFunction2DLatticeTo_p_ISample, 0, 0}, {&_swigt__p_InterferenceFunction1DLattice, _p_InterferenceFunction1DLatticeTo_p_ISample, 0, 0}, {&_swigt__p_InterferenceFunctionFinite2DLattice, _p_InterferenceFunctionFinite2DLatticeTo_p_ISample, 0, 0}, {&_swigt__p_InterferenceFunctionFinite3DLattice, _p_InterferenceFunctionFinite3DLatticeTo_p_ISample, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_ISelectionRule[] = { {&_swigt__p_ISelectionRule, 0, 0, 0}, {&_swigt__p_SimpleSelectionRule, _p_SimpleSelectionRuleTo_p_ISelectionRule, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_IShape2D[] = { {&_swigt__p_Polygon, _p_PolygonTo_p_IShape2D, 0, 0}, {&_swigt__p_Line, _p_LineTo_p_IShape2D, 0, 0}, {&_swigt__p_VerticalLine, _p_VerticalLineTo_p_IShape2D, 0, 0}, {&_swigt__p_Ellipse, _p_EllipseTo_p_IShape2D, 0, 0}, {&_swigt__p_HorizontalLine, _p_HorizontalLineTo_p_IShape2D, 0, 0}, {&_swigt__p_Rectangle, _p_RectangleTo_p_IShape2D, 0, 0}, {&_swigt__p_IShape2D, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_ISpecularScan[] = { {&_swigt__p_AngularSpecScan, _p_AngularSpecScanTo_p_ISpecularScan, 0, 0}, {&_swigt__p_QSpecScan, _p_QSpecScanTo_p_ISpecularScan, 0, 0}, {&_swigt__p_ISpecularScan, 0, 0, 0},{0, 0, 0, 0}}; @@ -138257,6 +138249,7 @@ static swig_cast_info *swig_cast_initial[] = { _swigc__p_IParticle, _swigc__p_IPeakShape, _swigc__p_IPixel, + _swigc__p_IProfileRipple, _swigc__p_IResolutionFunction2D, _swigc__p_IRotation, _swigc__p_ISample, -- GitLab