From 14f412ba36d1563083d183c75a56d8238721fb4a Mon Sep 17 00:00:00 2001 From: "Joachim Wuttke (o)" <j.wuttke@fz-juelich.de> Date: Mon, 22 Aug 2016 14:09:34 +0200 Subject: [PATCH] New file IAbstractParticle.h separated from IParticle.h. rm unused includes. virtual -> final or nil. --- Core/Aggregate/IInterferenceFunction.cpp | 22 - Core/Aggregate/IInterferenceFunction.h | 16 +- .../Aggregate/InterferenceFunction1DLattice.h | 1 - Core/Aggregate/ParticleLayout.h | 1 - Core/Multilayer/Layer.h | 57 +- Core/Particle/IAbstractParticle.h | 54 ++ Core/Particle/IParticle.cpp | 2 +- Core/Particle/IParticle.h | 49 +- Core/Particle/ParticleDistribution.cpp | 3 +- Core/Particle/ParticleDistribution.h | 8 +- Core/Scattering/ICompositeSample.h | 2 - Core/Scattering/ISample.h | 1 - Core/Scattering/Rotations.h | 10 +- auto/Wrap/doxygen_core.i | 116 ++- auto/Wrap/libBornAgainCore.py | 238 ++----- auto/Wrap/libBornAgainCore_wrap.cpp | 671 ++++-------------- 16 files changed, 346 insertions(+), 905 deletions(-) delete mode 100644 Core/Aggregate/IInterferenceFunction.cpp create mode 100644 Core/Particle/IAbstractParticle.h diff --git a/Core/Aggregate/IInterferenceFunction.cpp b/Core/Aggregate/IInterferenceFunction.cpp deleted file mode 100644 index 510bc0dc3e7..00000000000 --- a/Core/Aggregate/IInterferenceFunction.cpp +++ /dev/null @@ -1,22 +0,0 @@ -// ************************************************************************** // -// -// BornAgain: simulate and fit scattering at grazing incidence -// -//! @file Core/Aggregate/IInterferenceFunction.cpp -//! @brief Implements interface class IInterferenceFunction. -//! -//! @homepage http://www.bornagainproject.org -//! @license GNU General Public License v3 or higher (see COPYING) -//! @copyright Forschungszentrum Jülich GmbH 2016 -//! @authors Scientific Computing Group at MLZ Garching -//! @authors M. Ganeva, G. Pospelov, W. Van Herck, J. Wuttke -// -// ************************************************************************** // - -#include "IInterferenceFunction.h" -#include "ISampleVisitor.h" -#include "RealParameter.h" - -IInterferenceFunction::~IInterferenceFunction() {} - -void IInterferenceFunction::accept(ISampleVisitor *visitor) const { visitor->visit(this); } diff --git a/Core/Aggregate/IInterferenceFunction.h b/Core/Aggregate/IInterferenceFunction.h index 5333b786745..b7168aa8bd8 100644 --- a/Core/Aggregate/IInterferenceFunction.h +++ b/Core/Aggregate/IInterferenceFunction.h @@ -3,7 +3,7 @@ // BornAgain: simulate and fit scattering at grazing incidence // //! @file Core/Aggregate/IInterferenceFunction.h -//! @brief Defines interface class IInterferenceFunction. +//! @brief Defines and implements the interface class IInterferenceFunction. //! //! @homepage http://www.bornagainproject.org //! @license GNU General Public License v3 or higher (see COPYING) @@ -19,25 +19,21 @@ #include "ISample.h" #include "Vectors3D.h" -class ISampleVisitor; - -//! Interface to interference functions. +//! Pure virtual base class of interference functions. //! @ingroup distribution_internal class BA_CORE_API_ IInterferenceFunction : public ISample { public: - virtual ~IInterferenceFunction(); + virtual ~IInterferenceFunction() {} + + virtual IInterferenceFunction* clone() const=0; + virtual void accept(ISampleVisitor* visitor) const =0; //! Evaluates the interference function for a given wavevector transfer (only the real //! x and y components are relevant) virtual double evaluate(const kvector_t q) const=0; - virtual IInterferenceFunction* clone() const=0; - - //! Calls ISampleVisitor::visit - virtual void accept(ISampleVisitor* visitor) const; - //! Retrieves the size-distance coupling constant (default 0.0) virtual double getKappa() const { return 0.0; } diff --git a/Core/Aggregate/InterferenceFunction1DLattice.h b/Core/Aggregate/InterferenceFunction1DLattice.h index c67ea4f5538..67f1ffbde0d 100644 --- a/Core/Aggregate/InterferenceFunction1DLattice.h +++ b/Core/Aggregate/InterferenceFunction1DLattice.h @@ -19,7 +19,6 @@ #include "IInterferenceFunction.h" #include "Lattice1DParameters.h" -class ISampleVisitor; class IFTDecayFunction1D; //! Interference function of 1D lattice. diff --git a/Core/Aggregate/ParticleLayout.h b/Core/Aggregate/ParticleLayout.h index 73fa1034525..b2ad2dd017d 100644 --- a/Core/Aggregate/ParticleLayout.h +++ b/Core/Aggregate/ParticleLayout.h @@ -23,7 +23,6 @@ class IAbstractParticle; class IInterferenceFunction; class IParticle; -class ISampleVisitor; //! Decorator class that adds particles to ISample objects. //! @ingroup samples diff --git a/Core/Multilayer/Layer.h b/Core/Multilayer/Layer.h index cf9361279fe..7895bd5a3cf 100644 --- a/Core/Multilayer/Layer.h +++ b/Core/Multilayer/Layer.h @@ -22,11 +22,9 @@ class ILayout; class IMaterial; -class ISampleVisitor; -//! @class Layer +//! A layer, with thickness (in nanometer) and material. //! @ingroup samples -//! @brief A layer with thickness and material class BA_CORE_API_ Layer : public ICompositeSample { @@ -37,51 +35,31 @@ public: //! Constructs layer made of _material_ with _thickness_ in nanometers and decoration Layer(const IMaterial& material, double thickness = 0); - virtual ~Layer(); + ~Layer() final; Layer* clone() const final { return new Layer(*this); } + Layer* cloneInvertB() const final; - //! Returns a clone with inverted magnetic fields - virtual Layer* cloneInvertB() const; + void accept(ISampleVisitor* visitor) const final { visitor->visit(this); } - //! Calls the ISampleVisitor's visit method - void accept(class ISampleVisitor* visitor) const final { visitor->visit(this); } + std::string to_str(int indent=0) const final; - //! Returns textual representation of *this and its descendants. - virtual std::string to_str(int indent=0) const; + void setThickness(double thickness); + double getThickness() const { return m_thickness; } - //! Sets layer thickness in nanometers. - virtual void setThickness(double thickness); + void setMaterial(const IMaterial& material); + void setMaterialAndThickness(const IMaterial& material, double thickness); + const IMaterial* getMaterial() const { return mp_material; } - //! Returns layer thickness in nanometers. - virtual double getThickness() const { return m_thickness; } + complex_t getRefractiveIndex() const; + complex_t getRefractiveIndex2() const; //!< squared refractive index - //! Sets _material_ of the layer. - virtual void setMaterial(const IMaterial& material); - - //! Sets _material_ and _thickness_. - virtual void setMaterialAndThickness(const IMaterial& material, double thickness); - - //! Returns layer's material. - const IMaterial* getMaterial() const final { return mp_material; } - - //! Returns refractive index of the layer's material. - virtual complex_t getRefractiveIndex() const; - - //! Returns squared refractive index of the layer's material. - complex_t getRefractiveIndex2() const; - - //! sets particle layout - virtual void addLayout(const ILayout& decoration); - - //! gets number of layouts present + void addLayout(const ILayout& decoration); size_t getNumberOfLayouts() const { return m_layouts.size(); } - - //! returns particle decoration - virtual const ILayout* getLayout(size_t i) const; + const ILayout* getLayout(size_t i) const; //! Returns true if decoration is present - virtual bool hasDWBASimulation() const { return m_layouts.size()>0; } + bool hasDWBASimulation() const { return m_layouts.size()>0; } double getTotalParticleSurfaceDensity(size_t layout_index) const; @@ -90,7 +68,7 @@ public: void setNumberOfLayers(size_t n_layers) { mn_layers = n_layers; } size_t getNumberOfLayers() const { return mn_layers; } -protected: +private: Layer(const Layer& other); void init_parameters(); @@ -98,14 +76,13 @@ protected: void print(std::ostream& ostr) const; //! adds particle layout (separate pointer version due to python-bindings) - virtual void addLayoutPtr(class ILayout* layout); + void addLayoutPtr(ILayout* layout); double m_thickness; //!< layer thickness in nanometers IMaterial* mp_material; //!< pointer to the material SafePointerVector<class ILayout> m_layouts; //!< independent layouts in this layer size_t mn_layers; -private: void initialize(); }; diff --git a/Core/Particle/IAbstractParticle.h b/Core/Particle/IAbstractParticle.h new file mode 100644 index 00000000000..783017cc26d --- /dev/null +++ b/Core/Particle/IAbstractParticle.h @@ -0,0 +1,54 @@ +// ************************************************************************** // +// +// BornAgain: simulate and fit scattering at grazing incidence +// +//! @file Core/Particle/IAbstractParticle.h +//! @brief Defines interface IAParticle. +//! +//! @homepage http://www.bornagainproject.org +//! @license GNU General Public License v3 or higher (see COPYING) +//! @copyright Forschungszentrum Jülich GmbH 2015 +//! @authors Scientific Computing Group at MLZ Garching +//! @authors C. Durniak, M. Ganeva, G. Pospelov, W. Van Herck, J. Wuttke +// +// ************************************************************************** // + +#ifndef IABSTRACTPARTICLE_H +#define IABSTRACTPARTICLE_H + +#include "ICompositeSample.h" +#include "Vectors3D.h" +#include <memory> + +class IMaterial; + +//! Interface for a generic particle. +//! +//! Inherited by IParticle and ParticleDistribution. + +//! @ingroup samples + +class BA_CORE_API_ IAbstractParticle : public ICompositeSample +{ +public: + IAbstractParticle() : m_abundance(1.0) {} + virtual ~IAbstractParticle() {} + + virtual IAbstractParticle* clone() const =0; + virtual IAbstractParticle* cloneInvertB() const =0; + + virtual void accept(ISampleVisitor* visitor) const { visitor->visit(this); } + + //! Sets the refractive index of the ambient material (which influences its scattering power) + virtual void setAmbientMaterial(const IMaterial&) =0; + + double getAbundance() const { return m_abundance; } + void setAbundance(double abundance) { m_abundance = abundance; } + + virtual const IMaterial* getAmbientMaterial() const =0; + +protected: + double m_abundance; +}; + +#endif // IABSTRACTPARTICLE_H diff --git a/Core/Particle/IParticle.cpp b/Core/Particle/IParticle.cpp index 2036b8b8501..1797c7e5fe6 100644 --- a/Core/Particle/IParticle.cpp +++ b/Core/Particle/IParticle.cpp @@ -3,7 +3,7 @@ // BornAgain: simulate and fit scattering at grazing incidence // //! @file Core/Particle/IParticle.cpp -//! @brief Implements generic member functions of IParticle. +//! @brief Implements interface IParticle. //! //! @homepage http://www.bornagainproject.org //! @license GNU General Public License v3 or higher (see COPYING) diff --git a/Core/Particle/IParticle.h b/Core/Particle/IParticle.h index 1621a4b01fe..d1752e17ab5 100644 --- a/Core/Particle/IParticle.h +++ b/Core/Particle/IParticle.h @@ -16,69 +16,36 @@ #ifndef IPARTICLE_H #define IPARTICLE_H -#include "ICompositeSample.h" +#include "IAbstractParticle.h" #include "Rotations.h" #include "Vectors3D.h" #include <memory> -class IMaterial; -class ISampleVisitor; -//! @class IAbstractParticle -//! @ingroup samples -//! @brief Interface for a generic particle - -class BA_CORE_API_ IAbstractParticle : public ICompositeSample -{ -public: - IAbstractParticle() : m_abundance(1.0) {} - virtual ~IAbstractParticle() {} - virtual IAbstractParticle* clone() const = 0; - - //! Returns a clone with inverted magnetic fields - virtual IAbstractParticle* cloneInvertB() const = 0; - - //! calls the ISampleVisitor's visit method - virtual void accept(ISampleVisitor* visitor) const { visitor->visit(this); } - - //! Sets the refractive index of the ambient material (which influences its scattering power) - virtual void setAmbientMaterial(const IMaterial&) {} - - //! Returns abundance. - double getAbundance() const { return m_abundance; } - - //! Sets abundance. - void setAbundance(double abundance) { m_abundance = abundance; } - - //! Returns particle's material. - virtual const IMaterial* getAmbientMaterial() const = 0; - -protected: - double m_abundance; -}; +//! Interface for a real particle (one that has position/rotation and form factor). +//! +//! Inherited by Particle, ParticleComposition, ParticleCoreShell, MesoCrystal. -//! @class IParticle //! @ingroup samples -//! @brief Interface for a real particle (one that has position/rotation and form factor) class BA_CORE_API_ IParticle : public IAbstractParticle { public: virtual ~IParticle() {} - virtual IParticle* clone() const = 0; + virtual IParticle* clone() const =0; //! Returns a clone with inverted magnetic fields - virtual IParticle* cloneInvertB() const = 0; + virtual IParticle* cloneInvertB() const =0; //! calls the ISampleVisitor's visit method - virtual void accept(class ISampleVisitor* visitor) const { visitor->visit(this); } + virtual void accept(ISampleVisitor* visitor) const { visitor->visit(this); } //! Create a form factor for this particle IFormFactor* createFormFactor() const; //! Create a form factor for this particle with an extra scattering factor virtual IFormFactor* createTransformedFormFactor( - const IRotation* p_rotation, kvector_t translation) const = 0; + const IRotation* p_rotation, kvector_t translation) const =0; //! Returns particle position. kvector_t getPosition() const { return m_position; } diff --git a/Core/Particle/ParticleDistribution.cpp b/Core/Particle/ParticleDistribution.cpp index cc5f586d582..fdfef3b9a19 100644 --- a/Core/Particle/ParticleDistribution.cpp +++ b/Core/Particle/ParticleDistribution.cpp @@ -16,9 +16,10 @@ #include "ParticleDistribution.h" #include "BornAgainNamespace.h" #include "Exceptions.h" -#include "RealParameter.h" +#include "IParticle.h" #include "ParameterPool.h" #include "ParameterSample.h" +#include "RealParameter.h" #include <map> ParticleDistribution::ParticleDistribution(const IParticle& prototype, diff --git a/Core/Particle/ParticleDistribution.h b/Core/Particle/ParticleDistribution.h index c1032a71a57..26e84387b9d 100644 --- a/Core/Particle/ParticleDistribution.h +++ b/Core/Particle/ParticleDistribution.h @@ -16,12 +16,14 @@ #ifndef PARTICLEDISTRIBUTION_H #define PARTICLEDISTRIBUTION_H -#include "IParticle.h" +#include "IAbstractParticle.h" #include "ParameterDistribution.h" -//! @class ParticleDistribution -//! @ingroup samples +class IParticle; + //! @brief A particle with a form factor and refractive index +//! ParticleDistribution +//! @ingroup samples class BA_CORE_API_ ParticleDistribution : public IAbstractParticle { diff --git a/Core/Scattering/ICompositeSample.h b/Core/Scattering/ICompositeSample.h index 2863d9d3ec2..f48d36c131b 100644 --- a/Core/Scattering/ICompositeSample.h +++ b/Core/Scattering/ICompositeSample.h @@ -18,8 +18,6 @@ #include "ISample.h" -class ISampleVisitor; - //! Pure virtual base class for tree-like composite samples. //! //! Inherited by IAbstractParticle, IClusteredParticle, ILayout, ILayer, IMultiLayer. diff --git a/Core/Scattering/ISample.h b/Core/Scattering/ISample.h index 5b86daf9014..4cc2a33b282 100644 --- a/Core/Scattering/ISample.h +++ b/Core/Scattering/ISample.h @@ -22,7 +22,6 @@ #include <vector> class IMaterial; -class ISampleVisitor; //! Pure virtual base class for sample components and properties related to scattering. //! diff --git a/Core/Scattering/Rotations.h b/Core/Scattering/Rotations.h index a26e2153e4b..95564abc554 100644 --- a/Core/Scattering/Rotations.h +++ b/Core/Scattering/Rotations.h @@ -38,7 +38,7 @@ public: virtual IRotation* createInverse() const=0; //! Calls the ISampleVisitor's visit method - void accept(class ISampleVisitor* visitor) const { visitor->visit(this); } + void accept(ISampleVisitor* visitor) const { visitor->visit(this); } //! Returns transformation. virtual Geometry::Transform3D getTransform3D() const=0; @@ -58,7 +58,7 @@ public: RotationX* cloneInvertB() const { return clone(); } RotationX* createInverse() const { return new RotationX(-m_angle); } - void accept(class ISampleVisitor* visitor) const { visitor->visit(this); } + void accept(ISampleVisitor* visitor) const { visitor->visit(this); } double getAngle() const { return m_angle; } @@ -77,7 +77,7 @@ public: RotationY* cloneInvertB() const { return clone(); } RotationY* createInverse() const { return new RotationY(-m_angle); } - void accept(class ISampleVisitor* visitor) const { visitor->visit(this); } + void accept(ISampleVisitor* visitor) const { visitor->visit(this); } double getAngle() const { return m_angle; } @@ -96,7 +96,7 @@ public: RotationZ* cloneInvertB() const { return clone(); } RotationZ* createInverse() const { return new RotationZ(-m_angle); } - void accept(class ISampleVisitor* visitor) const { visitor->visit(this); } + void accept(ISampleVisitor* visitor) const { visitor->visit(this); } double getAngle() const { return m_angle; } @@ -115,7 +115,7 @@ public: RotationEuler* cloneInvertB() const { return clone(); } IRotation* createInverse() const; - void accept(class ISampleVisitor* visitor) const { visitor->visit(this); } + void accept(ISampleVisitor* visitor) const { visitor->visit(this); } double getAlpha() const { return m_alpha; } double getBeta() const { return m_beta; } diff --git a/auto/Wrap/doxygen_core.i b/auto/Wrap/doxygen_core.i index cf49217fc28..6151ca29796 100644 --- a/auto/Wrap/doxygen_core.i +++ b/auto/Wrap/doxygen_core.i @@ -5424,7 +5424,9 @@ Returns true if area defined by two bins is inside or on border of polygon (more Interface for a generic particle. -C++ includes: IParticle.h +Inherited by IParticle and ParticleDistribution. + +C++ includes: IAbstractParticle.h "; %feature("docstring") IAbstractParticle::IAbstractParticle "IAbstractParticle::IAbstractParticle() @@ -5445,27 +5447,23 @@ Returns a clone with inverted magnetic fields. %feature("docstring") IAbstractParticle::accept "virtual void IAbstractParticle::accept(ISampleVisitor *visitor) const -calls the ISampleVisitor's visit method +Calls the ISampleVisitor's visit method. "; -%feature("docstring") IAbstractParticle::setAmbientMaterial "virtual void IAbstractParticle::setAmbientMaterial(const IMaterial &) +%feature("docstring") IAbstractParticle::setAmbientMaterial "virtual void IAbstractParticle::setAmbientMaterial(const IMaterial &)=0 Sets the refractive index of the ambient material (which influences its scattering power) "; -%feature("docstring") IAbstractParticle::getAbundance "double IAbstractParticle::getAbundance() const - -Returns abundance. +%feature("docstring") IAbstractParticle::getAbundance "double IAbstractParticle::getAbundance() const "; %feature("docstring") IAbstractParticle::setAbundance "void IAbstractParticle::setAbundance(double abundance) - -Sets abundance. "; %feature("docstring") IAbstractParticle::getAmbientMaterial "virtual const IMaterial* IAbstractParticle::getAmbientMaterial() const =0 -Returns particle's material. +Returns nullptr, unless overwritten to return a specific material. "; @@ -6726,27 +6724,27 @@ C++ includes: IIntensityNormalizer.h // File: classIInterferenceFunction.xml %feature("docstring") IInterferenceFunction " -Interface to interference functions. +Pure virtual base class of interference functions. C++ includes: IInterferenceFunction.h "; -%feature("docstring") IInterferenceFunction::~IInterferenceFunction "IInterferenceFunction::~IInterferenceFunction() +%feature("docstring") IInterferenceFunction::~IInterferenceFunction "virtual IInterferenceFunction::~IInterferenceFunction() "; -%feature("docstring") IInterferenceFunction::evaluate "virtual double IInterferenceFunction::evaluate(const kvector_t q) const =0 +%feature("docstring") IInterferenceFunction::clone "virtual IInterferenceFunction* IInterferenceFunction::clone() const =0 -Evaluates the interference function for a given wavevector transfer (only the real x and y components are relevant) +Returns a clone of this ISample object. "; -%feature("docstring") IInterferenceFunction::clone "virtual IInterferenceFunction* IInterferenceFunction::clone() const =0 +%feature("docstring") IInterferenceFunction::accept "virtual void IInterferenceFunction::accept(ISampleVisitor *visitor) const =0 -Returns a clone of this ISample object. +Calls the ISampleVisitor's visit method. "; -%feature("docstring") IInterferenceFunction::accept "void IInterferenceFunction::accept(ISampleVisitor *visitor) const +%feature("docstring") IInterferenceFunction::evaluate "virtual double IInterferenceFunction::evaluate(const kvector_t q) const =0 -Calls ISampleVisitor::visit. +Evaluates the interference function for a given wavevector transfer (only the real x and y components are relevant) "; %feature("docstring") IInterferenceFunction::getKappa "virtual double IInterferenceFunction::getKappa() const @@ -7380,7 +7378,7 @@ Returns a clone of this ISample object. %feature("docstring") InterferenceFunction1DLattice::accept "void InterferenceFunction1DLattice::accept(ISampleVisitor *visitor) const final -Calls ISampleVisitor::visit. +Calls the ISampleVisitor's visit method. "; %feature("docstring") InterferenceFunction1DLattice::setDecayFunction "void InterferenceFunction1DLattice::setDecayFunction(const IFTDecayFunction1D &pdf) @@ -7434,7 +7432,7 @@ Returns a clone of this ISample object. %feature("docstring") InterferenceFunction2DLattice::accept "void InterferenceFunction2DLattice::accept(ISampleVisitor *visitor) const final -Calls ISampleVisitor::visit. +Calls the ISampleVisitor's visit method. "; %feature("docstring") InterferenceFunction2DLattice::setDecayFunction "void InterferenceFunction2DLattice::setDecayFunction(const IFTDecayFunction2D &pdf) @@ -7501,7 +7499,7 @@ Returns a clone of this ISample object. %feature("docstring") InterferenceFunction2DParaCrystal::accept "void InterferenceFunction2DParaCrystal::accept(ISampleVisitor *visitor) const final -Calls ISampleVisitor::visit. +Calls the ISampleVisitor's visit method. "; %feature("docstring") InterferenceFunction2DParaCrystal::to_str "std::string InterferenceFunction2DParaCrystal::to_str(int indent=0) const final @@ -7591,7 +7589,7 @@ Returns a clone of this ISample object. %feature("docstring") InterferenceFunctionNone::accept "void InterferenceFunctionNone::accept(ISampleVisitor *visitor) const final -Calls ISampleVisitor::visit. +Calls the ISampleVisitor's visit method. "; %feature("docstring") InterferenceFunctionNone::evaluate "double InterferenceFunctionNone::evaluate(const kvector_t) const final @@ -7618,7 +7616,7 @@ Returns a clone of this ISample object. %feature("docstring") InterferenceFunctionRadialParaCrystal::accept "void InterferenceFunctionRadialParaCrystal::accept(ISampleVisitor *visitor) const final -Calls ISampleVisitor::visit. +Calls the ISampleVisitor's visit method. "; %feature("docstring") InterferenceFunctionRadialParaCrystal::to_str "std::string InterferenceFunctionRadialParaCrystal::to_str(int indent=0) const final @@ -7785,7 +7783,9 @@ Copies local parameters to external_pool, under name \"path/<name>copy_number/\" // File: classIParticle.xml %feature("docstring") IParticle " -Interface for a real particle (one that has position/rotation and form factor) +Interface for a real particle (one that has position/rotation and form factor). + +Inherited by Particle, ParticleComposition, ParticleCoreShell, MesoCrystal. C++ includes: IParticle.h "; @@ -7803,7 +7803,7 @@ Returns a clone of this ISample object. Returns a clone with inverted magnetic fields. "; -%feature("docstring") IParticle::accept "virtual void IParticle::accept(class ISampleVisitor *visitor) const +%feature("docstring") IParticle::accept "virtual void IParticle::accept(ISampleVisitor *visitor) const calls the ISampleVisitor's visit method "; @@ -7927,7 +7927,7 @@ Returns a clone with inverted magnetic fields. Returns a new IRotation object that is the current object's inverse. "; -%feature("docstring") IRotation::accept "void IRotation::accept(class ISampleVisitor *visitor) const +%feature("docstring") IRotation::accept "void IRotation::accept(ISampleVisitor *visitor) const Calls the ISampleVisitor's visit method. "; @@ -8759,7 +8759,7 @@ C++ includes: Lattice2DParameters.h // File: classLayer.xml %feature("docstring") Layer " -A layer with thickness and material. +A layer, with thickness (in nanometer) and material. C++ includes: Layer.h "; @@ -8774,7 +8774,7 @@ Constructs empty layer. Constructs layer made of material with thickness in nanometers and decoration. "; -%feature("docstring") Layer::~Layer "Layer::~Layer() +%feature("docstring") Layer::~Layer "Layer::~Layer() final "; %feature("docstring") Layer::clone "Layer* Layer::clone() const final @@ -8782,19 +8782,19 @@ Constructs layer made of material with thickness in nanometers and decoration. Returns a clone of this ISample object. "; -%feature("docstring") Layer::cloneInvertB "Layer * Layer::cloneInvertB() const +%feature("docstring") Layer::cloneInvertB "Layer * Layer::cloneInvertB() const final Returns a clone with inverted magnetic fields. "; -%feature("docstring") Layer::accept "void Layer::accept(class ISampleVisitor *visitor) const final +%feature("docstring") Layer::accept "void Layer::accept(ISampleVisitor *visitor) const final Calls the ISampleVisitor's visit method. "; -%feature("docstring") Layer::to_str "std::string Layer::to_str(int indent=0) const +%feature("docstring") Layer::to_str "std::string Layer::to_str(int indent=0) const final -Returns textual representation of *this and its descendants. +Returns textual representation of this and its descendants. "; %feature("docstring") Layer::setThickness "void Layer::setThickness(double thickness) @@ -8802,9 +8802,7 @@ Returns textual representation of *this and its descendants. Sets layer thickness in nanometers. "; -%feature("docstring") Layer::getThickness "virtual double Layer::getThickness() const - -Returns layer thickness in nanometers. +%feature("docstring") Layer::getThickness "double Layer::getThickness() const "; %feature("docstring") Layer::setMaterial "void Layer::setMaterial(const IMaterial &material) @@ -8813,41 +8811,31 @@ Sets material of the layer. "; %feature("docstring") Layer::setMaterialAndThickness "void Layer::setMaterialAndThickness(const IMaterial &material, double thickness) - -Sets material and thickness. "; -%feature("docstring") Layer::getMaterial "const IMaterial* Layer::getMaterial() const final +%feature("docstring") Layer::getMaterial "const IMaterial* Layer::getMaterial() const -Returns layer's material. +Returns nullptr, unless overwritten to return a specific material. "; -%feature("docstring") Layer::getRefractiveIndex "complex_t Layer::getRefractiveIndex() const - -Returns refractive index of the layer's material. +%feature("docstring") Layer::getRefractiveIndex "complex_t Layer::getRefractiveIndex() const "; %feature("docstring") Layer::getRefractiveIndex2 "complex_t Layer::getRefractiveIndex2() const -Returns squared refractive index of the layer's material. +squared refractive index "; %feature("docstring") Layer::addLayout "void Layer::addLayout(const ILayout &decoration) - -sets particle layout "; -%feature("docstring") Layer::getNumberOfLayouts "size_t Layer::getNumberOfLayouts() const - -gets number of layouts present +%feature("docstring") Layer::getNumberOfLayouts "size_t Layer::getNumberOfLayouts() const "; -%feature("docstring") Layer::getLayout "const ILayout * Layer::getLayout(size_t i) const - -returns particle decoration +%feature("docstring") Layer::getLayout "const ILayout * Layer::getLayout(size_t i) const "; -%feature("docstring") Layer::hasDWBASimulation "virtual bool Layer::hasDWBASimulation() const +%feature("docstring") Layer::hasDWBASimulation "bool Layer::hasDWBASimulation() const Returns true if decoration is present. "; @@ -9462,7 +9450,7 @@ Sets the refractive index of the ambient material (which influences its scatteri %feature("docstring") MesoCrystal::getAmbientMaterial "const IMaterial * MesoCrystal::getAmbientMaterial() const -Returns particle's material. +Returns nullptr, unless overwritten to return a specific material. "; %feature("docstring") MesoCrystal::createTransformedFormFactor "IFormFactor * MesoCrystal::createTransformedFormFactor(const IRotation *p_rotation, kvector_t translation) const @@ -10576,7 +10564,7 @@ Sets the refractive index of the ambient material (which influences its scatteri %feature("docstring") Particle::getAmbientMaterial "const IMaterial* Particle::getAmbientMaterial() const final -Returns particle's material. +Returns nullptr, unless overwritten to return a specific material. "; %feature("docstring") Particle::createTransformedFormFactor "IFormFactor * Particle::createTransformedFormFactor(const IRotation *p_rotation, kvector_t translation) const @@ -10656,7 +10644,7 @@ Sets the refractive index of the ambient material (which influences its scatteri %feature("docstring") ParticleComposition::getAmbientMaterial "const IMaterial * ParticleComposition::getAmbientMaterial() const -Returns particle's material. +Returns nullptr, unless overwritten to return a specific material. "; %feature("docstring") ParticleComposition::createTransformedFormFactor "IFormFactor * ParticleComposition::createTransformedFormFactor(const IRotation *p_rotation, kvector_t translation) const @@ -10729,7 +10717,7 @@ Sets the refractive index of the ambient material (which influences its scatteri %feature("docstring") ParticleCoreShell::getAmbientMaterial "const IMaterial * ParticleCoreShell::getAmbientMaterial() const -Returns particle's material. +Returns nullptr, unless overwritten to return a specific material. "; %feature("docstring") ParticleCoreShell::createTransformedFormFactor "IFormFactor * ParticleCoreShell::createTransformedFormFactor(const IRotation *p_rotation, kvector_t translation) const @@ -10751,7 +10739,7 @@ Returns the shell particle. // File: classParticleDistribution.xml %feature("docstring") ParticleDistribution " -A particle with a form factor and refractive index. +A particle with a form factor and refractive index ParticleDistribution. C++ includes: ParticleDistribution.h "; @@ -11571,7 +11559,7 @@ Returns a clone with inverted magnetic fields. Returns a new IRotation object that is the current object's inverse. "; -%feature("docstring") RotationEuler::accept "void RotationEuler::accept(class ISampleVisitor *visitor) const +%feature("docstring") RotationEuler::accept "void RotationEuler::accept(ISampleVisitor *visitor) const Calls the ISampleVisitor's visit method. "; @@ -11612,7 +11600,7 @@ Returns a clone with inverted magnetic fields. Returns a new IRotation object that is the current object's inverse. "; -%feature("docstring") RotationX::accept "void RotationX::accept(class ISampleVisitor *visitor) const +%feature("docstring") RotationX::accept "void RotationX::accept(ISampleVisitor *visitor) const Calls the ISampleVisitor's visit method. "; @@ -11647,7 +11635,7 @@ Returns a clone with inverted magnetic fields. Returns a new IRotation object that is the current object's inverse. "; -%feature("docstring") RotationY::accept "void RotationY::accept(class ISampleVisitor *visitor) const +%feature("docstring") RotationY::accept "void RotationY::accept(ISampleVisitor *visitor) const Calls the ISampleVisitor's visit method. "; @@ -11682,7 +11670,7 @@ Returns a clone with inverted magnetic fields. Returns a new IRotation object that is the current object's inverse. "; -%feature("docstring") RotationZ::accept "void RotationZ::accept(class ISampleVisitor *visitor) const +%feature("docstring") RotationZ::accept "void RotationZ::accept(ISampleVisitor *visitor) const Calls the ISampleVisitor's visit method. "; @@ -13138,7 +13126,7 @@ C++ includes: WavevectorInfo.h // File: classMathFunctions_1_1Convolve_1_1Workspace.xml -// File: namespace_0D296.xml +// File: namespace_0D295.xml // File: namespace_0D368.xml @@ -13631,9 +13619,6 @@ enables exception throw in the case of NaN, Inf // File: FTDistributions2D_8h.xml -// File: IInterferenceFunction_8cpp.xml - - // File: IInterferenceFunction_8h.xml @@ -14641,6 +14626,9 @@ The mathematics implemented here is described in full detail in a paper by Joach // File: FormFactorWeighted_8h.xml +// File: IAbstractParticle_8h.xml + + // File: IClusteredParticles_8h.xml diff --git a/auto/Wrap/libBornAgainCore.py b/auto/Wrap/libBornAgainCore.py index fc136f0fa6d..c4292cf5be9 100644 --- a/auto/Wrap/libBornAgainCore.py +++ b/auto/Wrap/libBornAgainCore.py @@ -6691,7 +6691,7 @@ class ISampleVisitor(_object): visit(ISampleVisitor self, Layer arg2) visit(ISampleVisitor self, LayerInterface const * arg2) visit(ISampleVisitor self, MultiLayer arg2) - visit(ISampleVisitor self, IAbstractParticle arg2) + visit(ISampleVisitor self, IAbstractParticle const * arg2) visit(ISampleVisitor self, IParticle arg2) visit(ISampleVisitor self, Particle arg2) visit(ISampleVisitor self, ParticleDistribution arg2) @@ -16835,7 +16835,7 @@ class IInterferenceFunction(ISample): """ - Interface to interference functions. + Pure virtual base class of interference functions. C++ includes: IInterferenceFunction.h @@ -16855,18 +16855,6 @@ class IInterferenceFunction(ISample): __swig_destroy__ = _libBornAgainCore.delete_IInterferenceFunction __del__ = lambda self: None - def evaluate(self, q): - """ - evaluate(IInterferenceFunction self, kvector_t q) -> double - - virtual double IInterferenceFunction::evaluate(const kvector_t q) const =0 - - Evaluates the interference function for a given wavevector transfer (only the real x and y components are relevant) - - """ - return _libBornAgainCore.IInterferenceFunction_evaluate(self, q) - - def clone(self): """ clone(IInterferenceFunction self) -> IInterferenceFunction @@ -16883,14 +16871,26 @@ class IInterferenceFunction(ISample): """ accept(IInterferenceFunction self, ISampleVisitor visitor) - void IInterferenceFunction::accept(ISampleVisitor *visitor) const + virtual void IInterferenceFunction::accept(ISampleVisitor *visitor) const =0 - Calls ISampleVisitor::visit. + Calls the ISampleVisitor's visit method. """ return _libBornAgainCore.IInterferenceFunction_accept(self, visitor) + def evaluate(self, q): + """ + evaluate(IInterferenceFunction self, kvector_t q) -> double + + virtual double IInterferenceFunction::evaluate(const kvector_t q) const =0 + + Evaluates the interference function for a given wavevector transfer (only the real x and y components are relevant) + + """ + return _libBornAgainCore.IInterferenceFunction_evaluate(self, q) + + def getKappa(self): """ getKappa(IInterferenceFunction self) -> double @@ -16993,7 +16993,7 @@ class ILayout(ICompositeSample): def getParticle(self, index): """ - getParticle(ILayout self, size_t index) -> IAbstractParticle + getParticle(ILayout self, size_t index) -> IAbstractParticle const * virtual const IAbstractParticle* ILayout::getParticle(size_t index) const =0 @@ -17101,132 +17101,20 @@ class ILayout(ICompositeSample): ILayout_swigregister = _libBornAgainCore.ILayout_swigregister ILayout_swigregister(ILayout) -class IAbstractParticle(ICompositeSample): - """ - - - Interface for a generic particle. - - C++ includes: IParticle.h - +class IParticle(_object): """ - __swig_setmethods__ = {} - for _s in [ICompositeSample]: - __swig_setmethods__.update(getattr(_s, '__swig_setmethods__', {})) - __setattr__ = lambda self, name, value: _swig_setattr(self, IAbstractParticle, name, value) - __swig_getmethods__ = {} - for _s in [ICompositeSample]: - __swig_getmethods__.update(getattr(_s, '__swig_getmethods__', {})) - __getattr__ = lambda self, name: _swig_getattr(self, IAbstractParticle, name) - - def __init__(self, *args, **kwargs): - raise AttributeError("No constructor defined - class is abstract") - __repr__ = _swig_repr - __swig_destroy__ = _libBornAgainCore.delete_IAbstractParticle - __del__ = lambda self: None - - def clone(self): - """ - clone(IAbstractParticle self) -> IAbstractParticle - - virtual IAbstractParticle* IAbstractParticle::clone() const =0 - - Returns a clone of this ISample object. - """ - return _libBornAgainCore.IAbstractParticle_clone(self) - - - def cloneInvertB(self): - """ - cloneInvertB(IAbstractParticle self) -> IAbstractParticle - - virtual IAbstractParticle* IAbstractParticle::cloneInvertB() const =0 - - Returns a clone with inverted magnetic fields. - """ - return _libBornAgainCore.IAbstractParticle_cloneInvertB(self) - - - def accept(self, visitor): - """ - accept(IAbstractParticle self, ISampleVisitor visitor) - - virtual void IAbstractParticle::accept(ISampleVisitor *visitor) const + Interface for a real particle (one that has position/rotation and form factor). - calls the ISampleVisitor's visit method - - """ - return _libBornAgainCore.IAbstractParticle_accept(self, visitor) - - - def setAmbientMaterial(self, arg2): - """ - setAmbientMaterial(IAbstractParticle self, IMaterial arg2) - - virtual void IAbstractParticle::setAmbientMaterial(const IMaterial &) - - Sets the refractive index of the ambient material (which influences its scattering power) - - """ - return _libBornAgainCore.IAbstractParticle_setAmbientMaterial(self, arg2) - - - def getAbundance(self): - """ - getAbundance(IAbstractParticle self) -> double - - double IAbstractParticle::getAbundance() const - - Returns abundance. - - """ - return _libBornAgainCore.IAbstractParticle_getAbundance(self) - - - def setAbundance(self, abundance): - """ - setAbundance(IAbstractParticle self, double abundance) - - void IAbstractParticle::setAbundance(double abundance) - - Sets abundance. - - """ - return _libBornAgainCore.IAbstractParticle_setAbundance(self, abundance) - - - def getAmbientMaterial(self): - """ - getAmbientMaterial(IAbstractParticle self) -> IMaterial - - virtual const IMaterial* IAbstractParticle::getAmbientMaterial() const =0 - - Returns particle's material. - - """ - return _libBornAgainCore.IAbstractParticle_getAmbientMaterial(self) - -IAbstractParticle_swigregister = _libBornAgainCore.IAbstractParticle_swigregister -IAbstractParticle_swigregister(IAbstractParticle) - -class IParticle(IAbstractParticle): - """ - - - Interface for a real particle (one that has position/rotation and form factor) + Inherited by Particle, ParticleComposition, ParticleCoreShell, MesoCrystal. C++ includes: IParticle.h """ __swig_setmethods__ = {} - for _s in [IAbstractParticle]: - __swig_setmethods__.update(getattr(_s, '__swig_setmethods__', {})) __setattr__ = lambda self, name, value: _swig_setattr(self, IParticle, name, value) __swig_getmethods__ = {} - for _s in [IAbstractParticle]: - __swig_getmethods__.update(getattr(_s, '__swig_getmethods__', {})) __getattr__ = lambda self, name: _swig_getattr(self, IParticle, name) def __init__(self, *args, **kwargs): @@ -17263,7 +17151,7 @@ class IParticle(IAbstractParticle): """ accept(IParticle self, ISampleVisitor visitor) - virtual void IParticle::accept(class ISampleVisitor *visitor) const + virtual void IParticle::accept(ISampleVisitor *visitor) const calls the ISampleVisitor's visit method @@ -17490,7 +17378,7 @@ class IRotation(ISample): """ accept(IRotation self, ISampleVisitor visitor) - void IRotation::accept(class ISampleVisitor *visitor) const + void IRotation::accept(ISampleVisitor *visitor) const Calls the ISampleVisitor's visit method. @@ -17604,7 +17492,7 @@ class RotationX(IRotation): """ accept(RotationX self, ISampleVisitor visitor) - void RotationX::accept(class ISampleVisitor *visitor) const + void RotationX::accept(ISampleVisitor *visitor) const Calls the ISampleVisitor's visit method. @@ -17703,7 +17591,7 @@ class RotationY(IRotation): """ accept(RotationY self, ISampleVisitor visitor) - void RotationY::accept(class ISampleVisitor *visitor) const + void RotationY::accept(ISampleVisitor *visitor) const Calls the ISampleVisitor's visit method. @@ -17803,7 +17691,7 @@ class RotationZ(IRotation): """ accept(RotationZ self, ISampleVisitor visitor) - void RotationZ::accept(class ISampleVisitor *visitor) const + void RotationZ::accept(ISampleVisitor *visitor) const Calls the ISampleVisitor's visit method. @@ -17902,7 +17790,7 @@ class RotationEuler(IRotation): """ accept(RotationEuler self, ISampleVisitor visitor) - void RotationEuler::accept(class ISampleVisitor *visitor) const + void RotationEuler::accept(ISampleVisitor *visitor) const Calls the ISampleVisitor's visit method. @@ -18552,7 +18440,7 @@ class InterferenceFunction1DLattice(IInterferenceFunction): void InterferenceFunction1DLattice::accept(ISampleVisitor *visitor) const final - Calls ISampleVisitor::visit. + Calls the ISampleVisitor's visit method. """ return _libBornAgainCore.InterferenceFunction1DLattice_accept(self, visitor) @@ -18653,7 +18541,7 @@ class InterferenceFunctionRadialParaCrystal(IInterferenceFunction): void InterferenceFunctionRadialParaCrystal::accept(ISampleVisitor *visitor) const final - Calls ISampleVisitor::visit. + Calls the ISampleVisitor's visit method. """ return _libBornAgainCore.InterferenceFunctionRadialParaCrystal_accept(self, visitor) @@ -18848,7 +18736,7 @@ class InterferenceFunction2DLattice(IInterferenceFunction): void InterferenceFunction2DLattice::accept(ISampleVisitor *visitor) const final - Calls ISampleVisitor::visit. + Calls the ISampleVisitor's visit method. """ return _libBornAgainCore.InterferenceFunction2DLattice_accept(self, visitor) @@ -19018,7 +18906,7 @@ class InterferenceFunction2DParaCrystal(IInterferenceFunction): void InterferenceFunction2DParaCrystal::accept(ISampleVisitor *visitor) const final - Calls ISampleVisitor::visit. + Calls the ISampleVisitor's visit method. """ return _libBornAgainCore.InterferenceFunction2DParaCrystal_accept(self, visitor) @@ -19259,7 +19147,7 @@ class InterferenceFunctionNone(IInterferenceFunction): void InterferenceFunctionNone::accept(ISampleVisitor *visitor) const final - Calls ISampleVisitor::visit. + Calls the ISampleVisitor's visit method. """ return _libBornAgainCore.InterferenceFunctionNone_accept(self, visitor) @@ -19866,7 +19754,7 @@ class Layer(ICompositeSample): """ - A layer with thickness and material. + A layer, with thickness (in nanometer) and material. C++ includes: Layer.h @@ -19916,7 +19804,7 @@ class Layer(ICompositeSample): """ cloneInvertB(Layer self) -> Layer - Layer * Layer::cloneInvertB() const + Layer * Layer::cloneInvertB() const final Returns a clone with inverted magnetic fields. @@ -19928,7 +19816,7 @@ class Layer(ICompositeSample): """ accept(Layer self, ISampleVisitor visitor) - void Layer::accept(class ISampleVisitor *visitor) const final + void Layer::accept(ISampleVisitor *visitor) const final Calls the ISampleVisitor's visit method. @@ -19941,9 +19829,9 @@ class Layer(ICompositeSample): to_str(Layer self, int indent=0) -> std::string to_str(Layer self) -> std::string - std::string Layer::to_str(int indent=0) const + std::string Layer::to_str(int indent=0) const final - Returns textual representation of *this and its descendants. + Returns textual representation of this and its descendants. """ return _libBornAgainCore.Layer_to_str(self, indent) @@ -19965,9 +19853,7 @@ class Layer(ICompositeSample): """ getThickness(Layer self) -> double - virtual double Layer::getThickness() const - - Returns layer thickness in nanometers. + double Layer::getThickness() const """ return _libBornAgainCore.Layer_getThickness(self) @@ -19991,8 +19877,6 @@ class Layer(ICompositeSample): void Layer::setMaterialAndThickness(const IMaterial &material, double thickness) - Sets material and thickness. - """ return _libBornAgainCore.Layer_setMaterialAndThickness(self, material, thickness) @@ -20001,9 +19885,9 @@ class Layer(ICompositeSample): """ getMaterial(Layer self) -> IMaterial - const IMaterial* Layer::getMaterial() const final + const IMaterial* Layer::getMaterial() const - Returns layer's material. + Returns nullptr, unless overwritten to return a specific material. """ return _libBornAgainCore.Layer_getMaterial(self) @@ -20013,9 +19897,7 @@ class Layer(ICompositeSample): """ getRefractiveIndex(Layer self) -> complex_t - complex_t Layer::getRefractiveIndex() const - - Returns refractive index of the layer's material. + complex_t Layer::getRefractiveIndex() const """ return _libBornAgainCore.Layer_getRefractiveIndex(self) @@ -20027,7 +19909,7 @@ class Layer(ICompositeSample): complex_t Layer::getRefractiveIndex2() const - Returns squared refractive index of the layer's material. + squared refractive index """ return _libBornAgainCore.Layer_getRefractiveIndex2(self) @@ -20039,8 +19921,6 @@ class Layer(ICompositeSample): void Layer::addLayout(const ILayout &decoration) - sets particle layout - """ return _libBornAgainCore.Layer_addLayout(self, decoration) @@ -20049,9 +19929,7 @@ class Layer(ICompositeSample): """ getNumberOfLayouts(Layer self) -> size_t - size_t Layer::getNumberOfLayouts() const - - gets number of layouts present + size_t Layer::getNumberOfLayouts() const """ return _libBornAgainCore.Layer_getNumberOfLayouts(self) @@ -20061,9 +19939,7 @@ class Layer(ICompositeSample): """ getLayout(Layer self, size_t i) -> ILayout - const ILayout * Layer::getLayout(size_t i) const - - returns particle decoration + const ILayout * Layer::getLayout(size_t i) const """ return _libBornAgainCore.Layer_getLayout(self, i) @@ -20073,7 +19949,7 @@ class Layer(ICompositeSample): """ hasDWBASimulation(Layer self) -> bool - virtual bool Layer::hasDWBASimulation() const + bool Layer::hasDWBASimulation() const Returns true if decoration is present. @@ -20621,7 +20497,7 @@ class MesoCrystal(IParticle): const IMaterial * MesoCrystal::getAmbientMaterial() const - Returns particle's material. + Returns nullptr, unless overwritten to return a specific material. """ return _libBornAgainCore.MesoCrystal_getAmbientMaterial(self) @@ -22379,7 +22255,7 @@ class Particle(IParticle): const IMaterial* Particle::getAmbientMaterial() const final - Returns particle's material. + Returns nullptr, unless overwritten to return a specific material. """ return _libBornAgainCore.Particle_getAmbientMaterial(self) @@ -22565,7 +22441,7 @@ class ParticleComposition(IParticle): const IMaterial * ParticleComposition::getAmbientMaterial() const - Returns particle's material. + Returns nullptr, unless overwritten to return a specific material. """ return _libBornAgainCore.ParticleComposition_getAmbientMaterial(self) @@ -22708,7 +22584,7 @@ class ParticleCoreShell(IParticle): const IMaterial * ParticleCoreShell::getAmbientMaterial() const - Returns particle's material. + Returns nullptr, unless overwritten to return a specific material. """ return _libBornAgainCore.ParticleCoreShell_getAmbientMaterial(self) @@ -22752,22 +22628,18 @@ class ParticleCoreShell(IParticle): ParticleCoreShell_swigregister = _libBornAgainCore.ParticleCoreShell_swigregister ParticleCoreShell_swigregister(ParticleCoreShell) -class ParticleDistribution(IAbstractParticle): +class ParticleDistribution(_object): """ - A particle with a form factor and refractive index. + A particle with a form factor and refractive index ParticleDistribution. C++ includes: ParticleDistribution.h """ __swig_setmethods__ = {} - for _s in [IAbstractParticle]: - __swig_setmethods__.update(getattr(_s, '__swig_setmethods__', {})) __setattr__ = lambda self, name, value: _swig_setattr(self, ParticleDistribution, name, value) __swig_getmethods__ = {} - for _s in [IAbstractParticle]: - __swig_getmethods__.update(getattr(_s, '__swig_getmethods__', {})) __getattr__ = lambda self, name: _swig_getattr(self, ParticleDistribution, name) __repr__ = _swig_repr @@ -22931,8 +22803,8 @@ class ParticleLayout(ILayout): def __init__(self, *args): """ __init__(ParticleLayout self) -> ParticleLayout - __init__(ParticleLayout self, IAbstractParticle particle) -> ParticleLayout - __init__(ParticleLayout self, IAbstractParticle particle, double abundance) -> ParticleLayout + __init__(ParticleLayout self, IAbstractParticle const & particle) -> ParticleLayout + __init__(ParticleLayout self, IAbstractParticle const & particle, double abundance) -> ParticleLayout ParticleLayout::ParticleLayout(const IAbstractParticle &particle, double abundance) @@ -22983,8 +22855,8 @@ class ParticleLayout(ILayout): def addParticle(self, *args): """ - addParticle(ParticleLayout self, IAbstractParticle particle) - addParticle(ParticleLayout self, IAbstractParticle particle, double abundance) + addParticle(ParticleLayout self, IAbstractParticle const & particle) + addParticle(ParticleLayout self, IAbstractParticle const & particle, double abundance) addParticle(ParticleLayout self, IParticle particle, double abundance, kvector_t position) addParticle(ParticleLayout self, IParticle particle, double abundance, kvector_t position, IRotation rotation) @@ -23025,7 +22897,7 @@ class ParticleLayout(ILayout): def getParticle(self, index): """ - getParticle(ParticleLayout self, size_t index) -> IAbstractParticle + getParticle(ParticleLayout self, size_t index) -> IAbstractParticle const * const IAbstractParticle * ParticleLayout::getParticle(size_t index) const final diff --git a/auto/Wrap/libBornAgainCore_wrap.cpp b/auto/Wrap/libBornAgainCore_wrap.cpp index 1f21377f959..e11d51eba2e 100644 --- a/auto/Wrap/libBornAgainCore_wrap.cpp +++ b/auto/Wrap/libBornAgainCore_wrap.cpp @@ -45640,10 +45640,10 @@ SWIGINTERN PyObject *_wrap_ISampleVisitor_visit(PyObject *self, PyObject *args) _v = SWIG_CheckState(res); if (_v) { void *vptr = 0; - int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_Particle, 0); + int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_ICompositeSample, 0); _v = SWIG_CheckState(res); if (_v) { - return _wrap_ISampleVisitor_visit__SWIG_11(self, args); + return _wrap_ISampleVisitor_visit__SWIG_1(self, args); } } } @@ -45668,10 +45668,10 @@ SWIGINTERN PyObject *_wrap_ISampleVisitor_visit(PyObject *self, PyObject *args) _v = SWIG_CheckState(res); if (_v) { void *vptr = 0; - int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_ParticleComposition, 0); + int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_FormFactorAnisoPyramid, 0); _v = SWIG_CheckState(res); if (_v) { - return _wrap_ISampleVisitor_visit__SWIG_13(self, args); + return _wrap_ISampleVisitor_visit__SWIG_19(self, args); } } } @@ -45682,10 +45682,10 @@ SWIGINTERN PyObject *_wrap_ISampleVisitor_visit(PyObject *self, PyObject *args) _v = SWIG_CheckState(res); if (_v) { void *vptr = 0; - int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_ParticleDistribution, 0); + int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_Particle, 0); _v = SWIG_CheckState(res); if (_v) { - return _wrap_ISampleVisitor_visit__SWIG_12(self, args); + return _wrap_ISampleVisitor_visit__SWIG_11(self, args); } } } @@ -45696,10 +45696,10 @@ SWIGINTERN PyObject *_wrap_ISampleVisitor_visit(PyObject *self, PyObject *args) _v = SWIG_CheckState(res); if (_v) { void *vptr = 0; - int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_MesoCrystal, 0); + int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_ParticleComposition, 0); _v = SWIG_CheckState(res); if (_v) { - return _wrap_ISampleVisitor_visit__SWIG_14(self, args); + return _wrap_ISampleVisitor_visit__SWIG_13(self, args); } } } @@ -45710,10 +45710,10 @@ SWIGINTERN PyObject *_wrap_ISampleVisitor_visit(PyObject *self, PyObject *args) _v = SWIG_CheckState(res); if (_v) { void *vptr = 0; - int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_ParticleCoreShell, 0); + int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_ParticleDistribution, 0); _v = SWIG_CheckState(res); if (_v) { - return _wrap_ISampleVisitor_visit__SWIG_15(self, args); + return _wrap_ISampleVisitor_visit__SWIG_12(self, args); } } } @@ -45724,10 +45724,10 @@ SWIGINTERN PyObject *_wrap_ISampleVisitor_visit(PyObject *self, PyObject *args) _v = SWIG_CheckState(res); if (_v) { void *vptr = 0; - int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_IParticle, 0); + int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_MesoCrystal, 0); _v = SWIG_CheckState(res); if (_v) { - return _wrap_ISampleVisitor_visit__SWIG_10(self, args); + return _wrap_ISampleVisitor_visit__SWIG_14(self, args); } } } @@ -45738,10 +45738,10 @@ SWIGINTERN PyObject *_wrap_ISampleVisitor_visit(PyObject *self, PyObject *args) _v = SWIG_CheckState(res); if (_v) { void *vptr = 0; - int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_IAbstractParticle, 0); + int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_ParticleCoreShell, 0); _v = SWIG_CheckState(res); if (_v) { - return _wrap_ISampleVisitor_visit__SWIG_9(self, args); + return _wrap_ISampleVisitor_visit__SWIG_15(self, args); } } } @@ -45752,10 +45752,10 @@ SWIGINTERN PyObject *_wrap_ISampleVisitor_visit(PyObject *self, PyObject *args) _v = SWIG_CheckState(res); if (_v) { void *vptr = 0; - int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_ICompositeSample, 0); + int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_IParticle, 0); _v = SWIG_CheckState(res); if (_v) { - return _wrap_ISampleVisitor_visit__SWIG_1(self, args); + return _wrap_ISampleVisitor_visit__SWIG_10(self, args); } } } @@ -45766,10 +45766,10 @@ SWIGINTERN PyObject *_wrap_ISampleVisitor_visit(PyObject *self, PyObject *args) _v = SWIG_CheckState(res); if (_v) { void *vptr = 0; - int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_FormFactorAnisoPyramid, 0); + int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_IAbstractParticle, 0); _v = SWIG_CheckState(res); if (_v) { - return _wrap_ISampleVisitor_visit__SWIG_19(self, args); + return _wrap_ISampleVisitor_visit__SWIG_9(self, args); } } } @@ -75909,45 +75909,6 @@ fail: } -SWIGINTERN PyObject *_wrap_IInterferenceFunction_evaluate(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - IInterferenceFunction *arg1 = (IInterferenceFunction *) 0 ; - kvector_t arg2 ; - void *argp1 = 0 ; - int res1 = 0 ; - void *argp2 ; - int res2 = 0 ; - PyObject * obj0 = 0 ; - PyObject * obj1 = 0 ; - double result; - - if (!PyArg_ParseTuple(args,(char *)"OO:IInterferenceFunction_evaluate",&obj0,&obj1)) SWIG_fail; - res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_IInterferenceFunction, 0 | 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IInterferenceFunction_evaluate" "', argument " "1"" of type '" "IInterferenceFunction const *""'"); - } - arg1 = reinterpret_cast< IInterferenceFunction * >(argp1); - { - res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_Geometry__BasicVector3DT_double_t, 0 | 0); - if (!SWIG_IsOK(res2)) { - SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "IInterferenceFunction_evaluate" "', argument " "2"" of type '" "kvector_t const""'"); - } - if (!argp2) { - SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "IInterferenceFunction_evaluate" "', argument " "2"" of type '" "kvector_t const""'"); - } else { - kvector_t * temp = reinterpret_cast< kvector_t * >(argp2); - arg2 = *temp; - if (SWIG_IsNewObj(res2)) delete temp; - } - } - result = (double)((IInterferenceFunction const *)arg1)->evaluate(arg2); - resultobj = SWIG_From_double(static_cast< double >(result)); - return resultobj; -fail: - return NULL; -} - - SWIGINTERN PyObject *_wrap_IInterferenceFunction_clone(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; IInterferenceFunction *arg1 = (IInterferenceFunction *) 0 ; @@ -76000,6 +75961,45 @@ fail: } +SWIGINTERN PyObject *_wrap_IInterferenceFunction_evaluate(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + IInterferenceFunction *arg1 = (IInterferenceFunction *) 0 ; + kvector_t arg2 ; + void *argp1 = 0 ; + int res1 = 0 ; + void *argp2 ; + int res2 = 0 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + double result; + + if (!PyArg_ParseTuple(args,(char *)"OO:IInterferenceFunction_evaluate",&obj0,&obj1)) SWIG_fail; + res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_IInterferenceFunction, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IInterferenceFunction_evaluate" "', argument " "1"" of type '" "IInterferenceFunction const *""'"); + } + arg1 = reinterpret_cast< IInterferenceFunction * >(argp1); + { + res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_Geometry__BasicVector3DT_double_t, 0 | 0); + if (!SWIG_IsOK(res2)) { + SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "IInterferenceFunction_evaluate" "', argument " "2"" of type '" "kvector_t const""'"); + } + if (!argp2) { + SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "IInterferenceFunction_evaluate" "', argument " "2"" of type '" "kvector_t const""'"); + } else { + kvector_t * temp = reinterpret_cast< kvector_t * >(argp2); + arg2 = *temp; + if (SWIG_IsNewObj(res2)) delete temp; + } + } + result = (double)((IInterferenceFunction const *)arg1)->evaluate(arg2); + resultobj = SWIG_From_double(static_cast< double >(result)); + return resultobj; +fail: + return NULL; +} + + SWIGINTERN PyObject *_wrap_IInterferenceFunction_getKappa(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; IInterferenceFunction *arg1 = (IInterferenceFunction *) 0 ; @@ -76407,215 +76407,6 @@ SWIGINTERN PyObject *ILayout_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObje return SWIG_Py_Void(); } -SWIGINTERN PyObject *_wrap_delete_IAbstractParticle(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - IAbstractParticle *arg1 = (IAbstractParticle *) 0 ; - void *argp1 = 0 ; - int res1 = 0 ; - PyObject * obj0 = 0 ; - - if (!PyArg_ParseTuple(args,(char *)"O:delete_IAbstractParticle",&obj0)) SWIG_fail; - res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_IAbstractParticle, SWIG_POINTER_DISOWN | 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_IAbstractParticle" "', argument " "1"" of type '" "IAbstractParticle *""'"); - } - arg1 = reinterpret_cast< IAbstractParticle * >(argp1); - delete arg1; - resultobj = SWIG_Py_Void(); - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *_wrap_IAbstractParticle_clone(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - IAbstractParticle *arg1 = (IAbstractParticle *) 0 ; - void *argp1 = 0 ; - int res1 = 0 ; - PyObject * obj0 = 0 ; - IAbstractParticle *result = 0 ; - - if (!PyArg_ParseTuple(args,(char *)"O:IAbstractParticle_clone",&obj0)) SWIG_fail; - res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_IAbstractParticle, 0 | 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IAbstractParticle_clone" "', argument " "1"" of type '" "IAbstractParticle const *""'"); - } - arg1 = reinterpret_cast< IAbstractParticle * >(argp1); - result = (IAbstractParticle *)((IAbstractParticle const *)arg1)->clone(); - resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_IAbstractParticle, 0 | 0 ); - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *_wrap_IAbstractParticle_cloneInvertB(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - IAbstractParticle *arg1 = (IAbstractParticle *) 0 ; - void *argp1 = 0 ; - int res1 = 0 ; - PyObject * obj0 = 0 ; - IAbstractParticle *result = 0 ; - - if (!PyArg_ParseTuple(args,(char *)"O:IAbstractParticle_cloneInvertB",&obj0)) SWIG_fail; - res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_IAbstractParticle, 0 | 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IAbstractParticle_cloneInvertB" "', argument " "1"" of type '" "IAbstractParticle const *""'"); - } - arg1 = reinterpret_cast< IAbstractParticle * >(argp1); - result = (IAbstractParticle *)((IAbstractParticle const *)arg1)->cloneInvertB(); - resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_IAbstractParticle, 0 | 0 ); - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *_wrap_IAbstractParticle_accept(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - IAbstractParticle *arg1 = (IAbstractParticle *) 0 ; - ISampleVisitor *arg2 = (ISampleVisitor *) 0 ; - void *argp1 = 0 ; - int res1 = 0 ; - void *argp2 = 0 ; - int res2 = 0 ; - PyObject * obj0 = 0 ; - PyObject * obj1 = 0 ; - - if (!PyArg_ParseTuple(args,(char *)"OO:IAbstractParticle_accept",&obj0,&obj1)) SWIG_fail; - res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_IAbstractParticle, 0 | 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IAbstractParticle_accept" "', argument " "1"" of type '" "IAbstractParticle const *""'"); - } - arg1 = reinterpret_cast< IAbstractParticle * >(argp1); - res2 = SWIG_ConvertPtr(obj1, &argp2,SWIGTYPE_p_ISampleVisitor, 0 | 0 ); - if (!SWIG_IsOK(res2)) { - SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "IAbstractParticle_accept" "', argument " "2"" of type '" "ISampleVisitor *""'"); - } - arg2 = reinterpret_cast< ISampleVisitor * >(argp2); - ((IAbstractParticle const *)arg1)->accept(arg2); - resultobj = SWIG_Py_Void(); - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *_wrap_IAbstractParticle_setAmbientMaterial(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - IAbstractParticle *arg1 = (IAbstractParticle *) 0 ; - IMaterial *arg2 = 0 ; - void *argp1 = 0 ; - int res1 = 0 ; - void *argp2 = 0 ; - int res2 = 0 ; - PyObject * obj0 = 0 ; - PyObject * obj1 = 0 ; - - if (!PyArg_ParseTuple(args,(char *)"OO:IAbstractParticle_setAmbientMaterial",&obj0,&obj1)) SWIG_fail; - res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_IAbstractParticle, 0 | 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IAbstractParticle_setAmbientMaterial" "', argument " "1"" of type '" "IAbstractParticle *""'"); - } - arg1 = reinterpret_cast< IAbstractParticle * >(argp1); - res2 = SWIG_ConvertPtr(obj1, &argp2, SWIGTYPE_p_IMaterial, 0 | 0); - if (!SWIG_IsOK(res2)) { - SWIG_exception_fail(SWIG_ArgError(res2), "in method '" "IAbstractParticle_setAmbientMaterial" "', argument " "2"" of type '" "IMaterial const &""'"); - } - if (!argp2) { - SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "IAbstractParticle_setAmbientMaterial" "', argument " "2"" of type '" "IMaterial const &""'"); - } - arg2 = reinterpret_cast< IMaterial * >(argp2); - (arg1)->setAmbientMaterial((IMaterial const &)*arg2); - resultobj = SWIG_Py_Void(); - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *_wrap_IAbstractParticle_getAbundance(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - IAbstractParticle *arg1 = (IAbstractParticle *) 0 ; - void *argp1 = 0 ; - int res1 = 0 ; - PyObject * obj0 = 0 ; - double result; - - if (!PyArg_ParseTuple(args,(char *)"O:IAbstractParticle_getAbundance",&obj0)) SWIG_fail; - res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_IAbstractParticle, 0 | 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IAbstractParticle_getAbundance" "', argument " "1"" of type '" "IAbstractParticle const *""'"); - } - arg1 = reinterpret_cast< IAbstractParticle * >(argp1); - result = (double)((IAbstractParticle const *)arg1)->getAbundance(); - resultobj = SWIG_From_double(static_cast< double >(result)); - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *_wrap_IAbstractParticle_setAbundance(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - IAbstractParticle *arg1 = (IAbstractParticle *) 0 ; - double arg2 ; - void *argp1 = 0 ; - int res1 = 0 ; - double val2 ; - int ecode2 = 0 ; - PyObject * obj0 = 0 ; - PyObject * obj1 = 0 ; - - if (!PyArg_ParseTuple(args,(char *)"OO:IAbstractParticle_setAbundance",&obj0,&obj1)) SWIG_fail; - res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_IAbstractParticle, 0 | 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IAbstractParticle_setAbundance" "', argument " "1"" of type '" "IAbstractParticle *""'"); - } - arg1 = reinterpret_cast< IAbstractParticle * >(argp1); - ecode2 = SWIG_AsVal_double(obj1, &val2); - if (!SWIG_IsOK(ecode2)) { - SWIG_exception_fail(SWIG_ArgError(ecode2), "in method '" "IAbstractParticle_setAbundance" "', argument " "2"" of type '" "double""'"); - } - arg2 = static_cast< double >(val2); - (arg1)->setAbundance(arg2); - resultobj = SWIG_Py_Void(); - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *_wrap_IAbstractParticle_getAmbientMaterial(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - IAbstractParticle *arg1 = (IAbstractParticle *) 0 ; - void *argp1 = 0 ; - int res1 = 0 ; - PyObject * obj0 = 0 ; - IMaterial *result = 0 ; - - if (!PyArg_ParseTuple(args,(char *)"O:IAbstractParticle_getAmbientMaterial",&obj0)) SWIG_fail; - res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_IAbstractParticle, 0 | 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "IAbstractParticle_getAmbientMaterial" "', argument " "1"" of type '" "IAbstractParticle const *""'"); - } - arg1 = reinterpret_cast< IAbstractParticle * >(argp1); - result = (IMaterial *)((IAbstractParticle const *)arg1)->getAmbientMaterial(); - resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_IMaterial, 0 | 0 ); - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *IAbstractParticle_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *obj; - if (!PyArg_ParseTuple(args,(char*)"O:swigregister", &obj)) return NULL; - SWIG_TypeNewClientData(SWIGTYPE_p_IAbstractParticle, SWIG_NewClientData(obj)); - return SWIG_Py_Void(); -} - SWIGINTERN PyObject *_wrap_delete_IParticle(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; IParticle *arg1 = (IParticle *) 0 ; @@ -103408,7 +103199,7 @@ static PyMethodDef SwigMethods[] = { "visit(Layer arg2)\n" "visit(LayerInterface const * arg2)\n" "visit(MultiLayer arg2)\n" - "visit(IAbstractParticle arg2)\n" + "visit(IAbstractParticle const * arg2)\n" "visit(IParticle arg2)\n" "visit(Particle arg2)\n" "visit(ParticleDistribution arg2)\n" @@ -108852,15 +108643,7 @@ static PyMethodDef SwigMethods[] = { { (char *)"delete_IInterferenceFunction", _wrap_delete_IInterferenceFunction, METH_VARARGS, (char *)"\n" "delete_IInterferenceFunction(IInterferenceFunction self)\n" "\n" - "IInterferenceFunction::~IInterferenceFunction()\n" - "\n" - ""}, - { (char *)"IInterferenceFunction_evaluate", _wrap_IInterferenceFunction_evaluate, METH_VARARGS, (char *)"\n" - "IInterferenceFunction_evaluate(IInterferenceFunction self, kvector_t q) -> double\n" - "\n" - "virtual double IInterferenceFunction::evaluate(const kvector_t q) const =0\n" - "\n" - "Evaluates the interference function for a given wavevector transfer (only the real x and y components are relevant) \n" + "virtual IInterferenceFunction::~IInterferenceFunction()\n" "\n" ""}, { (char *)"IInterferenceFunction_clone", _wrap_IInterferenceFunction_clone, METH_VARARGS, (char *)"\n" @@ -108874,9 +108657,17 @@ static PyMethodDef SwigMethods[] = { { (char *)"IInterferenceFunction_accept", _wrap_IInterferenceFunction_accept, METH_VARARGS, (char *)"\n" "IInterferenceFunction_accept(IInterferenceFunction self, ISampleVisitor visitor)\n" "\n" - "void IInterferenceFunction::accept(ISampleVisitor *visitor) const\n" + "virtual void IInterferenceFunction::accept(ISampleVisitor *visitor) const =0\n" "\n" - "Calls ISampleVisitor::visit. \n" + "Calls the ISampleVisitor's visit method. \n" + "\n" + ""}, + { (char *)"IInterferenceFunction_evaluate", _wrap_IInterferenceFunction_evaluate, METH_VARARGS, (char *)"\n" + "IInterferenceFunction_evaluate(IInterferenceFunction self, kvector_t q) -> double\n" + "\n" + "virtual double IInterferenceFunction::evaluate(const kvector_t q) const =0\n" + "\n" + "Evaluates the interference function for a given wavevector transfer (only the real x and y components are relevant) \n" "\n" ""}, { (char *)"IInterferenceFunction_getKappa", _wrap_IInterferenceFunction_getKappa, METH_VARARGS, (char *)"\n" @@ -108935,7 +108726,7 @@ static PyMethodDef SwigMethods[] = { "\n" ""}, { (char *)"ILayout_getParticle", _wrap_ILayout_getParticle, METH_VARARGS, (char *)"\n" - "ILayout_getParticle(ILayout self, size_t index) -> IAbstractParticle\n" + "ILayout_getParticle(ILayout self, size_t index) -> IAbstractParticle const *\n" "\n" "virtual const IAbstractParticle* ILayout::getParticle(size_t index) const =0\n" "\n" @@ -109007,69 +108798,6 @@ static PyMethodDef SwigMethods[] = { "\n" ""}, { (char *)"ILayout_swigregister", ILayout_swigregister, METH_VARARGS, NULL}, - { (char *)"delete_IAbstractParticle", _wrap_delete_IAbstractParticle, METH_VARARGS, (char *)"\n" - "delete_IAbstractParticle(IAbstractParticle self)\n" - "\n" - "virtual IAbstractParticle::~IAbstractParticle()\n" - "\n" - ""}, - { (char *)"IAbstractParticle_clone", _wrap_IAbstractParticle_clone, METH_VARARGS, (char *)"\n" - "IAbstractParticle_clone(IAbstractParticle self) -> IAbstractParticle\n" - "\n" - "virtual IAbstractParticle* IAbstractParticle::clone() const =0\n" - "\n" - "Returns a clone of this ISample object. \n" - "\n" - ""}, - { (char *)"IAbstractParticle_cloneInvertB", _wrap_IAbstractParticle_cloneInvertB, METH_VARARGS, (char *)"\n" - "IAbstractParticle_cloneInvertB(IAbstractParticle self) -> IAbstractParticle\n" - "\n" - "virtual IAbstractParticle* IAbstractParticle::cloneInvertB() const =0\n" - "\n" - "Returns a clone with inverted magnetic fields. \n" - "\n" - ""}, - { (char *)"IAbstractParticle_accept", _wrap_IAbstractParticle_accept, METH_VARARGS, (char *)"\n" - "IAbstractParticle_accept(IAbstractParticle self, ISampleVisitor visitor)\n" - "\n" - "virtual void IAbstractParticle::accept(ISampleVisitor *visitor) const\n" - "\n" - "calls the ISampleVisitor's visit method \n" - "\n" - ""}, - { (char *)"IAbstractParticle_setAmbientMaterial", _wrap_IAbstractParticle_setAmbientMaterial, METH_VARARGS, (char *)"\n" - "IAbstractParticle_setAmbientMaterial(IAbstractParticle self, IMaterial arg3)\n" - "\n" - "virtual void IAbstractParticle::setAmbientMaterial(const IMaterial &)\n" - "\n" - "Sets the refractive index of the ambient material (which influences its scattering power) \n" - "\n" - ""}, - { (char *)"IAbstractParticle_getAbundance", _wrap_IAbstractParticle_getAbundance, METH_VARARGS, (char *)"\n" - "IAbstractParticle_getAbundance(IAbstractParticle self) -> double\n" - "\n" - "double IAbstractParticle::getAbundance() const\n" - "\n" - "Returns abundance. \n" - "\n" - ""}, - { (char *)"IAbstractParticle_setAbundance", _wrap_IAbstractParticle_setAbundance, METH_VARARGS, (char *)"\n" - "IAbstractParticle_setAbundance(IAbstractParticle self, double abundance)\n" - "\n" - "void IAbstractParticle::setAbundance(double abundance)\n" - "\n" - "Sets abundance. \n" - "\n" - ""}, - { (char *)"IAbstractParticle_getAmbientMaterial", _wrap_IAbstractParticle_getAmbientMaterial, METH_VARARGS, (char *)"\n" - "IAbstractParticle_getAmbientMaterial(IAbstractParticle self) -> IMaterial\n" - "\n" - "virtual const IMaterial* IAbstractParticle::getAmbientMaterial() const =0\n" - "\n" - "Returns particle's material. \n" - "\n" - ""}, - { (char *)"IAbstractParticle_swigregister", IAbstractParticle_swigregister, METH_VARARGS, NULL}, { (char *)"delete_IParticle", _wrap_delete_IParticle, METH_VARARGS, (char *)"\n" "delete_IParticle(IParticle self)\n" "\n" @@ -109095,7 +108823,7 @@ static PyMethodDef SwigMethods[] = { { (char *)"IParticle_accept", _wrap_IParticle_accept, METH_VARARGS, (char *)"\n" "IParticle_accept(IParticle self, ISampleVisitor visitor)\n" "\n" - "virtual void IParticle::accept(class ISampleVisitor *visitor) const\n" + "virtual void IParticle::accept(ISampleVisitor *visitor) const\n" "\n" "calls the ISampleVisitor's visit method \n" "\n" @@ -109219,7 +108947,7 @@ static PyMethodDef SwigMethods[] = { { (char *)"IRotation_accept", _wrap_IRotation_accept, METH_VARARGS, (char *)"\n" "IRotation_accept(IRotation self, ISampleVisitor visitor)\n" "\n" - "void IRotation::accept(class ISampleVisitor *visitor) const\n" + "void IRotation::accept(ISampleVisitor *visitor) const\n" "\n" "Calls the ISampleVisitor's visit method. \n" "\n" @@ -109282,7 +109010,7 @@ static PyMethodDef SwigMethods[] = { { (char *)"RotationX_accept", _wrap_RotationX_accept, METH_VARARGS, (char *)"\n" "RotationX_accept(RotationX self, ISampleVisitor visitor)\n" "\n" - "void RotationX::accept(class ISampleVisitor *visitor) const\n" + "void RotationX::accept(ISampleVisitor *visitor) const\n" "\n" "Calls the ISampleVisitor's visit method. \n" "\n" @@ -109336,7 +109064,7 @@ static PyMethodDef SwigMethods[] = { { (char *)"RotationY_accept", _wrap_RotationY_accept, METH_VARARGS, (char *)"\n" "RotationY_accept(RotationY self, ISampleVisitor visitor)\n" "\n" - "void RotationY::accept(class ISampleVisitor *visitor) const\n" + "void RotationY::accept(ISampleVisitor *visitor) const\n" "\n" "Calls the ISampleVisitor's visit method. \n" "\n" @@ -109391,7 +109119,7 @@ static PyMethodDef SwigMethods[] = { { (char *)"RotationZ_accept", _wrap_RotationZ_accept, METH_VARARGS, (char *)"\n" "RotationZ_accept(RotationZ self, ISampleVisitor visitor)\n" "\n" - "void RotationZ::accept(class ISampleVisitor *visitor) const\n" + "void RotationZ::accept(ISampleVisitor *visitor) const\n" "\n" "Calls the ISampleVisitor's visit method. \n" "\n" @@ -109445,7 +109173,7 @@ static PyMethodDef SwigMethods[] = { { (char *)"RotationEuler_accept", _wrap_RotationEuler_accept, METH_VARARGS, (char *)"\n" "RotationEuler_accept(RotationEuler self, ISampleVisitor visitor)\n" "\n" - "void RotationEuler::accept(class ISampleVisitor *visitor) const\n" + "void RotationEuler::accept(ISampleVisitor *visitor) const\n" "\n" "Calls the ISampleVisitor's visit method. \n" "\n" @@ -109753,7 +109481,7 @@ static PyMethodDef SwigMethods[] = { "\n" "void InterferenceFunction1DLattice::accept(ISampleVisitor *visitor) const final\n" "\n" - "Calls ISampleVisitor::visit. \n" + "Calls the ISampleVisitor's visit method. \n" "\n" ""}, { (char *)"InterferenceFunction1DLattice_setDecayFunction", _wrap_InterferenceFunction1DLattice_setDecayFunction, METH_VARARGS, (char *)"\n" @@ -109803,7 +109531,7 @@ static PyMethodDef SwigMethods[] = { "\n" "void InterferenceFunctionRadialParaCrystal::accept(ISampleVisitor *visitor) const final\n" "\n" - "Calls ISampleVisitor::visit. \n" + "Calls the ISampleVisitor's visit method. \n" "\n" ""}, { (char *)"InterferenceFunctionRadialParaCrystal_to_str", _wrap_InterferenceFunctionRadialParaCrystal_to_str, METH_VARARGS, (char *)"\n" @@ -109922,7 +109650,7 @@ static PyMethodDef SwigMethods[] = { "\n" "void InterferenceFunction2DLattice::accept(ISampleVisitor *visitor) const final\n" "\n" - "Calls ISampleVisitor::visit. \n" + "Calls the ISampleVisitor's visit method. \n" "\n" ""}, { (char *)"InterferenceFunction2DLattice_createSquare", _wrap_InterferenceFunction2DLattice_createSquare, METH_VARARGS, (char *)"\n" @@ -110013,7 +109741,7 @@ static PyMethodDef SwigMethods[] = { "\n" "void InterferenceFunction2DParaCrystal::accept(ISampleVisitor *visitor) const final\n" "\n" - "Calls ISampleVisitor::visit. \n" + "Calls the ISampleVisitor's visit method. \n" "\n" ""}, { (char *)"InterferenceFunction2DParaCrystal_to_str", _wrap_InterferenceFunction2DParaCrystal_to_str, METH_VARARGS, (char *)"\n" @@ -110143,7 +109871,7 @@ static PyMethodDef SwigMethods[] = { "\n" "void InterferenceFunctionNone::accept(ISampleVisitor *visitor) const final\n" "\n" - "Calls ISampleVisitor::visit. \n" + "Calls the ISampleVisitor's visit method. \n" "\n" ""}, { (char *)"InterferenceFunctionNone_evaluate", _wrap_InterferenceFunctionNone_evaluate, METH_VARARGS, (char *)"\n" @@ -110464,7 +110192,7 @@ static PyMethodDef SwigMethods[] = { { (char *)"delete_Layer", _wrap_delete_Layer, METH_VARARGS, (char *)"\n" "delete_Layer(Layer self)\n" "\n" - "Layer::~Layer()\n" + "Layer::~Layer() final\n" "\n" ""}, { (char *)"Layer_clone", _wrap_Layer_clone, METH_VARARGS, (char *)"\n" @@ -110478,7 +110206,7 @@ static PyMethodDef SwigMethods[] = { { (char *)"Layer_cloneInvertB", _wrap_Layer_cloneInvertB, METH_VARARGS, (char *)"\n" "Layer_cloneInvertB(Layer self) -> Layer\n" "\n" - "Layer * Layer::cloneInvertB() const\n" + "Layer * Layer::cloneInvertB() const final\n" "\n" "Returns a clone with inverted magnetic fields. \n" "\n" @@ -110486,7 +110214,7 @@ static PyMethodDef SwigMethods[] = { { (char *)"Layer_accept", _wrap_Layer_accept, METH_VARARGS, (char *)"\n" "Layer_accept(Layer self, ISampleVisitor visitor)\n" "\n" - "void Layer::accept(class ISampleVisitor *visitor) const final\n" + "void Layer::accept(ISampleVisitor *visitor) const final\n" "\n" "Calls the ISampleVisitor's visit method. \n" "\n" @@ -110495,9 +110223,9 @@ static PyMethodDef SwigMethods[] = { "to_str(int indent=0) -> std::string\n" "Layer_to_str(Layer self) -> std::string\n" "\n" - "std::string Layer::to_str(int indent=0) const\n" + "std::string Layer::to_str(int indent=0) const final\n" "\n" - "Returns textual representation of *this and its descendants. \n" + "Returns textual representation of this and its descendants. \n" "\n" ""}, { (char *)"Layer_setThickness", _wrap_Layer_setThickness, METH_VARARGS, (char *)"\n" @@ -110511,9 +110239,7 @@ static PyMethodDef SwigMethods[] = { { (char *)"Layer_getThickness", _wrap_Layer_getThickness, METH_VARARGS, (char *)"\n" "Layer_getThickness(Layer self) -> double\n" "\n" - "virtual double Layer::getThickness() const\n" - "\n" - "Returns layer thickness in nanometers. \n" + "double Layer::getThickness() const \n" "\n" ""}, { (char *)"Layer_setMaterial", _wrap_Layer_setMaterial, METH_VARARGS, (char *)"\n" @@ -110529,23 +110255,19 @@ static PyMethodDef SwigMethods[] = { "\n" "void Layer::setMaterialAndThickness(const IMaterial &material, double thickness)\n" "\n" - "Sets material and thickness. \n" - "\n" ""}, { (char *)"Layer_getMaterial", _wrap_Layer_getMaterial, METH_VARARGS, (char *)"\n" "Layer_getMaterial(Layer self) -> IMaterial\n" "\n" - "const IMaterial* Layer::getMaterial() const final\n" + "const IMaterial* Layer::getMaterial() const\n" "\n" - "Returns layer's material. \n" + "Returns nullptr, unless overwritten to return a specific material. \n" "\n" ""}, { (char *)"Layer_getRefractiveIndex", _wrap_Layer_getRefractiveIndex, METH_VARARGS, (char *)"\n" "Layer_getRefractiveIndex(Layer self) -> complex_t\n" "\n" - "complex_t Layer::getRefractiveIndex() const\n" - "\n" - "Returns refractive index of the layer's material. \n" + "complex_t Layer::getRefractiveIndex() const \n" "\n" ""}, { (char *)"Layer_getRefractiveIndex2", _wrap_Layer_getRefractiveIndex2, METH_VARARGS, (char *)"\n" @@ -110553,7 +110275,7 @@ static PyMethodDef SwigMethods[] = { "\n" "complex_t Layer::getRefractiveIndex2() const\n" "\n" - "Returns squared refractive index of the layer's material. \n" + "squared refractive index \n" "\n" ""}, { (char *)"Layer_addLayout", _wrap_Layer_addLayout, METH_VARARGS, (char *)"\n" @@ -110561,29 +110283,23 @@ static PyMethodDef SwigMethods[] = { "\n" "void Layer::addLayout(const ILayout &decoration)\n" "\n" - "sets particle layout \n" - "\n" ""}, { (char *)"Layer_getNumberOfLayouts", _wrap_Layer_getNumberOfLayouts, METH_VARARGS, (char *)"\n" "Layer_getNumberOfLayouts(Layer self) -> size_t\n" "\n" - "size_t Layer::getNumberOfLayouts() const\n" - "\n" - "gets number of layouts present \n" + "size_t Layer::getNumberOfLayouts() const \n" "\n" ""}, { (char *)"Layer_getLayout", _wrap_Layer_getLayout, METH_VARARGS, (char *)"\n" "Layer_getLayout(Layer self, size_t i) -> ILayout\n" "\n" - "const ILayout * Layer::getLayout(size_t i) const\n" - "\n" - "returns particle decoration \n" + "const ILayout * Layer::getLayout(size_t i) const \n" "\n" ""}, { (char *)"Layer_hasDWBASimulation", _wrap_Layer_hasDWBASimulation, METH_VARARGS, (char *)"\n" "Layer_hasDWBASimulation(Layer self) -> bool\n" "\n" - "virtual bool Layer::hasDWBASimulation() const\n" + "bool Layer::hasDWBASimulation() const\n" "\n" "Returns true if decoration is present. \n" "\n" @@ -110863,7 +110579,7 @@ static PyMethodDef SwigMethods[] = { "\n" "const IMaterial * MesoCrystal::getAmbientMaterial() const\n" "\n" - "Returns particle's material. \n" + "Returns nullptr, unless overwritten to return a specific material. \n" "\n" ""}, { (char *)"MesoCrystal_createTransformedFormFactor", _wrap_MesoCrystal_createTransformedFormFactor, METH_VARARGS, (char *)"\n" @@ -111948,7 +111664,7 @@ static PyMethodDef SwigMethods[] = { "\n" "const IMaterial* Particle::getAmbientMaterial() const final\n" "\n" - "Returns particle's material. \n" + "Returns nullptr, unless overwritten to return a specific material. \n" "\n" ""}, { (char *)"Particle_createTransformedFormFactor", _wrap_Particle_createTransformedFormFactor, METH_VARARGS, (char *)"\n" @@ -112058,7 +111774,7 @@ static PyMethodDef SwigMethods[] = { "\n" "const IMaterial * ParticleComposition::getAmbientMaterial() const\n" "\n" - "Returns particle's material. \n" + "Returns nullptr, unless overwritten to return a specific material. \n" "\n" ""}, { (char *)"ParticleComposition_createTransformedFormFactor", _wrap_ParticleComposition_createTransformedFormFactor, METH_VARARGS, (char *)"\n" @@ -112142,7 +111858,7 @@ static PyMethodDef SwigMethods[] = { "\n" "const IMaterial * ParticleCoreShell::getAmbientMaterial() const\n" "\n" - "Returns particle's material. \n" + "Returns nullptr, unless overwritten to return a specific material. \n" "\n" ""}, { (char *)"ParticleCoreShell_createTransformedFormFactor", _wrap_ParticleCoreShell_createTransformedFormFactor, METH_VARARGS, (char *)"\n" @@ -112261,8 +111977,8 @@ static PyMethodDef SwigMethods[] = { { (char *)"ParticleDistribution_swigregister", ParticleDistribution_swigregister, METH_VARARGS, NULL}, { (char *)"new_ParticleLayout", _wrap_new_ParticleLayout, METH_VARARGS, (char *)"\n" "ParticleLayout()\n" - "ParticleLayout(IAbstractParticle particle)\n" - "new_ParticleLayout(IAbstractParticle particle, double abundance) -> ParticleLayout\n" + "ParticleLayout(IAbstractParticle const & particle)\n" + "new_ParticleLayout(IAbstractParticle const & particle, double abundance) -> ParticleLayout\n" "\n" "ParticleLayout::ParticleLayout(const IAbstractParticle &particle, double abundance)\n" "\n" @@ -112298,8 +112014,8 @@ static PyMethodDef SwigMethods[] = { "\n" ""}, { (char *)"ParticleLayout_addParticle", _wrap_ParticleLayout_addParticle, METH_VARARGS, (char *)"\n" - "addParticle(IAbstractParticle particle)\n" - "addParticle(IAbstractParticle particle, double abundance)\n" + "addParticle(IAbstractParticle const & particle)\n" + "addParticle(IAbstractParticle const & particle, double abundance)\n" "addParticle(IParticle particle, double abundance, kvector_t position)\n" "ParticleLayout_addParticle(ParticleLayout self, IParticle particle, double abundance, kvector_t position, IRotation rotation)\n" "\n" @@ -112332,7 +112048,7 @@ static PyMethodDef SwigMethods[] = { "\n" ""}, { (char *)"ParticleLayout_getParticle", _wrap_ParticleLayout_getParticle, METH_VARARGS, (char *)"\n" - "ParticleLayout_getParticle(ParticleLayout self, size_t index) -> IAbstractParticle\n" + "ParticleLayout_getParticle(ParticleLayout self, size_t index) -> IAbstractParticle const *\n" "\n" "const IAbstractParticle * ParticleLayout::getParticle(size_t index) const final\n" "\n" @@ -113287,9 +113003,6 @@ static void *_p_FormFactorSphereGaussianRadiusTo_p_ICloneable(void *x, int *SWIG static void *_p_MultiLayerTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ICloneable *) (ISample *)(ICompositeSample *) ((MultiLayer *) x)); } -static void *_p_ParticleDistributionTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((ICloneable *) (ISample *)(ICompositeSample *)(IAbstractParticle *) ((ParticleDistribution *) x)); -} static void *_p_InterferenceFunctionNoneTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ICloneable *) (ISample *)(IInterferenceFunction *) ((InterferenceFunctionNone *) x)); } @@ -113299,15 +113012,15 @@ static void *_p_Geometry__PolygonTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(ne static void *_p_Geometry__EllipseTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ICloneable *) (Geometry::IShape2D *) ((Geometry::Ellipse *) x)); } +static void *_p_ParticleLayoutTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { + return (void *)((ICloneable *) (ISample *)(ICompositeSample *)(ILayout *) ((ParticleLayout *) x)); +} static void *_p_ILayoutTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ICloneable *) (ISample *)(ICompositeSample *) ((ILayout *) x)); } static void *_p_FormFactorHemiEllipsoidTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ICloneable *) (ISample *)(IFormFactor *)(IFormFactorBorn *) ((FormFactorHemiEllipsoid *) x)); } -static void *_p_ParticleLayoutTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((ICloneable *) (ISample *)(ICompositeSample *)(ILayout *) ((ParticleLayout *) x)); -} static void *_p_ChiSquaredModuleTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ICloneable *) (IChiSquaredModule *) ((ChiSquaredModule *) x)); } @@ -113338,21 +113051,18 @@ static void *_p_FormFactorIcosahedronTo_p_ICloneable(void *x, int *SWIGUNUSEDPAR static void *_p_FormFactorPrism6To_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ICloneable *) (ISample *)(IFormFactor *)(IFormFactorBorn *)(FormFactorPolygonalPrism *) ((FormFactorPrism6 *) x)); } +static void *_p_OffSpecSimulationTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { + return (void *)((ICloneable *) (Simulation *) ((OffSpecSimulation *) x)); +} static void *_p_GISASSimulationTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ICloneable *) (Simulation *) ((GISASSimulation *) x)); } static void *_p_SimulationTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ICloneable *) ((Simulation *) x)); } -static void *_p_OffSpecSimulationTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((ICloneable *) (Simulation *) ((OffSpecSimulation *) x)); -} static void *_p_SpecularSimulationTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ICloneable *) ((SpecularSimulation *) x)); } -static void *_p_ParticleCoreShellTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((ICloneable *) (ISample *)(ICompositeSample *)(IAbstractParticle *)(IParticle *) ((ParticleCoreShell *) x)); -} static void *_p_FormFactorTruncatedSphereTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ICloneable *) (ISample *)(IFormFactor *)(IFormFactorBorn *) ((FormFactorTruncatedSphere *) x)); } @@ -113422,15 +113132,6 @@ static void *_p_IFormFactorBornTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newm static void *_p_IClusteredParticlesTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ICloneable *) (ISample *)(ICompositeSample *) ((IClusteredParticles *) x)); } -static void *_p_IParticleTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((ICloneable *) (ISample *)(ICompositeSample *)(IAbstractParticle *) ((IParticle *) x)); -} -static void *_p_IAbstractParticleTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((ICloneable *) (ISample *)(ICompositeSample *) ((IAbstractParticle *) x)); -} -static void *_p_ParticleTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((ICloneable *) (ISample *)(ICompositeSample *)(IAbstractParticle *)(IParticle *) ((Particle *) x)); -} static void *_p_FormFactorTrivialTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ICloneable *) (ISample *)(IFormFactor *)(IFormFactorBorn *) ((FormFactorTrivial *) x)); } @@ -113461,9 +113162,6 @@ static void *_p_FormFactorCylinderTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(n static void *_p_FormFactorEllipsoidalCylinderTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ICloneable *) (ISample *)(IFormFactor *)(IFormFactorBorn *) ((FormFactorEllipsoidalCylinder *) x)); } -static void *_p_ParticleCompositionTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((ICloneable *) (ISample *)(ICompositeSample *)(IAbstractParticle *)(IParticle *) ((ParticleComposition *) x)); -} static void *_p_FormFactorSphereUniformRadiusTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ICloneable *) (ISample *)(IFormFactor *)(IFormFactorBorn *) ((FormFactorSphereUniformRadius *) x)); } @@ -113488,9 +113186,6 @@ static void *_p_LayerRoughnessTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newme static void *_p_IRoughnessTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ICloneable *) (ISample *) ((IRoughness *) x)); } -static void *_p_MesoCrystalTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((ICloneable *) (ISample *)(ICompositeSample *)(IAbstractParticle *)(IParticle *) ((MesoCrystal *) x)); -} static void *_p_InterferenceFunction2DParaCrystalTo_p_ICloneable(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ICloneable *) (ISample *)(IInterferenceFunction *) ((InterferenceFunction2DParaCrystal *) x)); } @@ -113560,9 +113255,6 @@ static void *_p_MultiLayerTo_p_INamed(void *x, int *SWIGUNUSEDPARM(newmemory)) { static void *_p_ParameterDistributionTo_p_INamed(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((INamed *) (IParameterized *) ((ParameterDistribution *) x)); } -static void *_p_ParticleDistributionTo_p_INamed(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((INamed *) (IParameterized *)(ISample *)(ICompositeSample *)(IAbstractParticle *) ((ParticleDistribution *) x)); -} static void *_p_FTDistribution1DGaussTo_p_INamed(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((INamed *) (IParameterized *)(IFTDistribution1D *) ((FTDistribution1DGauss *) x)); } @@ -113647,9 +113339,6 @@ static void *_p_SpecularSimulationTo_p_INamed(void *x, int *SWIGUNUSEDPARM(newme static void *_p_FTDistribution2DConeTo_p_INamed(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((INamed *) (IParameterized *)(IFTDistribution2D *) ((FTDistribution2DCone *) x)); } -static void *_p_ParticleCoreShellTo_p_INamed(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((INamed *) (IParameterized *)(ISample *)(ICompositeSample *)(IAbstractParticle *)(IParticle *) ((ParticleCoreShell *) x)); -} static void *_p_FormFactorFullSphereTo_p_INamed(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((INamed *) (IParameterized *)(ISample *)(IFormFactor *)(IFormFactorBorn *) ((FormFactorFullSphere *) x)); } @@ -113749,15 +113438,6 @@ static void *_p_IClusteredParticlesTo_p_INamed(void *x, int *SWIGUNUSEDPARM(newm static void *_p_IMultiLayerBuilderTo_p_INamed(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((INamed *) (IParameterized *) ((IMultiLayerBuilder *) x)); } -static void *_p_IAbstractParticleTo_p_INamed(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((INamed *) (IParameterized *)(ISample *)(ICompositeSample *) ((IAbstractParticle *) x)); -} -static void *_p_IParticleTo_p_INamed(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((INamed *) (IParameterized *)(ISample *)(ICompositeSample *)(IAbstractParticle *) ((IParticle *) x)); -} -static void *_p_ParticleTo_p_INamed(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((INamed *) (IParameterized *)(ISample *)(ICompositeSample *)(IAbstractParticle *)(IParticle *) ((Particle *) x)); -} static void *_p_DistributionGateTo_p_INamed(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((INamed *) (IParameterized *)(IDistribution1D *) ((DistributionGate *) x)); } @@ -113818,9 +113498,6 @@ static void *_p_ResolutionFunction2DGaussianTo_p_INamed(void *x, int *SWIGUNUSED static void *_p_BeamTo_p_INamed(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((INamed *) (IParameterized *) ((Beam *) x)); } -static void *_p_ParticleCompositionTo_p_INamed(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((INamed *) (IParameterized *)(ISample *)(ICompositeSample *)(IAbstractParticle *)(IParticle *) ((ParticleComposition *) x)); -} static void *_p_FormFactorSphereUniformRadiusTo_p_INamed(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((INamed *) (IParameterized *)(ISample *)(IFormFactor *)(IFormFactorBorn *) ((FormFactorSphereUniformRadius *) x)); } @@ -113893,9 +113570,6 @@ static void *_p_InterferenceFunctionRadialParaCrystalTo_p_INamed(void *x, int *S static void *_p_InterferenceFunction2DParaCrystalTo_p_INamed(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((INamed *) (IParameterized *)(ISample *)(IInterferenceFunction *) ((InterferenceFunction2DParaCrystal *) x)); } -static void *_p_MesoCrystalTo_p_INamed(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((INamed *) (IParameterized *)(ISample *)(ICompositeSample *)(IAbstractParticle *)(IParticle *) ((MesoCrystal *) x)); -} static void *_p_IFTDistribution2DTo_p_INamed(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((INamed *) (IParameterized *) ((IFTDistribution2D *) x)); } @@ -113941,21 +113615,6 @@ static void *_p_FTDecayFunction1DTriangleTo_p_INamed(void *x, int *SWIGUNUSEDPAR static void *_p_RotationEulerTo_p_INamed(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((INamed *) (IParameterized *)(ISample *)(IRotation *) ((RotationEuler *) x)); } -static void *_p_InterferenceFunction1DLatticeTo_p_IInterferenceFunction(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((IInterferenceFunction *) ((InterferenceFunction1DLattice *) x)); -} -static void *_p_InterferenceFunction2DLatticeTo_p_IInterferenceFunction(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((IInterferenceFunction *) ((InterferenceFunction2DLattice *) x)); -} -static void *_p_InterferenceFunctionNoneTo_p_IInterferenceFunction(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((IInterferenceFunction *) ((InterferenceFunctionNone *) x)); -} -static void *_p_InterferenceFunctionRadialParaCrystalTo_p_IInterferenceFunction(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((IInterferenceFunction *) ((InterferenceFunctionRadialParaCrystal *) x)); -} -static void *_p_InterferenceFunction2DParaCrystalTo_p_IInterferenceFunction(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((IInterferenceFunction *) ((InterferenceFunction2DParaCrystal *) x)); -} static void *_p_SquaredFunctionGaussianErrorTo_p_ISquaredFunction(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ISquaredFunction *) ((SquaredFunctionGaussianError *) x)); } @@ -113977,6 +113636,21 @@ static void *_p_IntensityFunctionSqrtTo_p_IIntensityFunction(void *x, int *SWIGU static void *_p_IntensityFunctionLogTo_p_IIntensityFunction(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((IIntensityFunction *) ((IntensityFunctionLog *) x)); } +static void *_p_InterferenceFunction1DLatticeTo_p_IInterferenceFunction(void *x, int *SWIGUNUSEDPARM(newmemory)) { + return (void *)((IInterferenceFunction *) ((InterferenceFunction1DLattice *) x)); +} +static void *_p_InterferenceFunction2DLatticeTo_p_IInterferenceFunction(void *x, int *SWIGUNUSEDPARM(newmemory)) { + return (void *)((IInterferenceFunction *) ((InterferenceFunction2DLattice *) x)); +} +static void *_p_InterferenceFunctionNoneTo_p_IInterferenceFunction(void *x, int *SWIGUNUSEDPARM(newmemory)) { + return (void *)((IInterferenceFunction *) ((InterferenceFunctionNone *) x)); +} +static void *_p_InterferenceFunctionRadialParaCrystalTo_p_IInterferenceFunction(void *x, int *SWIGUNUSEDPARM(newmemory)) { + return (void *)((IInterferenceFunction *) ((InterferenceFunctionRadialParaCrystal *) x)); +} +static void *_p_InterferenceFunction2DParaCrystalTo_p_IInterferenceFunction(void *x, int *SWIGUNUSEDPARM(newmemory)) { + return (void *)((IInterferenceFunction *) ((InterferenceFunction2DParaCrystal *) x)); +} static void *_p_IntensityScaleAndShiftNormalizerTo_p_IntensityNormalizer(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((IntensityNormalizer *) ((IntensityScaleAndShiftNormalizer *) x)); } @@ -114001,9 +113675,6 @@ static void *_p_MultiLayerTo_p_IParameterized(void *x, int *SWIGUNUSEDPARM(newme static void *_p_ParameterDistributionTo_p_IParameterized(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((IParameterized *) ((ParameterDistribution *) x)); } -static void *_p_ParticleDistributionTo_p_IParameterized(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((IParameterized *) (ISample *)(ICompositeSample *)(IAbstractParticle *) ((ParticleDistribution *) x)); -} static void *_p_FTDecayFunction1DGaussTo_p_IParameterized(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((IParameterized *) (IFTDecayFunction1D *) ((FTDecayFunction1DGauss *) x)); } @@ -114079,9 +113750,6 @@ static void *_p_SpecularSimulationTo_p_IParameterized(void *x, int *SWIGUNUSEDPA static void *_p_FTDistribution2DConeTo_p_IParameterized(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((IParameterized *) (IFTDistribution2D *) ((FTDistribution2DCone *) x)); } -static void *_p_ParticleCoreShellTo_p_IParameterized(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((IParameterized *) (ISample *)(ICompositeSample *)(IAbstractParticle *)(IParticle *) ((ParticleCoreShell *) x)); -} static void *_p_FormFactorFullSphereTo_p_IParameterized(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((IParameterized *) (ISample *)(IFormFactor *)(IFormFactorBorn *) ((FormFactorFullSphere *) x)); } @@ -114169,15 +113837,6 @@ static void *_p_IClusteredParticlesTo_p_IParameterized(void *x, int *SWIGUNUSEDP static void *_p_IMultiLayerBuilderTo_p_IParameterized(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((IParameterized *) ((IMultiLayerBuilder *) x)); } -static void *_p_IAbstractParticleTo_p_IParameterized(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((IParameterized *) (ISample *)(ICompositeSample *) ((IAbstractParticle *) x)); -} -static void *_p_IParticleTo_p_IParameterized(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((IParameterized *) (ISample *)(ICompositeSample *)(IAbstractParticle *) ((IParticle *) x)); -} -static void *_p_ParticleTo_p_IParameterized(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((IParameterized *) (ISample *)(ICompositeSample *)(IAbstractParticle *)(IParticle *) ((Particle *) x)); -} static void *_p_DistributionGateTo_p_IParameterized(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((IParameterized *) (IDistribution1D *) ((DistributionGate *) x)); } @@ -114229,9 +113888,6 @@ static void *_p_ResolutionFunction2DGaussianTo_p_IParameterized(void *x, int *SW static void *_p_BeamTo_p_IParameterized(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((IParameterized *) ((Beam *) x)); } -static void *_p_ParticleCompositionTo_p_IParameterized(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((IParameterized *) (ISample *)(ICompositeSample *)(IAbstractParticle *)(IParticle *) ((ParticleComposition *) x)); -} static void *_p_FormFactorSphereUniformRadiusTo_p_IParameterized(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((IParameterized *) (ISample *)(IFormFactor *)(IFormFactorBorn *) ((FormFactorSphereUniformRadius *) x)); } @@ -114295,9 +113951,6 @@ static void *_p_InterferenceFunctionRadialParaCrystalTo_p_IParameterized(void *x static void *_p_InterferenceFunction2DParaCrystalTo_p_IParameterized(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((IParameterized *) (ISample *)(IInterferenceFunction *) ((InterferenceFunction2DParaCrystal *) x)); } -static void *_p_MesoCrystalTo_p_IParameterized(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((IParameterized *) (ISample *)(ICompositeSample *)(IAbstractParticle *)(IParticle *) ((MesoCrystal *) x)); -} static void *_p_IFTDecayFunction2DTo_p_IParameterized(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((IParameterized *) ((IFTDecayFunction2D *) x)); } @@ -114496,9 +114149,6 @@ static void *_p_FormFactorLongBoxGaussTo_p_ISample(void *x, int *SWIGUNUSEDPARM( static void *_p_RotationEulerTo_p_ISample(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ISample *) (IRotation *) ((RotationEuler *) x)); } -static void *_p_ParticleCoreShellTo_p_ISample(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((ISample *) (ICompositeSample *)(IAbstractParticle *)(IParticle *) ((ParticleCoreShell *) x)); -} static void *_p_LayerTo_p_ISample(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ISample *) (ICompositeSample *) ((Layer *) x)); } @@ -114520,9 +114170,6 @@ static void *_p_InterferenceFunctionRadialParaCrystalTo_p_ISample(void *x, int * static void *_p_InterferenceFunction2DParaCrystalTo_p_ISample(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ISample *) (IInterferenceFunction *) ((InterferenceFunction2DParaCrystal *) x)); } -static void *_p_MesoCrystalTo_p_ISample(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((ISample *) (ICompositeSample *)(IAbstractParticle *)(IParticle *) ((MesoCrystal *) x)); -} static void *_p_FormFactorRipple2To_p_ISample(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ISample *) (IFormFactor *)(IFormFactorBorn *) ((FormFactorRipple2 *) x)); } @@ -114544,18 +114191,6 @@ static void *_p_FormFactorLongRipple1GaussTo_p_ISample(void *x, int *SWIGUNUSEDP static void *_p_MultiLayerTo_p_ISample(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ISample *) (ICompositeSample *) ((MultiLayer *) x)); } -static void *_p_ParticleDistributionTo_p_ISample(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((ISample *) (ICompositeSample *)(IAbstractParticle *) ((ParticleDistribution *) x)); -} -static void *_p_IAbstractParticleTo_p_ISample(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((ISample *) (ICompositeSample *) ((IAbstractParticle *) x)); -} -static void *_p_IParticleTo_p_ISample(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((ISample *) (ICompositeSample *)(IAbstractParticle *) ((IParticle *) x)); -} -static void *_p_ParticleTo_p_ISample(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((ISample *) (ICompositeSample *)(IAbstractParticle *)(IParticle *) ((Particle *) x)); -} static void *_p_FormFactorEllipsoidalCylinderTo_p_ISample(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ISample *) (IFormFactor *)(IFormFactorBorn *) ((FormFactorEllipsoidalCylinder *) x)); } @@ -114661,9 +114296,6 @@ static void *_p_FormFactorPrism3To_p_ISample(void *x, int *SWIGUNUSEDPARM(newmem static void *_p_FormFactorSphereUniformRadiusTo_p_ISample(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ISample *) (IFormFactor *)(IFormFactorBorn *) ((FormFactorSphereUniformRadius *) x)); } -static void *_p_ParticleCompositionTo_p_ISample(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((ISample *) (ICompositeSample *)(IAbstractParticle *)(IParticle *) ((ParticleComposition *) x)); -} static void *_p_FormFactorLongRipple2GaussTo_p_ISample(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ISample *) (IFormFactor *)(IFormFactorBorn *) ((FormFactorLongRipple2Gauss *) x)); } @@ -114673,12 +114305,6 @@ static void *_p_FormFactorGaussTo_p_ISample(void *x, int *SWIGUNUSEDPARM(newmemo static void *_p_IClusteredParticlesTo_p_ICompositeSample(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ICompositeSample *) ((IClusteredParticles *) x)); } -static void *_p_ParticleCompositionTo_p_ICompositeSample(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((ICompositeSample *) (IAbstractParticle *)(IParticle *) ((ParticleComposition *) x)); -} -static void *_p_ParticleDistributionTo_p_ICompositeSample(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((ICompositeSample *) (IAbstractParticle *) ((ParticleDistribution *) x)); -} static void *_p_ILayoutTo_p_ICompositeSample(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ICompositeSample *) ((ILayout *) x)); } @@ -114691,36 +114317,9 @@ static void *_p_MultiLayerTo_p_ICompositeSample(void *x, int *SWIGUNUSEDPARM(new static void *_p_CrystalTo_p_ICompositeSample(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ICompositeSample *) (IClusteredParticles *) ((Crystal *) x)); } -static void *_p_MesoCrystalTo_p_ICompositeSample(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((ICompositeSample *) (IAbstractParticle *)(IParticle *) ((MesoCrystal *) x)); -} -static void *_p_IAbstractParticleTo_p_ICompositeSample(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((ICompositeSample *) ((IAbstractParticle *) x)); -} -static void *_p_IParticleTo_p_ICompositeSample(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((ICompositeSample *) (IAbstractParticle *) ((IParticle *) x)); -} static void *_p_LayerTo_p_ICompositeSample(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((ICompositeSample *) ((Layer *) x)); } -static void *_p_ParticleTo_p_ICompositeSample(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((ICompositeSample *) (IAbstractParticle *)(IParticle *) ((Particle *) x)); -} -static void *_p_ParticleCoreShellTo_p_ICompositeSample(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((ICompositeSample *) (IAbstractParticle *)(IParticle *) ((ParticleCoreShell *) x)); -} -static void *_p_ParticleCompositionTo_p_IParticle(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((IParticle *) ((ParticleComposition *) x)); -} -static void *_p_MesoCrystalTo_p_IParticle(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((IParticle *) ((MesoCrystal *) x)); -} -static void *_p_ParticleTo_p_IParticle(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((IParticle *) ((Particle *) x)); -} -static void *_p_ParticleCoreShellTo_p_IParticle(void *x, int *SWIGUNUSEDPARM(newmemory)) { - return (void *)((IParticle *) ((ParticleCoreShell *) x)); -} static void *_p_ParticleCompositionTo_p_IAbstractParticle(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((IAbstractParticle *) (IParticle *) ((ParticleComposition *) x)); } @@ -114739,6 +114338,18 @@ static void *_p_ParticleTo_p_IAbstractParticle(void *x, int *SWIGUNUSEDPARM(newm static void *_p_ParticleCoreShellTo_p_IAbstractParticle(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((IAbstractParticle *) (IParticle *) ((ParticleCoreShell *) x)); } +static void *_p_ParticleCompositionTo_p_IParticle(void *x, int *SWIGUNUSEDPARM(newmemory)) { + return (void *)((IParticle *) ((ParticleComposition *) x)); +} +static void *_p_MesoCrystalTo_p_IParticle(void *x, int *SWIGUNUSEDPARM(newmemory)) { + return (void *)((IParticle *) ((MesoCrystal *) x)); +} +static void *_p_ParticleTo_p_IParticle(void *x, int *SWIGUNUSEDPARM(newmemory)) { + return (void *)((IParticle *) ((Particle *) x)); +} +static void *_p_ParticleCoreShellTo_p_IParticle(void *x, int *SWIGUNUSEDPARM(newmemory)) { + return (void *)((IParticle *) ((ParticleCoreShell *) x)); +} static void *_p_LayerRoughnessTo_p_IRoughness(void *x, int *SWIGUNUSEDPARM(newmemory)) { return (void *)((IRoughness *) ((LayerRoughness *) x)); } @@ -115549,9 +115160,9 @@ static swig_cast_info _swigc__p_HomogeneousMaterial[] = { {&_swigt__p_Homogeneo static swig_cast_info _swigc__p_IAbstractParticle[] = { {&_swigt__p_ParticleComposition, _p_ParticleCompositionTo_p_IAbstractParticle, 0, 0}, {&_swigt__p_ParticleDistribution, _p_ParticleDistributionTo_p_IAbstractParticle, 0, 0}, {&_swigt__p_MesoCrystal, _p_MesoCrystalTo_p_IAbstractParticle, 0, 0}, {&_swigt__p_IAbstractParticle, 0, 0, 0}, {&_swigt__p_IParticle, _p_IParticleTo_p_IAbstractParticle, 0, 0}, {&_swigt__p_Particle, _p_ParticleTo_p_IAbstractParticle, 0, 0}, {&_swigt__p_ParticleCoreShell, _p_ParticleCoreShellTo_p_IAbstractParticle, 0, 0},{0, 0, 0, 0}}; 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_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_FormFactorBox, _p_FormFactorBoxTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorSphereLogNormalRadius, _p_FormFactorSphereLogNormalRadiusTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorSphereGaussianRadius, _p_FormFactorSphereGaussianRadiusTo_p_ICloneable, 0, 0}, {&_swigt__p_MultiLayer, _p_MultiLayerTo_p_ICloneable, 0, 0}, {&_swigt__p_ParticleDistribution, _p_ParticleDistributionTo_p_ICloneable, 0, 0}, {&_swigt__p_InterferenceFunctionNone, _p_InterferenceFunctionNoneTo_p_ICloneable, 0, 0}, {&_swigt__p_Geometry__Polygon, _p_Geometry__PolygonTo_p_ICloneable, 0, 0}, {&_swigt__p_Geometry__Ellipse, _p_Geometry__EllipseTo_p_ICloneable, 0, 0}, {&_swigt__p_ILayout, _p_ILayoutTo_p_ICloneable, 0, 0}, {&_swigt__p_ParticleLayout, _p_ParticleLayoutTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorHemiEllipsoid, _p_FormFactorHemiEllipsoidTo_p_ICloneable, 0, 0}, {&_swigt__p_ChiSquaredModule, _p_ChiSquaredModuleTo_p_ICloneable, 0, 0}, {&_swigt__p_IChiSquaredModule, _p_IChiSquaredModuleTo_p_ICloneable, 0, 0}, {&_swigt__p_Geometry__HorizontalLine, _p_Geometry__HorizontalLineTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorPrism3, _p_FormFactorPrism3To_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_FormFactorPrism6, _p_FormFactorPrism6To_p_ICloneable, 0, 0}, {&_swigt__p_GISASSimulation, _p_GISASSimulationTo_p_ICloneable, 0, 0}, {&_swigt__p_Simulation, _p_SimulationTo_p_ICloneable, 0, 0}, {&_swigt__p_OffSpecSimulation, _p_OffSpecSimulationTo_p_ICloneable, 0, 0}, {&_swigt__p_SpecularSimulation, _p_SpecularSimulationTo_p_ICloneable, 0, 0}, {&_swigt__p_ParticleCoreShell, _p_ParticleCoreShellTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorTruncatedSphere, _p_FormFactorTruncatedSphereTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorFullSphere, _p_FormFactorFullSphereTo_p_ICloneable, 0, 0}, {&_swigt__p_IFormFactor, _p_IFormFactorTo_p_ICloneable, 0, 0}, {&_swigt__p_ISample, _p_ISampleTo_p_ICloneable, 0, 0}, {&_swigt__p_ICompositeSample, _p_ICompositeSampleTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorPolygonalSurface, _p_FormFactorPolygonalSurfaceTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorLongBoxGauss, _p_FormFactorLongBoxGaussTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorPolygonalPrism, _p_FormFactorPolygonalPrismTo_p_ICloneable, 0, 0}, {&_swigt__p_IRotation, _p_IRotationTo_p_ICloneable, 0, 0}, {&_swigt__p_RotationX, _p_RotationXTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorTruncatedSpheroid, _p_FormFactorTruncatedSpheroidTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorFullSpheroid, _p_FormFactorFullSpheroidTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorTruncatedCube, _p_FormFactorTruncatedCubeTo_p_ICloneable, 0, 0}, {&_swigt__p_RotationY, _p_RotationYTo_p_ICloneable, 0, 0}, {&_swigt__p_Geometry__IShape2D, _p_Geometry__IShape2DTo_p_ICloneable, 0, 0}, {&_swigt__p_RotationZ, _p_RotationZTo_p_ICloneable, 0, 0}, {&_swigt__p_Geometry__Rectangle, _p_Geometry__RectangleTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorGauss, _p_FormFactorGaussTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorLongRipple2Gauss, _p_FormFactorLongRipple2GaussTo_p_ICloneable, 0, 0}, {&_swigt__p_Geometry__VerticalLine, _p_Geometry__VerticalLineTo_p_ICloneable, 0, 0}, {&_swigt__p_IFormFactorBorn, _p_IFormFactorBornTo_p_ICloneable, 0, 0}, {&_swigt__p_IDetectorResolution, _p_IDetectorResolutionTo_p_ICloneable, 0, 0}, {&_swigt__p_IClusteredParticles, _p_IClusteredParticlesTo_p_ICloneable, 0, 0}, {&_swigt__p_IAbstractParticle, _p_IAbstractParticleTo_p_ICloneable, 0, 0}, {&_swigt__p_IParticle, _p_IParticleTo_p_ICloneable, 0, 0}, {&_swigt__p_Particle, _p_ParticleTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorTrivial, _p_FormFactorTrivialTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorCone, _p_FormFactorConeTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorRipple1, _p_FormFactorRipple1To_p_ICloneable, 0, 0}, {&_swigt__p_Layer, _p_LayerTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorAnisoPyramid, _p_FormFactorAnisoPyramidTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorPyramid, _p_FormFactorPyramidTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorDecoratorDebyeWaller, _p_FormFactorDecoratorDebyeWallerTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorRipple2, _p_FormFactorRipple2To_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorEllipsoidalCylinder, _p_FormFactorEllipsoidalCylinderTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorCylinder, _p_FormFactorCylinderTo_p_ICloneable, 0, 0}, {&_swigt__p_ParticleComposition, _p_ParticleCompositionTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorSphereUniformRadius, _p_FormFactorSphereUniformRadiusTo_p_ICloneable, 0, 0}, {&_swigt__p_Geometry__Line, _p_Geometry__LineTo_p_ICloneable, 0, 0}, {&_swigt__p_IInterferenceFunction, _p_IInterferenceFunctionTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorCone6, _p_FormFactorCone6To_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorLongRipple1Gauss, _p_FormFactorLongRipple1GaussTo_p_ICloneable, 0, 0}, {&_swigt__p_IFormFactorDecorator, _p_IFormFactorDecoratorTo_p_ICloneable, 0, 0}, {&_swigt__p_IRoughness, _p_IRoughnessTo_p_ICloneable, 0, 0}, {&_swigt__p_LayerRoughness, _p_LayerRoughnessTo_p_ICloneable, 0, 0}, {&_swigt__p_InterferenceFunctionRadialParaCrystal, _p_InterferenceFunctionRadialParaCrystalTo_p_ICloneable, 0, 0}, {&_swigt__p_InterferenceFunction2DParaCrystal, _p_InterferenceFunction2DParaCrystalTo_p_ICloneable, 0, 0}, {&_swigt__p_Crystal, _p_CrystalTo_p_ICloneable, 0, 0}, {&_swigt__p_MesoCrystal, _p_MesoCrystalTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorCrystal, _p_FormFactorCrystalTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorWeighted, _p_FormFactorWeightedTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorLorentz, _p_FormFactorLorentzTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorLongRipple2Lorentz, _p_FormFactorLongRipple2LorentzTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorLongRipple1Lorentz, _p_FormFactorLongRipple1LorentzTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorLongBoxLorentz, _p_FormFactorLongBoxLorentzTo_p_ICloneable, 0, 0}, {&_swigt__p_InterferenceFunction1DLattice, _p_InterferenceFunction1DLatticeTo_p_ICloneable, 0, 0}, {&_swigt__p_InterferenceFunction2DLattice, _p_InterferenceFunction2DLatticeTo_p_ICloneable, 0, 0}, {&_swigt__p_ICloneable, 0, 0, 0}, {&_swigt__p_RotationEuler, _p_RotationEulerTo_p_ICloneable, 0, 0},{0, 0, 0, 0}}; +static swig_cast_info _swigc__p_ICloneable[] = { {&_swigt__p_FormFactorBox, _p_FormFactorBoxTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorSphereLogNormalRadius, _p_FormFactorSphereLogNormalRadiusTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorSphereGaussianRadius, _p_FormFactorSphereGaussianRadiusTo_p_ICloneable, 0, 0}, {&_swigt__p_MultiLayer, _p_MultiLayerTo_p_ICloneable, 0, 0}, {&_swigt__p_InterferenceFunctionNone, _p_InterferenceFunctionNoneTo_p_ICloneable, 0, 0}, {&_swigt__p_Geometry__Polygon, _p_Geometry__PolygonTo_p_ICloneable, 0, 0}, {&_swigt__p_Geometry__Ellipse, _p_Geometry__EllipseTo_p_ICloneable, 0, 0}, {&_swigt__p_ParticleLayout, _p_ParticleLayoutTo_p_ICloneable, 0, 0}, {&_swigt__p_ILayout, _p_ILayoutTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorHemiEllipsoid, _p_FormFactorHemiEllipsoidTo_p_ICloneable, 0, 0}, {&_swigt__p_ChiSquaredModule, _p_ChiSquaredModuleTo_p_ICloneable, 0, 0}, {&_swigt__p_IChiSquaredModule, _p_IChiSquaredModuleTo_p_ICloneable, 0, 0}, {&_swigt__p_Geometry__HorizontalLine, _p_Geometry__HorizontalLineTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorPrism3, _p_FormFactorPrism3To_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_FormFactorPrism6, _p_FormFactorPrism6To_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_SpecularSimulation, _p_SpecularSimulationTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorTruncatedSphere, _p_FormFactorTruncatedSphereTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorFullSphere, _p_FormFactorFullSphereTo_p_ICloneable, 0, 0}, {&_swigt__p_IFormFactor, _p_IFormFactorTo_p_ICloneable, 0, 0}, {&_swigt__p_ISample, _p_ISampleTo_p_ICloneable, 0, 0}, {&_swigt__p_ICompositeSample, _p_ICompositeSampleTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorPolygonalSurface, _p_FormFactorPolygonalSurfaceTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorLongBoxGauss, _p_FormFactorLongBoxGaussTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorPolygonalPrism, _p_FormFactorPolygonalPrismTo_p_ICloneable, 0, 0}, {&_swigt__p_IRotation, _p_IRotationTo_p_ICloneable, 0, 0}, {&_swigt__p_RotationX, _p_RotationXTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorTruncatedSpheroid, _p_FormFactorTruncatedSpheroidTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorFullSpheroid, _p_FormFactorFullSpheroidTo_p_ICloneable, 0, 0}, {&_swigt__p_Geometry__IShape2D, _p_Geometry__IShape2DTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorTruncatedCube, _p_FormFactorTruncatedCubeTo_p_ICloneable, 0, 0}, {&_swigt__p_RotationY, _p_RotationYTo_p_ICloneable, 0, 0}, {&_swigt__p_RotationZ, _p_RotationZTo_p_ICloneable, 0, 0}, {&_swigt__p_Geometry__Rectangle, _p_Geometry__RectangleTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorGauss, _p_FormFactorGaussTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorLongRipple2Gauss, _p_FormFactorLongRipple2GaussTo_p_ICloneable, 0, 0}, {&_swigt__p_Geometry__VerticalLine, _p_Geometry__VerticalLineTo_p_ICloneable, 0, 0}, {&_swigt__p_IFormFactorBorn, _p_IFormFactorBornTo_p_ICloneable, 0, 0}, {&_swigt__p_IDetectorResolution, _p_IDetectorResolutionTo_p_ICloneable, 0, 0}, {&_swigt__p_IClusteredParticles, _p_IClusteredParticlesTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorTrivial, _p_FormFactorTrivialTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorCone, _p_FormFactorConeTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorRipple1, _p_FormFactorRipple1To_p_ICloneable, 0, 0}, {&_swigt__p_Layer, _p_LayerTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorAnisoPyramid, _p_FormFactorAnisoPyramidTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorPyramid, _p_FormFactorPyramidTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorDecoratorDebyeWaller, _p_FormFactorDecoratorDebyeWallerTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorRipple2, _p_FormFactorRipple2To_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorEllipsoidalCylinder, _p_FormFactorEllipsoidalCylinderTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorCylinder, _p_FormFactorCylinderTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorSphereUniformRadius, _p_FormFactorSphereUniformRadiusTo_p_ICloneable, 0, 0}, {&_swigt__p_Geometry__Line, _p_Geometry__LineTo_p_ICloneable, 0, 0}, {&_swigt__p_IInterferenceFunction, _p_IInterferenceFunctionTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorCone6, _p_FormFactorCone6To_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorLongRipple1Gauss, _p_FormFactorLongRipple1GaussTo_p_ICloneable, 0, 0}, {&_swigt__p_IFormFactorDecorator, _p_IFormFactorDecoratorTo_p_ICloneable, 0, 0}, {&_swigt__p_LayerRoughness, _p_LayerRoughnessTo_p_ICloneable, 0, 0}, {&_swigt__p_IRoughness, _p_IRoughnessTo_p_ICloneable, 0, 0}, {&_swigt__p_InterferenceFunctionRadialParaCrystal, _p_InterferenceFunctionRadialParaCrystalTo_p_ICloneable, 0, 0}, {&_swigt__p_InterferenceFunction2DParaCrystal, _p_InterferenceFunction2DParaCrystalTo_p_ICloneable, 0, 0}, {&_swigt__p_Crystal, _p_CrystalTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorCrystal, _p_FormFactorCrystalTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorWeighted, _p_FormFactorWeightedTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorLorentz, _p_FormFactorLorentzTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorLongRipple2Lorentz, _p_FormFactorLongRipple2LorentzTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorLongRipple1Lorentz, _p_FormFactorLongRipple1LorentzTo_p_ICloneable, 0, 0}, {&_swigt__p_FormFactorLongBoxLorentz, _p_FormFactorLongBoxLorentzTo_p_ICloneable, 0, 0}, {&_swigt__p_InterferenceFunction2DLattice, _p_InterferenceFunction2DLatticeTo_p_ICloneable, 0, 0}, {&_swigt__p_InterferenceFunction1DLattice, _p_InterferenceFunction1DLatticeTo_p_ICloneable, 0, 0}, {&_swigt__p_ICloneable, 0, 0, 0}, {&_swigt__p_RotationEuler, _p_RotationEulerTo_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_ICompositeSample[] = { {&_swigt__p_MultiLayer, _p_MultiLayerTo_p_ICompositeSample, 0, 0}, {&_swigt__p_Crystal, _p_CrystalTo_p_ICompositeSample, 0, 0}, {&_swigt__p_MesoCrystal, _p_MesoCrystalTo_p_ICompositeSample, 0, 0}, {&_swigt__p_IAbstractParticle, _p_IAbstractParticleTo_p_ICompositeSample, 0, 0}, {&_swigt__p_IParticle, _p_IParticleTo_p_ICompositeSample, 0, 0}, {&_swigt__p_Particle, _p_ParticleTo_p_ICompositeSample, 0, 0}, {&_swigt__p_ICompositeSample, 0, 0, 0}, {&_swigt__p_ParticleComposition, _p_ParticleCompositionTo_p_ICompositeSample, 0, 0}, {&_swigt__p_IClusteredParticles, _p_IClusteredParticlesTo_p_ICompositeSample, 0, 0}, {&_swigt__p_ILayout, _p_ILayoutTo_p_ICompositeSample, 0, 0}, {&_swigt__p_ParticleLayout, _p_ParticleLayoutTo_p_ICompositeSample, 0, 0}, {&_swigt__p_Layer, _p_LayerTo_p_ICompositeSample, 0, 0}, {&_swigt__p_ParticleDistribution, _p_ParticleDistributionTo_p_ICompositeSample, 0, 0}, {&_swigt__p_ParticleCoreShell, _p_ParticleCoreShellTo_p_ICompositeSample, 0, 0},{0, 0, 0, 0}}; +static swig_cast_info _swigc__p_ICompositeSample[] = { {&_swigt__p_IClusteredParticles, _p_IClusteredParticlesTo_p_ICompositeSample, 0, 0}, {&_swigt__p_ILayout, _p_ILayoutTo_p_ICompositeSample, 0, 0}, {&_swigt__p_ParticleLayout, _p_ParticleLayoutTo_p_ICompositeSample, 0, 0}, {&_swigt__p_MultiLayer, _p_MultiLayerTo_p_ICompositeSample, 0, 0}, {&_swigt__p_ICompositeSample, 0, 0, 0}, {&_swigt__p_Crystal, _p_CrystalTo_p_ICompositeSample, 0, 0}, {&_swigt__p_Layer, _p_LayerTo_p_ICompositeSample, 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}}; static swig_cast_info _swigc__p_IDetectorResolution[] = { {&_swigt__p_IDetectorResolution, 0, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_IDistribution1D[] = { {&_swigt__p_DistributionCosine, _p_DistributionCosineTo_p_IDistribution1D, 0, 0}, {&_swigt__p_DistributionLorentz, _p_DistributionLorentzTo_p_IDistribution1D, 0, 0}, {&_swigt__p_DistributionGaussian, _p_DistributionGaussianTo_p_IDistribution1D, 0, 0}, {&_swigt__p_IDistribution1D, 0, 0, 0}, {&_swigt__p_DistributionGate, _p_DistributionGateTo_p_IDistribution1D, 0, 0}, {&_swigt__p_DistributionLogNormal, _p_DistributionLogNormalTo_p_IDistribution1D, 0, 0},{0, 0, 0, 0}}; @@ -115575,16 +115186,16 @@ static swig_cast_info _swigc__p_ILayout[] = { {&_swigt__p_ILayout, 0, 0, 0}, { static swig_cast_info _swigc__p_IMaterial[] = { {&_swigt__p_IMaterial, 0, 0, 0}, {&_swigt__p_HomogeneousMaterial, _p_HomogeneousMaterialTo_p_IMaterial, 0, 0}, {&_swigt__p_HomogeneousMagneticMaterial, _p_HomogeneousMagneticMaterialTo_p_IMaterial, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_IMinimizer[] = { {&_swigt__p_IMinimizer, 0, 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_INamed[] = { {&_swigt__p_FormFactorBox, _p_FormFactorBoxTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorSphereGaussianRadius, _p_FormFactorSphereGaussianRadiusTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorSphereLogNormalRadius, _p_FormFactorSphereLogNormalRadiusTo_p_INamed, 0, 0}, {&_swigt__p_FitStrategyAdjustMinimizer, _p_FitStrategyAdjustMinimizerTo_p_INamed, 0, 0}, {&_swigt__p_MultiLayer, _p_MultiLayerTo_p_INamed, 0, 0}, {&_swigt__p_ParameterDistribution, _p_ParameterDistributionTo_p_INamed, 0, 0}, {&_swigt__p_ParticleDistribution, _p_ParticleDistributionTo_p_INamed, 0, 0}, {&_swigt__p_FTDistribution1DGauss, _p_FTDistribution1DGaussTo_p_INamed, 0, 0}, {&_swigt__p_FTDecayFunction1DGauss, _p_FTDecayFunction1DGaussTo_p_INamed, 0, 0}, {&_swigt__p_InterferenceFunctionNone, _p_InterferenceFunctionNoneTo_p_INamed, 0, 0}, {&_swigt__p_Geometry__Polygon, _p_Geometry__PolygonTo_p_INamed, 0, 0}, {&_swigt__p_IDetector2D, _p_IDetector2DTo_p_INamed, 0, 0}, {&_swigt__p_Geometry__Ellipse, _p_Geometry__EllipseTo_p_INamed, 0, 0}, {&_swigt__p_ILayout, _p_ILayoutTo_p_INamed, 0, 0}, {&_swigt__p_ParticleLayout, _p_ParticleLayoutTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorHemiEllipsoid, _p_FormFactorHemiEllipsoidTo_p_INamed, 0, 0}, {&_swigt__p_IntensityScaleAndShiftNormalizer, _p_IntensityScaleAndShiftNormalizerTo_p_INamed, 0, 0}, {&_swigt__p_IntensityNormalizer, _p_IntensityNormalizerTo_p_INamed, 0, 0}, {&_swigt__p_IIntensityNormalizer, _p_IIntensityNormalizerTo_p_INamed, 0, 0}, {&_swigt__p_Geometry__HorizontalLine, _p_Geometry__HorizontalLineTo_p_INamed, 0, 0}, {&_swigt__p_SphericalDetector, _p_SphericalDetectorTo_p_INamed, 0, 0}, {&_swigt__p_IsGISAXSDetector, _p_IsGISAXSDetectorTo_p_INamed, 0, 0}, {&_swigt__p_RectangularDetector, _p_RectangularDetectorTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorPrism3, _p_FormFactorPrism3To_p_INamed, 0, 0}, {&_swigt__p_FormFactorIcosahedron, _p_FormFactorIcosahedronTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorDodecahedron, _p_FormFactorDodecahedronTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorCuboctahedron, _p_FormFactorCuboctahedronTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorPolyhedron, _p_FormFactorPolyhedronTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorTetrahedron, _p_FormFactorTetrahedronTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorPrism6, _p_FormFactorPrism6To_p_INamed, 0, 0}, {&_swigt__p_OffSpecSimulation, _p_OffSpecSimulationTo_p_INamed, 0, 0}, {&_swigt__p_GISASSimulation, _p_GISASSimulationTo_p_INamed, 0, 0}, {&_swigt__p_Simulation, _p_SimulationTo_p_INamed, 0, 0}, {&_swigt__p_SpecularSimulation, _p_SpecularSimulationTo_p_INamed, 0, 0}, {&_swigt__p_FTDistribution2DCone, _p_FTDistribution2DConeTo_p_INamed, 0, 0}, {&_swigt__p_ParticleCoreShell, _p_ParticleCoreShellTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorFullSphere, _p_FormFactorFullSphereTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorTruncatedSphere, _p_FormFactorTruncatedSphereTo_p_INamed, 0, 0}, {&_swigt__p_IFormFactor, _p_IFormFactorTo_p_INamed, 0, 0}, {&_swigt__p_ISample, _p_ISampleTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorPolygonalSurface, _p_FormFactorPolygonalSurfaceTo_p_INamed, 0, 0}, {&_swigt__p_ICompositeSample, _p_ICompositeSampleTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorLongBoxGauss, _p_FormFactorLongBoxGaussTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorPolygonalPrism, _p_FormFactorPolygonalPrismTo_p_INamed, 0, 0}, {&_swigt__p_FitSuiteObjects, _p_FitSuiteObjectsTo_p_INamed, 0, 0}, {&_swigt__p_FTDistribution2DGate, _p_FTDistribution2DGateTo_p_INamed, 0, 0}, {&_swigt__p_DistributionLogNormal, _p_DistributionLogNormalTo_p_INamed, 0, 0}, {&_swigt__p_Instrument, _p_InstrumentTo_p_INamed, 0, 0}, {&_swigt__p_FTDecayFunction1DVoigt, _p_FTDecayFunction1DVoigtTo_p_INamed, 0, 0}, {&_swigt__p_FTDistribution1DVoigt, _p_FTDistribution1DVoigtTo_p_INamed, 0, 0}, {&_swigt__p_IRotation, _p_IRotationTo_p_INamed, 0, 0}, {&_swigt__p_RotationX, _p_RotationXTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorTruncatedSpheroid, _p_FormFactorTruncatedSpheroidTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorFullSpheroid, _p_FormFactorFullSpheroidTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorTruncatedCube, _p_FormFactorTruncatedCubeTo_p_INamed, 0, 0}, {&_swigt__p_RotationY, _p_RotationYTo_p_INamed, 0, 0}, {&_swigt__p_Geometry__IShape2D, _p_Geometry__IShape2DTo_p_INamed, 0, 0}, {&_swigt__p_FTDecayFunction2DGauss, _p_FTDecayFunction2DGaussTo_p_INamed, 0, 0}, {&_swigt__p_FTDistribution2DGauss, _p_FTDistribution2DGaussTo_p_INamed, 0, 0}, {&_swigt__p_RotationZ, _p_RotationZTo_p_INamed, 0, 0}, {&_swigt__p_Geometry__Rectangle, _p_Geometry__RectangleTo_p_INamed, 0, 0}, {&_swigt__p_FitStrategyDefault, _p_FitStrategyDefaultTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorGauss, _p_FormFactorGaussTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorLongRipple2Gauss, _p_FormFactorLongRipple2GaussTo_p_INamed, 0, 0}, {&_swigt__p_Geometry__VerticalLine, _p_Geometry__VerticalLineTo_p_INamed, 0, 0}, {&_swigt__p_IFormFactorBorn, _p_IFormFactorBornTo_p_INamed, 0, 0}, {&_swigt__p_IDetectorResolution, _p_IDetectorResolutionTo_p_INamed, 0, 0}, {&_swigt__p_IClusteredParticles, _p_IClusteredParticlesTo_p_INamed, 0, 0}, {&_swigt__p_IMultiLayerBuilder, _p_IMultiLayerBuilderTo_p_INamed, 0, 0}, {&_swigt__p_Particle, _p_ParticleTo_p_INamed, 0, 0}, {&_swigt__p_IParticle, _p_IParticleTo_p_INamed, 0, 0}, {&_swigt__p_IAbstractParticle, _p_IAbstractParticleTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorTrivial, _p_FormFactorTrivialTo_p_INamed, 0, 0}, {&_swigt__p_INamed, 0, 0, 0}, {&_swigt__p_DistributionGate, _p_DistributionGateTo_p_INamed, 0, 0}, {&_swigt__p_IDistribution1D, _p_IDistribution1DTo_p_INamed, 0, 0}, {&_swigt__p_IFTDecayFunction1D, _p_IFTDecayFunction1DTo_p_INamed, 0, 0}, {&_swigt__p_IFTDistribution1D, _p_IFTDistribution1DTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorCone, _p_FormFactorConeTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorRipple1, _p_FormFactorRipple1To_p_INamed, 0, 0}, {&_swigt__p_Layer, _p_LayerTo_p_INamed, 0, 0}, {&_swigt__p_IMaterial, _p_IMaterialTo_p_INamed, 0, 0}, {&_swigt__p_HomogeneousMaterial, _p_HomogeneousMaterialTo_p_INamed, 0, 0}, {&_swigt__p_HomogeneousMagneticMaterial, _p_HomogeneousMagneticMaterialTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorAnisoPyramid, _p_FormFactorAnisoPyramidTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorPyramid, _p_FormFactorPyramidTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorDecoratorDebyeWaller, _p_FormFactorDecoratorDebyeWallerTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorRipple2, _p_FormFactorRipple2To_p_INamed, 0, 0}, {&_swigt__p_FormFactorEllipsoidalCylinder, _p_FormFactorEllipsoidalCylinderTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorCylinder, _p_FormFactorCylinderTo_p_INamed, 0, 0}, {&_swigt__p_DistributionGaussian, _p_DistributionGaussianTo_p_INamed, 0, 0}, {&_swigt__p_ResolutionFunction2DGaussian, _p_ResolutionFunction2DGaussianTo_p_INamed, 0, 0}, {&_swigt__p_ParticleComposition, _p_ParticleCompositionTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorSphereUniformRadius, _p_FormFactorSphereUniformRadiusTo_p_INamed, 0, 0}, {&_swigt__p_Geometry__Line, _p_Geometry__LineTo_p_INamed, 0, 0}, {&_swigt__p_DistributionCosine, _p_DistributionCosineTo_p_INamed, 0, 0}, {&_swigt__p_FTDistribution1DCosine, _p_FTDistribution1DCosineTo_p_INamed, 0, 0}, {&_swigt__p_FTDistribution1DGate, _p_FTDistribution1DGateTo_p_INamed, 0, 0}, {&_swigt__p_FTDistribution2DVoigt, _p_FTDistribution2DVoigtTo_p_INamed, 0, 0}, {&_swigt__p_FTDecayFunction2DVoigt, _p_FTDecayFunction2DVoigtTo_p_INamed, 0, 0}, {&_swigt__p_FTDecayFunction1DCauchy, _p_FTDecayFunction1DCauchyTo_p_INamed, 0, 0}, {&_swigt__p_FTDistribution1DCauchy, _p_FTDistribution1DCauchyTo_p_INamed, 0, 0}, {&_swigt__p_FTDistribution2DCauchy, _p_FTDistribution2DCauchyTo_p_INamed, 0, 0}, {&_swigt__p_FTDecayFunction2DCauchy, _p_FTDecayFunction2DCauchyTo_p_INamed, 0, 0}, {&_swigt__p_IInterferenceFunction, _p_IInterferenceFunctionTo_p_INamed, 0, 0}, {&_swigt__p_FitObject, _p_FitObjectTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorCone6, _p_FormFactorCone6To_p_INamed, 0, 0}, {&_swigt__p_FormFactorLongRipple1Gauss, _p_FormFactorLongRipple1GaussTo_p_INamed, 0, 0}, {&_swigt__p_Beam, _p_BeamTo_p_INamed, 0, 0}, {&_swigt__p_IFitStrategy, _p_IFitStrategyTo_p_INamed, 0, 0}, {&_swigt__p_IFormFactorDecorator, _p_IFormFactorDecoratorTo_p_INamed, 0, 0}, {&_swigt__p_IParameterized, _p_IParameterizedTo_p_INamed, 0, 0}, {&_swigt__p_IRoughness, _p_IRoughnessTo_p_INamed, 0, 0}, {&_swigt__p_LayerRoughness, _p_LayerRoughnessTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorCrystal, _p_FormFactorCrystalTo_p_INamed, 0, 0}, {&_swigt__p_MesoCrystal, _p_MesoCrystalTo_p_INamed, 0, 0}, {&_swigt__p_InterferenceFunction2DParaCrystal, _p_InterferenceFunction2DParaCrystalTo_p_INamed, 0, 0}, {&_swigt__p_InterferenceFunctionRadialParaCrystal, _p_InterferenceFunctionRadialParaCrystalTo_p_INamed, 0, 0}, {&_swigt__p_Crystal, _p_CrystalTo_p_INamed, 0, 0}, {&_swigt__p_IFTDecayFunction2D, _p_IFTDecayFunction2DTo_p_INamed, 0, 0}, {&_swigt__p_IFTDistribution2D, _p_IFTDistribution2DTo_p_INamed, 0, 0}, {&_swigt__p_IResolutionFunction2D, _p_IResolutionFunction2DTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorWeighted, _p_FormFactorWeightedTo_p_INamed, 0, 0}, {&_swigt__p_RealParameter, _p_RealParameterTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorLorentz, _p_FormFactorLorentzTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorLongRipple2Lorentz, _p_FormFactorLongRipple2LorentzTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorLongRipple1Lorentz, _p_FormFactorLongRipple1LorentzTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorLongBoxLorentz, _p_FormFactorLongBoxLorentzTo_p_INamed, 0, 0}, {&_swigt__p_InterferenceFunction1DLattice, _p_InterferenceFunction1DLatticeTo_p_INamed, 0, 0}, {&_swigt__p_InterferenceFunction2DLattice, _p_InterferenceFunction2DLatticeTo_p_INamed, 0, 0}, {&_swigt__p_DistributionLorentz, _p_DistributionLorentzTo_p_INamed, 0, 0}, {&_swigt__p_FTDecayFunction1DTriangle, _p_FTDecayFunction1DTriangleTo_p_INamed, 0, 0}, {&_swigt__p_FTDistribution1DTriangle, _p_FTDistribution1DTriangleTo_p_INamed, 0, 0}, {&_swigt__p_RotationEuler, _p_RotationEulerTo_p_INamed, 0, 0},{0, 0, 0, 0}}; +static swig_cast_info _swigc__p_INamed[] = { {&_swigt__p_FormFactorBox, _p_FormFactorBoxTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorSphereGaussianRadius, _p_FormFactorSphereGaussianRadiusTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorSphereLogNormalRadius, _p_FormFactorSphereLogNormalRadiusTo_p_INamed, 0, 0}, {&_swigt__p_FitStrategyAdjustMinimizer, _p_FitStrategyAdjustMinimizerTo_p_INamed, 0, 0}, {&_swigt__p_MultiLayer, _p_MultiLayerTo_p_INamed, 0, 0}, {&_swigt__p_ParameterDistribution, _p_ParameterDistributionTo_p_INamed, 0, 0}, {&_swigt__p_FTDistribution1DGauss, _p_FTDistribution1DGaussTo_p_INamed, 0, 0}, {&_swigt__p_FTDecayFunction1DGauss, _p_FTDecayFunction1DGaussTo_p_INamed, 0, 0}, {&_swigt__p_InterferenceFunctionNone, _p_InterferenceFunctionNoneTo_p_INamed, 0, 0}, {&_swigt__p_Geometry__Polygon, _p_Geometry__PolygonTo_p_INamed, 0, 0}, {&_swigt__p_IDetector2D, _p_IDetector2DTo_p_INamed, 0, 0}, {&_swigt__p_Geometry__Ellipse, _p_Geometry__EllipseTo_p_INamed, 0, 0}, {&_swigt__p_ILayout, _p_ILayoutTo_p_INamed, 0, 0}, {&_swigt__p_ParticleLayout, _p_ParticleLayoutTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorHemiEllipsoid, _p_FormFactorHemiEllipsoidTo_p_INamed, 0, 0}, {&_swigt__p_IntensityScaleAndShiftNormalizer, _p_IntensityScaleAndShiftNormalizerTo_p_INamed, 0, 0}, {&_swigt__p_IntensityNormalizer, _p_IntensityNormalizerTo_p_INamed, 0, 0}, {&_swigt__p_IIntensityNormalizer, _p_IIntensityNormalizerTo_p_INamed, 0, 0}, {&_swigt__p_Geometry__HorizontalLine, _p_Geometry__HorizontalLineTo_p_INamed, 0, 0}, {&_swigt__p_IsGISAXSDetector, _p_IsGISAXSDetectorTo_p_INamed, 0, 0}, {&_swigt__p_SphericalDetector, _p_SphericalDetectorTo_p_INamed, 0, 0}, {&_swigt__p_RectangularDetector, _p_RectangularDetectorTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorPrism3, _p_FormFactorPrism3To_p_INamed, 0, 0}, {&_swigt__p_FormFactorIcosahedron, _p_FormFactorIcosahedronTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorDodecahedron, _p_FormFactorDodecahedronTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorCuboctahedron, _p_FormFactorCuboctahedronTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorPolyhedron, _p_FormFactorPolyhedronTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorTetrahedron, _p_FormFactorTetrahedronTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorPrism6, _p_FormFactorPrism6To_p_INamed, 0, 0}, {&_swigt__p_SpecularSimulation, _p_SpecularSimulationTo_p_INamed, 0, 0}, {&_swigt__p_OffSpecSimulation, _p_OffSpecSimulationTo_p_INamed, 0, 0}, {&_swigt__p_GISASSimulation, _p_GISASSimulationTo_p_INamed, 0, 0}, {&_swigt__p_Simulation, _p_SimulationTo_p_INamed, 0, 0}, {&_swigt__p_FTDistribution2DCone, _p_FTDistribution2DConeTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorFullSphere, _p_FormFactorFullSphereTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorTruncatedSphere, _p_FormFactorTruncatedSphereTo_p_INamed, 0, 0}, {&_swigt__p_IFormFactor, _p_IFormFactorTo_p_INamed, 0, 0}, {&_swigt__p_ISample, _p_ISampleTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorPolygonalSurface, _p_FormFactorPolygonalSurfaceTo_p_INamed, 0, 0}, {&_swigt__p_ICompositeSample, _p_ICompositeSampleTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorLongBoxGauss, _p_FormFactorLongBoxGaussTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorPolygonalPrism, _p_FormFactorPolygonalPrismTo_p_INamed, 0, 0}, {&_swigt__p_FitSuiteObjects, _p_FitSuiteObjectsTo_p_INamed, 0, 0}, {&_swigt__p_FTDistribution2DGate, _p_FTDistribution2DGateTo_p_INamed, 0, 0}, {&_swigt__p_DistributionLogNormal, _p_DistributionLogNormalTo_p_INamed, 0, 0}, {&_swigt__p_Instrument, _p_InstrumentTo_p_INamed, 0, 0}, {&_swigt__p_FTDecayFunction1DVoigt, _p_FTDecayFunction1DVoigtTo_p_INamed, 0, 0}, {&_swigt__p_FTDistribution1DVoigt, _p_FTDistribution1DVoigtTo_p_INamed, 0, 0}, {&_swigt__p_IRotation, _p_IRotationTo_p_INamed, 0, 0}, {&_swigt__p_RotationX, _p_RotationXTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorTruncatedSpheroid, _p_FormFactorTruncatedSpheroidTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorFullSpheroid, _p_FormFactorFullSpheroidTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorTruncatedCube, _p_FormFactorTruncatedCubeTo_p_INamed, 0, 0}, {&_swigt__p_RotationY, _p_RotationYTo_p_INamed, 0, 0}, {&_swigt__p_Geometry__IShape2D, _p_Geometry__IShape2DTo_p_INamed, 0, 0}, {&_swigt__p_FTDecayFunction2DGauss, _p_FTDecayFunction2DGaussTo_p_INamed, 0, 0}, {&_swigt__p_FTDistribution2DGauss, _p_FTDistribution2DGaussTo_p_INamed, 0, 0}, {&_swigt__p_RotationZ, _p_RotationZTo_p_INamed, 0, 0}, {&_swigt__p_Geometry__Rectangle, _p_Geometry__RectangleTo_p_INamed, 0, 0}, {&_swigt__p_FitStrategyDefault, _p_FitStrategyDefaultTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorGauss, _p_FormFactorGaussTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorLongRipple2Gauss, _p_FormFactorLongRipple2GaussTo_p_INamed, 0, 0}, {&_swigt__p_Geometry__VerticalLine, _p_Geometry__VerticalLineTo_p_INamed, 0, 0}, {&_swigt__p_IFormFactorBorn, _p_IFormFactorBornTo_p_INamed, 0, 0}, {&_swigt__p_IDetectorResolution, _p_IDetectorResolutionTo_p_INamed, 0, 0}, {&_swigt__p_IClusteredParticles, _p_IClusteredParticlesTo_p_INamed, 0, 0}, {&_swigt__p_IMultiLayerBuilder, _p_IMultiLayerBuilderTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorTrivial, _p_FormFactorTrivialTo_p_INamed, 0, 0}, {&_swigt__p_INamed, 0, 0, 0}, {&_swigt__p_DistributionGate, _p_DistributionGateTo_p_INamed, 0, 0}, {&_swigt__p_IFTDistribution1D, _p_IFTDistribution1DTo_p_INamed, 0, 0}, {&_swigt__p_IFTDecayFunction1D, _p_IFTDecayFunction1DTo_p_INamed, 0, 0}, {&_swigt__p_IDistribution1D, _p_IDistribution1DTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorCone, _p_FormFactorConeTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorRipple1, _p_FormFactorRipple1To_p_INamed, 0, 0}, {&_swigt__p_Layer, _p_LayerTo_p_INamed, 0, 0}, {&_swigt__p_IMaterial, _p_IMaterialTo_p_INamed, 0, 0}, {&_swigt__p_HomogeneousMaterial, _p_HomogeneousMaterialTo_p_INamed, 0, 0}, {&_swigt__p_HomogeneousMagneticMaterial, _p_HomogeneousMagneticMaterialTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorAnisoPyramid, _p_FormFactorAnisoPyramidTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorPyramid, _p_FormFactorPyramidTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorDecoratorDebyeWaller, _p_FormFactorDecoratorDebyeWallerTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorRipple2, _p_FormFactorRipple2To_p_INamed, 0, 0}, {&_swigt__p_FormFactorEllipsoidalCylinder, _p_FormFactorEllipsoidalCylinderTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorCylinder, _p_FormFactorCylinderTo_p_INamed, 0, 0}, {&_swigt__p_DistributionGaussian, _p_DistributionGaussianTo_p_INamed, 0, 0}, {&_swigt__p_ResolutionFunction2DGaussian, _p_ResolutionFunction2DGaussianTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorSphereUniformRadius, _p_FormFactorSphereUniformRadiusTo_p_INamed, 0, 0}, {&_swigt__p_Geometry__Line, _p_Geometry__LineTo_p_INamed, 0, 0}, {&_swigt__p_FTDistribution1DCosine, _p_FTDistribution1DCosineTo_p_INamed, 0, 0}, {&_swigt__p_FTDistribution1DGate, _p_FTDistribution1DGateTo_p_INamed, 0, 0}, {&_swigt__p_DistributionCosine, _p_DistributionCosineTo_p_INamed, 0, 0}, {&_swigt__p_FTDistribution2DVoigt, _p_FTDistribution2DVoigtTo_p_INamed, 0, 0}, {&_swigt__p_FTDecayFunction2DVoigt, _p_FTDecayFunction2DVoigtTo_p_INamed, 0, 0}, {&_swigt__p_FTDistribution1DCauchy, _p_FTDistribution1DCauchyTo_p_INamed, 0, 0}, {&_swigt__p_FTDecayFunction1DCauchy, _p_FTDecayFunction1DCauchyTo_p_INamed, 0, 0}, {&_swigt__p_FTDistribution2DCauchy, _p_FTDistribution2DCauchyTo_p_INamed, 0, 0}, {&_swigt__p_FTDecayFunction2DCauchy, _p_FTDecayFunction2DCauchyTo_p_INamed, 0, 0}, {&_swigt__p_IInterferenceFunction, _p_IInterferenceFunctionTo_p_INamed, 0, 0}, {&_swigt__p_FitObject, _p_FitObjectTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorCone6, _p_FormFactorCone6To_p_INamed, 0, 0}, {&_swigt__p_FormFactorLongRipple1Gauss, _p_FormFactorLongRipple1GaussTo_p_INamed, 0, 0}, {&_swigt__p_Beam, _p_BeamTo_p_INamed, 0, 0}, {&_swigt__p_IFitStrategy, _p_IFitStrategyTo_p_INamed, 0, 0}, {&_swigt__p_IFormFactorDecorator, _p_IFormFactorDecoratorTo_p_INamed, 0, 0}, {&_swigt__p_IParameterized, _p_IParameterizedTo_p_INamed, 0, 0}, {&_swigt__p_IRoughness, _p_IRoughnessTo_p_INamed, 0, 0}, {&_swigt__p_LayerRoughness, _p_LayerRoughnessTo_p_INamed, 0, 0}, {&_swigt__p_InterferenceFunctionRadialParaCrystal, _p_InterferenceFunctionRadialParaCrystalTo_p_INamed, 0, 0}, {&_swigt__p_InterferenceFunction2DParaCrystal, _p_InterferenceFunction2DParaCrystalTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorCrystal, _p_FormFactorCrystalTo_p_INamed, 0, 0}, {&_swigt__p_Crystal, _p_CrystalTo_p_INamed, 0, 0}, {&_swigt__p_IFTDecayFunction2D, _p_IFTDecayFunction2DTo_p_INamed, 0, 0}, {&_swigt__p_IFTDistribution2D, _p_IFTDistribution2DTo_p_INamed, 0, 0}, {&_swigt__p_IResolutionFunction2D, _p_IResolutionFunction2DTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorWeighted, _p_FormFactorWeightedTo_p_INamed, 0, 0}, {&_swigt__p_RealParameter, _p_RealParameterTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorLorentz, _p_FormFactorLorentzTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorLongRipple2Lorentz, _p_FormFactorLongRipple2LorentzTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorLongRipple1Lorentz, _p_FormFactorLongRipple1LorentzTo_p_INamed, 0, 0}, {&_swigt__p_FormFactorLongBoxLorentz, _p_FormFactorLongBoxLorentzTo_p_INamed, 0, 0}, {&_swigt__p_InterferenceFunction1DLattice, _p_InterferenceFunction1DLatticeTo_p_INamed, 0, 0}, {&_swigt__p_InterferenceFunction2DLattice, _p_InterferenceFunction2DLatticeTo_p_INamed, 0, 0}, {&_swigt__p_DistributionLorentz, _p_DistributionLorentzTo_p_INamed, 0, 0}, {&_swigt__p_FTDistribution1DTriangle, _p_FTDistribution1DTriangleTo_p_INamed, 0, 0}, {&_swigt__p_FTDecayFunction1DTriangle, _p_FTDecayFunction1DTriangleTo_p_INamed, 0, 0}, {&_swigt__p_RotationEuler, _p_RotationEulerTo_p_INamed, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_IObservable[] = { {&_swigt__p_IObservable, 0, 0, 0}, {&_swigt__p_FitSuite, _p_FitSuiteTo_p_IObservable, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_IObserver[] = { {&_swigt__p_IObserver, 0, 0, 0}, {&_swigt__p_IFitObserver, _p_IFitObserverTo_p_IObserver, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_IParameterized[] = { {&_swigt__p_FormFactorBox, _p_FormFactorBoxTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorSphereLogNormalRadius, _p_FormFactorSphereLogNormalRadiusTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorSphereGaussianRadius, _p_FormFactorSphereGaussianRadiusTo_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_FTDecayFunction1DGauss, _p_FTDecayFunction1DGaussTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDistribution1DGauss, _p_FTDistribution1DGaussTo_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_IntensityScaleAndShiftNormalizer, _p_IntensityScaleAndShiftNormalizerTo_p_IParameterized, 0, 0}, {&_swigt__p_IntensityNormalizer, _p_IntensityNormalizerTo_p_IParameterized, 0, 0}, {&_swigt__p_IIntensityNormalizer, _p_IIntensityNormalizerTo_p_IParameterized, 0, 0}, {&_swigt__p_RectangularDetector, _p_RectangularDetectorTo_p_IParameterized, 0, 0}, {&_swigt__p_IsGISAXSDetector, _p_IsGISAXSDetectorTo_p_IParameterized, 0, 0}, {&_swigt__p_SphericalDetector, _p_SphericalDetectorTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorPrism3, _p_FormFactorPrism3To_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_FormFactorPolyhedron, _p_FormFactorPolyhedronTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorTetrahedron, _p_FormFactorTetrahedronTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorPrism6, _p_FormFactorPrism6To_p_IParameterized, 0, 0}, {&_swigt__p_SpecularSimulation, _p_SpecularSimulationTo_p_IParameterized, 0, 0}, {&_swigt__p_Simulation, _p_SimulationTo_p_IParameterized, 0, 0}, {&_swigt__p_GISASSimulation, _p_GISASSimulationTo_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_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_ISample, _p_ISampleTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorPolygonalSurface, _p_FormFactorPolygonalSurfaceTo_p_IParameterized, 0, 0}, {&_swigt__p_ICompositeSample, _p_ICompositeSampleTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorLongBoxGauss, _p_FormFactorLongBoxGaussTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorPolygonalPrism, _p_FormFactorPolygonalPrismTo_p_IParameterized, 0, 0}, {&_swigt__p_FitSuiteObjects, _p_FitSuiteObjectsTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDistribution2DGate, _p_FTDistribution2DGateTo_p_IParameterized, 0, 0}, {&_swigt__p_DistributionLogNormal, _p_DistributionLogNormalTo_p_IParameterized, 0, 0}, {&_swigt__p_Instrument, _p_InstrumentTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDistribution1DVoigt, _p_FTDistribution1DVoigtTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDecayFunction1DVoigt, _p_FTDecayFunction1DVoigtTo_p_IParameterized, 0, 0}, {&_swigt__p_IRotation, _p_IRotationTo_p_IParameterized, 0, 0}, {&_swigt__p_RotationX, _p_RotationXTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorTruncatedSpheroid, _p_FormFactorTruncatedSpheroidTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorFullSpheroid, _p_FormFactorFullSpheroidTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorTruncatedCube, _p_FormFactorTruncatedCubeTo_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_FormFactorGauss, _p_FormFactorGaussTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorLongRipple2Gauss, _p_FormFactorLongRipple2GaussTo_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_Particle, _p_ParticleTo_p_IParameterized, 0, 0}, {&_swigt__p_IParticle, _p_IParticleTo_p_IParameterized, 0, 0}, {&_swigt__p_IAbstractParticle, _p_IAbstractParticleTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorTrivial, _p_FormFactorTrivialTo_p_IParameterized, 0, 0}, {&_swigt__p_DistributionGate, _p_DistributionGateTo_p_IParameterized, 0, 0}, {&_swigt__p_IFTDistribution1D, _p_IFTDistribution1DTo_p_IParameterized, 0, 0}, {&_swigt__p_IFTDecayFunction1D, _p_IFTDecayFunction1DTo_p_IParameterized, 0, 0}, {&_swigt__p_IDistribution1D, _p_IDistribution1DTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorCone, _p_FormFactorConeTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorRipple1, _p_FormFactorRipple1To_p_IParameterized, 0, 0}, {&_swigt__p_Layer, _p_LayerTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorAnisoPyramid, _p_FormFactorAnisoPyramidTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorPyramid, _p_FormFactorPyramidTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorDecoratorDebyeWaller, _p_FormFactorDecoratorDebyeWallerTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorRipple2, _p_FormFactorRipple2To_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_ParticleComposition, _p_ParticleCompositionTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorSphereUniformRadius, _p_FormFactorSphereUniformRadiusTo_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_FitObject, _p_FitObjectTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorCone6, _p_FormFactorCone6To_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorLongRipple1Gauss, _p_FormFactorLongRipple1GaussTo_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_IRoughness, _p_IRoughnessTo_p_IParameterized, 0, 0}, {&_swigt__p_LayerRoughness, _p_LayerRoughnessTo_p_IParameterized, 0, 0}, {&_swigt__p_Crystal, _p_CrystalTo_p_IParameterized, 0, 0}, {&_swigt__p_InterferenceFunctionRadialParaCrystal, _p_InterferenceFunctionRadialParaCrystalTo_p_IParameterized, 0, 0}, {&_swigt__p_InterferenceFunction2DParaCrystal, _p_InterferenceFunction2DParaCrystalTo_p_IParameterized, 0, 0}, {&_swigt__p_MesoCrystal, _p_MesoCrystalTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorCrystal, _p_FormFactorCrystalTo_p_IParameterized, 0, 0}, {&_swigt__p_IFTDecayFunction2D, _p_IFTDecayFunction2DTo_p_IParameterized, 0, 0}, {&_swigt__p_IFTDistribution2D, _p_IFTDistribution2DTo_p_IParameterized, 0, 0}, {&_swigt__p_IResolutionFunction2D, _p_IResolutionFunction2DTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorWeighted, _p_FormFactorWeightedTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorLorentz, _p_FormFactorLorentzTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorLongRipple2Lorentz, _p_FormFactorLongRipple2LorentzTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorLongRipple1Lorentz, _p_FormFactorLongRipple1LorentzTo_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_DistributionLorentz, _p_DistributionLorentzTo_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_FormFactorSphereLogNormalRadius, _p_FormFactorSphereLogNormalRadiusTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorSphereGaussianRadius, _p_FormFactorSphereGaussianRadiusTo_p_IParameterized, 0, 0}, {&_swigt__p_MultiLayer, _p_MultiLayerTo_p_IParameterized, 0, 0}, {&_swigt__p_ParameterDistribution, _p_ParameterDistributionTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDecayFunction1DGauss, _p_FTDecayFunction1DGaussTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDistribution1DGauss, _p_FTDistribution1DGaussTo_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_IntensityScaleAndShiftNormalizer, _p_IntensityScaleAndShiftNormalizerTo_p_IParameterized, 0, 0}, {&_swigt__p_IntensityNormalizer, _p_IntensityNormalizerTo_p_IParameterized, 0, 0}, {&_swigt__p_IIntensityNormalizer, _p_IIntensityNormalizerTo_p_IParameterized, 0, 0}, {&_swigt__p_RectangularDetector, _p_RectangularDetectorTo_p_IParameterized, 0, 0}, {&_swigt__p_IsGISAXSDetector, _p_IsGISAXSDetectorTo_p_IParameterized, 0, 0}, {&_swigt__p_SphericalDetector, _p_SphericalDetectorTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorPrism3, _p_FormFactorPrism3To_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_FormFactorPolyhedron, _p_FormFactorPolyhedronTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorTetrahedron, _p_FormFactorTetrahedronTo_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_OffSpecSimulation, _p_OffSpecSimulationTo_p_IParameterized, 0, 0}, {&_swigt__p_SpecularSimulation, _p_SpecularSimulationTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDistribution2DCone, _p_FTDistribution2DConeTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorTruncatedSphere, _p_FormFactorTruncatedSphereTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorFullSphere, _p_FormFactorFullSphereTo_p_IParameterized, 0, 0}, {&_swigt__p_IFormFactor, _p_IFormFactorTo_p_IParameterized, 0, 0}, {&_swigt__p_ICompositeSample, _p_ICompositeSampleTo_p_IParameterized, 0, 0}, {&_swigt__p_ISample, _p_ISampleTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorPolygonalSurface, _p_FormFactorPolygonalSurfaceTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorLongBoxGauss, _p_FormFactorLongBoxGaussTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorPolygonalPrism, _p_FormFactorPolygonalPrismTo_p_IParameterized, 0, 0}, {&_swigt__p_FitSuiteObjects, _p_FitSuiteObjectsTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDistribution2DGate, _p_FTDistribution2DGateTo_p_IParameterized, 0, 0}, {&_swigt__p_DistributionLogNormal, _p_DistributionLogNormalTo_p_IParameterized, 0, 0}, {&_swigt__p_Instrument, _p_InstrumentTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDistribution1DVoigt, _p_FTDistribution1DVoigtTo_p_IParameterized, 0, 0}, {&_swigt__p_FTDecayFunction1DVoigt, _p_FTDecayFunction1DVoigtTo_p_IParameterized, 0, 0}, {&_swigt__p_IRotation, _p_IRotationTo_p_IParameterized, 0, 0}, {&_swigt__p_RotationX, _p_RotationXTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorTruncatedSpheroid, _p_FormFactorTruncatedSpheroidTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorFullSpheroid, _p_FormFactorFullSpheroidTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorTruncatedCube, _p_FormFactorTruncatedCubeTo_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_FormFactorGauss, _p_FormFactorGaussTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorLongRipple2Gauss, _p_FormFactorLongRipple2GaussTo_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_FormFactorTrivial, _p_FormFactorTrivialTo_p_IParameterized, 0, 0}, {&_swigt__p_DistributionGate, _p_DistributionGateTo_p_IParameterized, 0, 0}, {&_swigt__p_IFTDistribution1D, _p_IFTDistribution1DTo_p_IParameterized, 0, 0}, {&_swigt__p_IFTDecayFunction1D, _p_IFTDecayFunction1DTo_p_IParameterized, 0, 0}, {&_swigt__p_IDistribution1D, _p_IDistribution1DTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorCone, _p_FormFactorConeTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorRipple1, _p_FormFactorRipple1To_p_IParameterized, 0, 0}, {&_swigt__p_Layer, _p_LayerTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorAnisoPyramid, _p_FormFactorAnisoPyramidTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorPyramid, _p_FormFactorPyramidTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorDecoratorDebyeWaller, _p_FormFactorDecoratorDebyeWallerTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorRipple2, _p_FormFactorRipple2To_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_FormFactorSphereUniformRadius, _p_FormFactorSphereUniformRadiusTo_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_FitObject, _p_FitObjectTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorCone6, _p_FormFactorCone6To_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorLongRipple1Gauss, _p_FormFactorLongRipple1GaussTo_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_IRoughness, _p_IRoughnessTo_p_IParameterized, 0, 0}, {&_swigt__p_LayerRoughness, _p_LayerRoughnessTo_p_IParameterized, 0, 0}, {&_swigt__p_Crystal, _p_CrystalTo_p_IParameterized, 0, 0}, {&_swigt__p_InterferenceFunctionRadialParaCrystal, _p_InterferenceFunctionRadialParaCrystalTo_p_IParameterized, 0, 0}, {&_swigt__p_InterferenceFunction2DParaCrystal, _p_InterferenceFunction2DParaCrystalTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorCrystal, _p_FormFactorCrystalTo_p_IParameterized, 0, 0}, {&_swigt__p_IFTDecayFunction2D, _p_IFTDecayFunction2DTo_p_IParameterized, 0, 0}, {&_swigt__p_IFTDistribution2D, _p_IFTDistribution2DTo_p_IParameterized, 0, 0}, {&_swigt__p_IResolutionFunction2D, _p_IResolutionFunction2DTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorWeighted, _p_FormFactorWeightedTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorLorentz, _p_FormFactorLorentzTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorLongRipple2Lorentz, _p_FormFactorLongRipple2LorentzTo_p_IParameterized, 0, 0}, {&_swigt__p_FormFactorLongRipple1Lorentz, _p_FormFactorLongRipple1LorentzTo_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_DistributionLorentz, _p_DistributionLorentzTo_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_IPixelMap[] = { {&_swigt__p_IPixelMap, 0, 0, 0}, {&_swigt__p_AngularPixelMap, _p_AngularPixelMapTo_p_IPixelMap, 0, 0}, {&_swigt__p_RectPixelMap, _p_RectPixelMapTo_p_IPixelMap, 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_RotationX, _p_RotationXTo_p_IRotation, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_IRoughness[] = { {&_swigt__p_IRoughness, 0, 0, 0}, {&_swigt__p_LayerRoughness, _p_LayerRoughnessTo_p_IRoughness, 0, 0},{0, 0, 0, 0}}; -static swig_cast_info _swigc__p_ISample[] = { {&_swigt__p_Layer, _p_LayerTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorPrism6, _p_FormFactorPrism6To_p_ISample, 0, 0}, {&_swigt__p_FormFactorHemiEllipsoid, _p_FormFactorHemiEllipsoidTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorPolygonalPrism, _p_FormFactorPolygonalPrismTo_p_ISample, 0, 0}, {&_swigt__p_IFormFactor, _p_IFormFactorTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorFullSpheroid, _p_FormFactorFullSpheroidTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorTruncatedSpheroid, _p_FormFactorTruncatedSpheroidTo_p_ISample, 0, 0}, {&_swigt__p_RotationX, _p_RotationXTo_p_ISample, 0, 0}, {&_swigt__p_RotationY, _p_RotationYTo_p_ISample, 0, 0}, {&_swigt__p_RotationZ, _p_RotationZTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorLongBoxGauss, _p_FormFactorLongBoxGaussTo_p_ISample, 0, 0}, {&_swigt__p_ParticleCoreShell, _p_ParticleCoreShellTo_p_ISample, 0, 0}, {&_swigt__p_RotationEuler, _p_RotationEulerTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorRipple1, _p_FormFactorRipple1To_p_ISample, 0, 0}, {&_swigt__p_FormFactorPolygonalSurface, _p_FormFactorPolygonalSurfaceTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorCrystal, _p_FormFactorCrystalTo_p_ISample, 0, 0}, {&_swigt__p_MesoCrystal, _p_MesoCrystalTo_p_ISample, 0, 0}, {&_swigt__p_InterferenceFunction2DParaCrystal, _p_InterferenceFunction2DParaCrystalTo_p_ISample, 0, 0}, {&_swigt__p_InterferenceFunctionRadialParaCrystal, _p_InterferenceFunctionRadialParaCrystalTo_p_ISample, 0, 0}, {&_swigt__p_Crystal, _p_CrystalTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorRipple2, _p_FormFactorRipple2To_p_ISample, 0, 0}, {&_swigt__p_IRotation, _p_IRotationTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorTruncatedCube, _p_FormFactorTruncatedCubeTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorTruncatedSphere, _p_FormFactorTruncatedSphereTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorFullSphere, _p_FormFactorFullSphereTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorLongRipple1Gauss, _p_FormFactorLongRipple1GaussTo_p_ISample, 0, 0}, {&_swigt__p_MultiLayer, _p_MultiLayerTo_p_ISample, 0, 0}, {&_swigt__p_ParticleDistribution, _p_ParticleDistributionTo_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_FormFactorEllipsoidalCylinder, _p_FormFactorEllipsoidalCylinderTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorCylinder, _p_FormFactorCylinderTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorBox, _p_FormFactorBoxTo_p_ISample, 0, 0}, {&_swigt__p_IFormFactorDecorator, _p_IFormFactorDecoratorTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorIcosahedron, _p_FormFactorIcosahedronTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorPolyhedron, _p_FormFactorPolyhedronTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorCuboctahedron, _p_FormFactorCuboctahedronTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorDodecahedron, _p_FormFactorDodecahedronTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorTetrahedron, _p_FormFactorTetrahedronTo_p_ISample, 0, 0}, {&_swigt__p_InterferenceFunctionNone, _p_InterferenceFunctionNoneTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorCone, _p_FormFactorConeTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorCone6, _p_FormFactorCone6To_p_ISample, 0, 0}, {&_swigt__p_ISample, 0, 0, 0}, {&_swigt__p_FormFactorSphereLogNormalRadius, _p_FormFactorSphereLogNormalRadiusTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorSphereGaussianRadius, _p_FormFactorSphereGaussianRadiusTo_p_ISample, 0, 0}, {&_swigt__p_ICompositeSample, _p_ICompositeSampleTo_p_ISample, 0, 0}, {&_swigt__p_IFormFactorBorn, _p_IFormFactorBornTo_p_ISample, 0, 0}, {&_swigt__p_InterferenceFunction1DLattice, _p_InterferenceFunction1DLatticeTo_p_ISample, 0, 0}, {&_swigt__p_InterferenceFunction2DLattice, _p_InterferenceFunction2DLatticeTo_p_ISample, 0, 0}, {&_swigt__p_IClusteredParticles, _p_IClusteredParticlesTo_p_ISample, 0, 0}, {&_swigt__p_IRoughness, _p_IRoughnessTo_p_ISample, 0, 0}, {&_swigt__p_LayerRoughness, _p_LayerRoughnessTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorDecoratorDebyeWaller, _p_FormFactorDecoratorDebyeWallerTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorTrivial, _p_FormFactorTrivialTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorLongBoxLorentz, _p_FormFactorLongBoxLorentzTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorLongRipple1Lorentz, _p_FormFactorLongRipple1LorentzTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorLongRipple2Lorentz, _p_FormFactorLongRipple2LorentzTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorLorentz, _p_FormFactorLorentzTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorWeighted, _p_FormFactorWeightedTo_p_ISample, 0, 0}, {&_swigt__p_ParticleLayout, _p_ParticleLayoutTo_p_ISample, 0, 0}, {&_swigt__p_ILayout, _p_ILayoutTo_p_ISample, 0, 0}, {&_swigt__p_IInterferenceFunction, _p_IInterferenceFunctionTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorPyramid, _p_FormFactorPyramidTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorAnisoPyramid, _p_FormFactorAnisoPyramidTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorPrism3, _p_FormFactorPrism3To_p_ISample, 0, 0}, {&_swigt__p_FormFactorSphereUniformRadius, _p_FormFactorSphereUniformRadiusTo_p_ISample, 0, 0}, {&_swigt__p_ParticleComposition, _p_ParticleCompositionTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorLongRipple2Gauss, _p_FormFactorLongRipple2GaussTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorGauss, _p_FormFactorGaussTo_p_ISample, 0, 0},{0, 0, 0, 0}}; +static swig_cast_info _swigc__p_ISample[] = { {&_swigt__p_Layer, _p_LayerTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorPrism6, _p_FormFactorPrism6To_p_ISample, 0, 0}, {&_swigt__p_FormFactorHemiEllipsoid, _p_FormFactorHemiEllipsoidTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorPolygonalPrism, _p_FormFactorPolygonalPrismTo_p_ISample, 0, 0}, {&_swigt__p_IFormFactor, _p_IFormFactorTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorFullSpheroid, _p_FormFactorFullSpheroidTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorTruncatedSpheroid, _p_FormFactorTruncatedSpheroidTo_p_ISample, 0, 0}, {&_swigt__p_RotationX, _p_RotationXTo_p_ISample, 0, 0}, {&_swigt__p_RotationY, _p_RotationYTo_p_ISample, 0, 0}, {&_swigt__p_RotationZ, _p_RotationZTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorLongBoxGauss, _p_FormFactorLongBoxGaussTo_p_ISample, 0, 0}, {&_swigt__p_RotationEuler, _p_RotationEulerTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorRipple1, _p_FormFactorRipple1To_p_ISample, 0, 0}, {&_swigt__p_FormFactorPolygonalSurface, _p_FormFactorPolygonalSurfaceTo_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_Crystal, _p_CrystalTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorRipple2, _p_FormFactorRipple2To_p_ISample, 0, 0}, {&_swigt__p_IRotation, _p_IRotationTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorTruncatedCube, _p_FormFactorTruncatedCubeTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorTruncatedSphere, _p_FormFactorTruncatedSphereTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorFullSphere, _p_FormFactorFullSphereTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorLongRipple1Gauss, _p_FormFactorLongRipple1GaussTo_p_ISample, 0, 0}, {&_swigt__p_MultiLayer, _p_MultiLayerTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorEllipsoidalCylinder, _p_FormFactorEllipsoidalCylinderTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorCylinder, _p_FormFactorCylinderTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorBox, _p_FormFactorBoxTo_p_ISample, 0, 0}, {&_swigt__p_IFormFactorDecorator, _p_IFormFactorDecoratorTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorIcosahedron, _p_FormFactorIcosahedronTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorPolyhedron, _p_FormFactorPolyhedronTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorCuboctahedron, _p_FormFactorCuboctahedronTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorDodecahedron, _p_FormFactorDodecahedronTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorTetrahedron, _p_FormFactorTetrahedronTo_p_ISample, 0, 0}, {&_swigt__p_InterferenceFunctionNone, _p_InterferenceFunctionNoneTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorCone, _p_FormFactorConeTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorCone6, _p_FormFactorCone6To_p_ISample, 0, 0}, {&_swigt__p_ISample, 0, 0, 0}, {&_swigt__p_FormFactorSphereLogNormalRadius, _p_FormFactorSphereLogNormalRadiusTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorSphereGaussianRadius, _p_FormFactorSphereGaussianRadiusTo_p_ISample, 0, 0}, {&_swigt__p_ICompositeSample, _p_ICompositeSampleTo_p_ISample, 0, 0}, {&_swigt__p_IFormFactorBorn, _p_IFormFactorBornTo_p_ISample, 0, 0}, {&_swigt__p_InterferenceFunction1DLattice, _p_InterferenceFunction1DLatticeTo_p_ISample, 0, 0}, {&_swigt__p_InterferenceFunction2DLattice, _p_InterferenceFunction2DLatticeTo_p_ISample, 0, 0}, {&_swigt__p_IClusteredParticles, _p_IClusteredParticlesTo_p_ISample, 0, 0}, {&_swigt__p_IRoughness, _p_IRoughnessTo_p_ISample, 0, 0}, {&_swigt__p_LayerRoughness, _p_LayerRoughnessTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorDecoratorDebyeWaller, _p_FormFactorDecoratorDebyeWallerTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorTrivial, _p_FormFactorTrivialTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorLongBoxLorentz, _p_FormFactorLongBoxLorentzTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorLongRipple1Lorentz, _p_FormFactorLongRipple1LorentzTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorLongRipple2Lorentz, _p_FormFactorLongRipple2LorentzTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorLorentz, _p_FormFactorLorentzTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorWeighted, _p_FormFactorWeightedTo_p_ISample, 0, 0}, {&_swigt__p_ILayout, _p_ILayoutTo_p_ISample, 0, 0}, {&_swigt__p_ParticleLayout, _p_ParticleLayoutTo_p_ISample, 0, 0}, {&_swigt__p_IInterferenceFunction, _p_IInterferenceFunctionTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorPyramid, _p_FormFactorPyramidTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorAnisoPyramid, _p_FormFactorAnisoPyramidTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorPrism3, _p_FormFactorPrism3To_p_ISample, 0, 0}, {&_swigt__p_FormFactorSphereUniformRadius, _p_FormFactorSphereUniformRadiusTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorLongRipple2Gauss, _p_FormFactorLongRipple2GaussTo_p_ISample, 0, 0}, {&_swigt__p_FormFactorGauss, _p_FormFactorGaussTo_p_ISample, 0, 0},{0, 0, 0, 0}}; static swig_cast_info _swigc__p_ISampleVisitor[] = { {&_swigt__p_ISampleVisitor, 0, 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_ISquaredFunction[] = { {&_swigt__p_SquaredFunctionGaussianError, _p_SquaredFunctionGaussianErrorTo_p_ISquaredFunction, 0, 0}, {&_swigt__p_SquaredFunctionMeanSquaredError, _p_SquaredFunctionMeanSquaredErrorTo_p_ISquaredFunction, 0, 0}, {&_swigt__p_ISquaredFunction, 0, 0, 0}, {&_swigt__p_SquaredFunctionDefault, _p_SquaredFunctionDefaultTo_p_ISquaredFunction, 0, 0}, {&_swigt__p_SquaredFunctionSimError, _p_SquaredFunctionSimErrorTo_p_ISquaredFunction, 0, 0}, {&_swigt__p_SquaredFunctionSystematicError, _p_SquaredFunctionSystematicErrorTo_p_ISquaredFunction, 0, 0},{0, 0, 0, 0}}; -- GitLab