diff --git a/Sample/Particle/IParticle.cpp b/Sample/Particle/IParticle.cpp index ce3c343da35a4245d3b97a17a5fcf8092f0da350..8f7e2dfcedd673676703e61f1db33585ccfc3ae1 100644 --- a/Sample/Particle/IParticle.cpp +++ b/Sample/Particle/IParticle.cpp @@ -30,9 +30,10 @@ SlicedParticle IParticle::createSlicedParticle(const ZLimits&) const "not implemented!"); } -void IParticle::translate(R3 translation) +IParticle* IParticle::translate(R3 translation) { m_position += translation; + return this; } const IRotation* IParticle::rotation() const @@ -45,13 +46,14 @@ void IParticle::setRotation(const IRotation& rotation) m_rotation.reset(rotation.clone()); } -void IParticle::rotate(const IRotation& rotation) +IParticle* IParticle::rotate(const IRotation& rotation) { if (m_rotation) m_rotation.reset(createProduct(rotation, *m_rotation)); else m_rotation.reset(rotation.clone()); m_position = rotation.transformed(m_position); + return this; } std::vector<const INode*> IParticle::nodeChildren() const diff --git a/Sample/Particle/IParticle.h b/Sample/Particle/IParticle.h index 1d933f1eb42f130f44a16a1886c51583f5b07004..290e826cad0411ecd9a942d13c6e54bf61d25836 100644 --- a/Sample/Particle/IParticle.h +++ b/Sample/Particle/IParticle.h @@ -66,8 +66,8 @@ public: //! @param z: z-coordinate in nanometers void setParticlePosition(double x, double y, double z) { m_position = R3(x, y, z); } - //! Translates the particle - void translate(R3 translation); + //! Translates the particle, and returns this. + IParticle* translate(R3 translation); //! Returns rotation object const IRotation* rotation() const; @@ -75,8 +75,8 @@ public: //! Sets transformation. void setRotation(const IRotation& rotation); - //! Rotates the particle - void rotate(const IRotation& rotation); + //! Rotates the particle, and returns this. + IParticle* rotate(const IRotation& rotation); std::vector<const INode*> nodeChildren() const override; diff --git a/Sample/Particle/Particle.h b/Sample/Particle/Particle.h index c5eb190b911e287e93e77eaabd627eb87741bea3..2e09cf725811b9a7ec60eec0bb6a251468d778c7 100644 --- a/Sample/Particle/Particle.h +++ b/Sample/Particle/Particle.h @@ -31,12 +31,12 @@ public: std::string className() const override { return "Particle"; } std::vector<const INode*> nodeChildren() const override; + SlicedParticle createSlicedParticle(const ZLimits& limits) const override; + const Material* material() const override { return &m_material; } const IFormFactor* formFactor() const { return m_form_factor.get(); } - SlicedParticle createSlicedParticle(const ZLimits& limits) const override; - private: const Material m_material; std::unique_ptr<const IFormFactor> m_form_factor; diff --git a/Sample/Particle/ParticleComposition.cpp b/Sample/Particle/ParticleComposition.cpp index fbfc1c0e5dec43794bc04f9b8e698db4be6f7d60..77ba558ee058069dbf8f850435943a14f7dc39b2 100644 --- a/Sample/Particle/ParticleComposition.cpp +++ b/Sample/Particle/ParticleComposition.cpp @@ -18,13 +18,6 @@ ParticleComposition::ParticleComposition() { - initialize(); -} - -ParticleComposition::ParticleComposition(const IParticle& particle, std::vector<R3> positions) -{ - initialize(); - addParticles(particle, positions); } ParticleComposition::~ParticleComposition() = default; @@ -41,6 +34,40 @@ ParticleComposition* ParticleComposition::clone() const return result; } +std::vector<const INode*> ParticleComposition::nodeChildren() const +{ + std::vector<const INode*> result = IParticle::nodeChildren(); + for (const auto& P_particle : m_particles) + result.push_back(P_particle.get()); + return result; +} + +SafePointerVector<IParticle> ParticleComposition::decompose() const +{ + SafePointerVector<IParticle> result; + const auto* rot = rotation(); + auto translation = particlePosition(); + for (const auto& particle : m_particles) { + const auto sublist = particle->decompose(); + for (auto* subparticle : sublist) { + if (rot) + subparticle->rotate(*rot); + subparticle->translate(translation); + result.push_back(subparticle->clone()); + } + } + return result; +} + +ZLimits ParticleComposition::zSpan() const +{ + const auto particles = decompose(); + ZLimits result = particles[check_index(0)]->zSpan(); + for (const auto& particle : particles) + result = ZLimits::enclosingInterval(result, particle->zSpan()); + return result; +} + IFormFactor* ParticleComposition::createFormFactor() const { if (m_particles.empty()) @@ -56,15 +83,12 @@ IFormFactor* ParticleComposition::createFormFactor() const void ParticleComposition::addParticle(const IParticle& particle) { - IParticle* np = particle.clone(); - addParticlePointer(np); + m_particles.emplace_back(particle.clone()); } void ParticleComposition::addParticle(const IParticle& particle, R3 position) { - IParticle* np = particle.clone(); - np->translate(position); - addParticlePointer(np); + m_particles.emplace_back(particle.clone()->translate(position)); } // Please note, that positions is not const reference here. This is intentional, to @@ -83,40 +107,6 @@ std::vector<const IParticle*> ParticleComposition::particles() const return result; } -std::vector<const INode*> ParticleComposition::nodeChildren() const -{ - std::vector<const INode*> result = IParticle::nodeChildren(); - for (const auto& P_particle : m_particles) - result.push_back(P_particle.get()); - return result; -} - -SafePointerVector<IParticle> ParticleComposition::decompose() const -{ - SafePointerVector<IParticle> result; - const auto* rot = rotation(); - auto translation = particlePosition(); - for (const auto& particle : m_particles) { - const auto sublist = particle->decompose(); - for (auto* subparticle : sublist) { - if (rot) - subparticle->rotate(*rot); - subparticle->translate(translation); - result.push_back(subparticle->clone()); - } - } - return result; -} - -ZLimits ParticleComposition::zSpan() const -{ - const auto particles = decompose(); - ZLimits result = particles[check_index(0)]->zSpan(); - for (const auto& particle : particles) - result = ZLimits::enclosingInterval(result, particle->zSpan()); - return result; -} - size_t ParticleComposition::check_index(size_t index) const { return index < m_particles.size() @@ -124,10 +114,3 @@ size_t ParticleComposition::check_index(size_t index) const : throw std::runtime_error( "ParticleComposition::check_index() -> Index is out of bounds"); } - -void ParticleComposition::addParticlePointer(IParticle* p_particle) -{ - m_particles.emplace_back(p_particle); -} - -void ParticleComposition::initialize() {} diff --git a/Sample/Particle/ParticleComposition.h b/Sample/Particle/ParticleComposition.h index 0a180d2ce30299d8789004f646d28b491927fc35..f39453179a489ccbbfc2c6417a655976322f1f48 100644 --- a/Sample/Particle/ParticleComposition.h +++ b/Sample/Particle/ParticleComposition.h @@ -23,14 +23,17 @@ class ParticleComposition : public IParticle { public: - inline static const std::string class_name = "ParticleComposition"; - std::string className() const final { return class_name; } - ParticleComposition(); - ParticleComposition(const IParticle& particle, std::vector<R3> positions); ~ParticleComposition() override; + ParticleComposition* clone() const override; + std::string className() const final { return "ParticleComposition"; } + std::vector<const INode*> nodeChildren() const override; + + SafePointerVector<IParticle> decompose() const override; + + ZLimits zSpan() const override; IFormFactor* createFormFactor() const override; @@ -43,20 +46,10 @@ public: std::vector<const IParticle*> particles() const; - std::vector<const INode*> nodeChildren() const override; - - SafePointerVector<IParticle> decompose() const override; - - ZLimits zSpan() const override; - private: size_t check_index(size_t index) const; - //! For internal use - void addParticlePointer(IParticle* p_particle); - std::vector<std::unique_ptr<IParticle>> m_particles; - void initialize(); }; #endif // BORNAGAIN_SAMPLE_PARTICLE_PARTICLECOMPOSITION_H diff --git a/auto/Wrap/doxygenSample.i b/auto/Wrap/doxygenSample.i index f6255eb6927e8353bb511ae77f67282e3299e146..3c852235c2f786e955bf8621fc571bd638623bd4 100644 --- a/auto/Wrap/doxygenSample.i +++ b/auto/Wrap/doxygenSample.i @@ -3539,9 +3539,9 @@ z: z-coordinate in nanometers "; -%feature("docstring") IParticle::translate "void IParticle::translate(R3 translation) +%feature("docstring") IParticle::translate "IParticle * IParticle::translate(R3 translation) -Translates the particle. +Translates the particle, and returns this. "; %feature("docstring") IParticle::rotation "const IRotation * IParticle::rotation() const @@ -3554,9 +3554,9 @@ Returns rotation object. Sets transformation. "; -%feature("docstring") IParticle::rotate "void IParticle::rotate(const IRotation &rotation) +%feature("docstring") IParticle::rotate "IParticle * IParticle::rotate(const IRotation &rotation) -Rotates the particle. +Rotates the particle, and returns this. "; %feature("docstring") IParticle::nodeChildren "std::vector< const INode * > IParticle::nodeChildren() const override @@ -4567,9 +4567,6 @@ A particle with a form factor and refractive index. C++ includes: Particle.h "; -%feature("docstring") Particle::className "std::string Particle::className() const override -"; - %feature("docstring") Particle::Particle "Particle::Particle(Material material, const IFormFactor &form_factor) "; @@ -4584,6 +4581,12 @@ C++ includes: Particle.h Returns a clone of this ISampleNode object. "; +%feature("docstring") Particle::className "std::string Particle::className() const override +"; + +%feature("docstring") Particle::nodeChildren "std::vector< const INode * > Particle::nodeChildren() const override +"; + %feature("docstring") Particle::createSlicedParticle "SlicedParticle Particle::createSlicedParticle(const ZLimits &limits) const override Creates a sliced form factor for this particle. @@ -4594,9 +4597,6 @@ Creates a sliced form factor for this particle. Returns nullptr, unless overwritten to return a specific material. "; -%feature("docstring") Particle::nodeChildren "std::vector< const INode * > Particle::nodeChildren() const override -"; - %feature("docstring") Particle::formFactor "const IFormFactor* Particle::formFactor() const "; @@ -4609,15 +4609,9 @@ A composition of particles at fixed positions C++ includes: ParticleComposition.h "; -%feature("docstring") ParticleComposition::className "std::string ParticleComposition::className() const final -"; - %feature("docstring") ParticleComposition::ParticleComposition "ParticleComposition::ParticleComposition() "; -%feature("docstring") ParticleComposition::ParticleComposition "ParticleComposition::ParticleComposition(const IParticle &particle, std::vector< R3 > positions) -"; - %feature("docstring") ParticleComposition::~ParticleComposition "ParticleComposition::~ParticleComposition() override "; @@ -4626,6 +4620,22 @@ C++ includes: ParticleComposition.h Returns a clone of this ISampleNode object. "; +%feature("docstring") ParticleComposition::className "std::string ParticleComposition::className() const final +"; + +%feature("docstring") ParticleComposition::nodeChildren "std::vector< const INode * > ParticleComposition::nodeChildren() const override +"; + +%feature("docstring") ParticleComposition::decompose "SafePointerVector< IParticle > ParticleComposition::decompose() const override + +Decompose in constituent IParticle objects. +"; + +%feature("docstring") ParticleComposition::zSpan "ZLimits ParticleComposition::zSpan() const override + +Top and bottom z-coordinate. +"; + %feature("docstring") ParticleComposition::createFormFactor "IFormFactor * ParticleComposition::createFormFactor() const override Creates a form factor for this particle. @@ -4648,19 +4658,6 @@ Returns number of different particles. %feature("docstring") ParticleComposition::particles "std::vector< const IParticle * > ParticleComposition::particles() const "; -%feature("docstring") ParticleComposition::nodeChildren "std::vector< const INode * > ParticleComposition::nodeChildren() const override -"; - -%feature("docstring") ParticleComposition::decompose "SafePointerVector< IParticle > ParticleComposition::decompose() const override - -Decompose in constituent IParticle objects. -"; - -%feature("docstring") ParticleComposition::zSpan "ZLimits ParticleComposition::zSpan() const override - -Top and bottom z-coordinate. -"; - // File: classParticleCoreShell.xml %feature("docstring") ParticleCoreShell " diff --git a/auto/Wrap/libBornAgainSample.py b/auto/Wrap/libBornAgainSample.py index 94d5c50f9cfa3e4b42a02a83cb05fa85cd5f8b18..7ae6dd180269ba88115229a2945cf7ddcc15b7af 100644 --- a/auto/Wrap/libBornAgainSample.py +++ b/auto/Wrap/libBornAgainSample.py @@ -4415,10 +4415,10 @@ class IParticle(ISampleNode): def translate(self, translation): r""" - translate(IParticle self, R3 translation) - void IParticle::translate(R3 translation) + translate(IParticle self, R3 translation) -> IParticle + IParticle * IParticle::translate(R3 translation) - Translates the particle. + Translates the particle, and returns this. """ return _libBornAgainSample.IParticle_translate(self, translation) @@ -4445,10 +4445,10 @@ class IParticle(ISampleNode): def rotate(self, rotation): r""" - rotate(IParticle self, IRotation rotation) - void IParticle::rotate(const IRotation &rotation) + rotate(IParticle self, IRotation rotation) -> IParticle + IParticle * IParticle::rotate(const IRotation &rotation) - Rotates the particle. + Rotates the particle, and returns this. """ return _libBornAgainSample.IParticle_rotate(self, rotation) @@ -4576,14 +4576,6 @@ class Particle(IParticle): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr - def className(self): - r""" - className(Particle self) -> std::string - std::string Particle::className() const override - - """ - return _libBornAgainSample.Particle_className(self) - def __init__(self, *args): r""" __init__(Particle self, Material material, IFormFactor form_factor) -> Particle @@ -4604,6 +4596,22 @@ class Particle(IParticle): """ return _libBornAgainSample.Particle_clone(self) + def className(self): + r""" + className(Particle self) -> std::string + std::string Particle::className() const override + + """ + return _libBornAgainSample.Particle_className(self) + + def nodeChildren(self): + r""" + nodeChildren(Particle self) -> swig_dummy_type_const_inode_vector + std::vector< const INode * > Particle::nodeChildren() const override + + """ + return _libBornAgainSample.Particle_nodeChildren(self) + def createSlicedParticle(self, limits): r""" createSlicedParticle(Particle self, ZLimits const & limits) -> SlicedParticle @@ -4624,14 +4632,6 @@ class Particle(IParticle): """ return _libBornAgainSample.Particle_material(self) - def nodeChildren(self): - r""" - nodeChildren(Particle self) -> swig_dummy_type_const_inode_vector - std::vector< const INode * > Particle::nodeChildren() const override - - """ - return _libBornAgainSample.Particle_nodeChildren(self) - def formFactor(self): r""" formFactor(Particle self) -> IFormFactor @@ -4655,8 +4655,25 @@ class ParticleComposition(IParticle): thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag") __repr__ = _swig_repr - class_name = _libBornAgainSample.ParticleComposition_class_name - + + def __init__(self): + r""" + __init__(ParticleComposition self) -> ParticleComposition + ParticleComposition::ParticleComposition() + + """ + _libBornAgainSample.ParticleComposition_swiginit(self, _libBornAgainSample.new_ParticleComposition()) + __swig_destroy__ = _libBornAgainSample.delete_ParticleComposition + + def clone(self): + r""" + clone(ParticleComposition self) -> ParticleComposition + ParticleComposition * ParticleComposition::clone() const override + + Returns a clone of this ISampleNode object. + + """ + return _libBornAgainSample.ParticleComposition_clone(self) def className(self): r""" @@ -4666,25 +4683,33 @@ class ParticleComposition(IParticle): """ return _libBornAgainSample.ParticleComposition_className(self) - def __init__(self, *args): + def nodeChildren(self): r""" - __init__(ParticleComposition self) -> ParticleComposition - __init__(ParticleComposition self, IParticle particle, vector_R3 positions) -> ParticleComposition - ParticleComposition::ParticleComposition(const IParticle &particle, std::vector< R3 > positions) + nodeChildren(ParticleComposition self) -> swig_dummy_type_const_inode_vector + std::vector< const INode * > ParticleComposition::nodeChildren() const override """ - _libBornAgainSample.ParticleComposition_swiginit(self, _libBornAgainSample.new_ParticleComposition(*args)) - __swig_destroy__ = _libBornAgainSample.delete_ParticleComposition + return _libBornAgainSample.ParticleComposition_nodeChildren(self) - def clone(self): + def decompose(self): r""" - clone(ParticleComposition self) -> ParticleComposition - ParticleComposition * ParticleComposition::clone() const override + decompose(ParticleComposition self) -> SafePointerVector< IParticle > + SafePointerVector< IParticle > ParticleComposition::decompose() const override - Returns a clone of this ISampleNode object. + Decompose in constituent IParticle objects. """ - return _libBornAgainSample.ParticleComposition_clone(self) + return _libBornAgainSample.ParticleComposition_decompose(self) + + def zSpan(self): + r""" + zSpan(ParticleComposition self) -> ZLimits + ZLimits ParticleComposition::zSpan() const override + + Top and bottom z-coordinate. + + """ + return _libBornAgainSample.ParticleComposition_zSpan(self) def createFormFactor(self): r""" @@ -4731,34 +4756,6 @@ class ParticleComposition(IParticle): """ return _libBornAgainSample.ParticleComposition_particles(self) - def nodeChildren(self): - r""" - nodeChildren(ParticleComposition self) -> swig_dummy_type_const_inode_vector - std::vector< const INode * > ParticleComposition::nodeChildren() const override - - """ - return _libBornAgainSample.ParticleComposition_nodeChildren(self) - - def decompose(self): - r""" - decompose(ParticleComposition self) -> SafePointerVector< IParticle > - SafePointerVector< IParticle > ParticleComposition::decompose() const override - - Decompose in constituent IParticle objects. - - """ - return _libBornAgainSample.ParticleComposition_decompose(self) - - def zSpan(self): - r""" - zSpan(ParticleComposition self) -> ZLimits - ZLimits ParticleComposition::zSpan() const override - - Top and bottom z-coordinate. - - """ - return _libBornAgainSample.ParticleComposition_zSpan(self) - # Register ParticleComposition in _libBornAgainSample: _libBornAgainSample.ParticleComposition_swigregister(ParticleComposition) diff --git a/auto/Wrap/libBornAgainSample_wrap.cpp b/auto/Wrap/libBornAgainSample_wrap.cpp index 971d822b913c6ea6e54f88436a6a4f163949078a..a5160cbce2d2e4aef1424d261e07a752e8db1cb1 100644 --- a/auto/Wrap/libBornAgainSample_wrap.cpp +++ b/auto/Wrap/libBornAgainSample_wrap.cpp @@ -43584,6 +43584,7 @@ SWIGINTERN PyObject *_wrap_IParticle_translate(PyObject *SWIGUNUSEDPARM(self), P void *argp2 ; int res2 = 0 ; PyObject *swig_obj[2] ; + IParticle *result = 0 ; if (!SWIG_Python_UnpackTuple(args, "IParticle_translate", 2, 2, swig_obj)) SWIG_fail; res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_IParticle, 0 | 0 ); @@ -43604,8 +43605,8 @@ SWIGINTERN PyObject *_wrap_IParticle_translate(PyObject *SWIGUNUSEDPARM(self), P if (SWIG_IsNewObj(res2)) delete temp; } } - (arg1)->translate(arg2); - resultobj = SWIG_Py_Void(); + result = (IParticle *)(arg1)->translate(arg2); + resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_IParticle, 0 | 0 ); return resultobj; fail: return NULL; @@ -43676,6 +43677,7 @@ SWIGINTERN PyObject *_wrap_IParticle_rotate(PyObject *SWIGUNUSEDPARM(self), PyOb void *argp2 = 0 ; int res2 = 0 ; PyObject *swig_obj[2] ; + IParticle *result = 0 ; if (!SWIG_Python_UnpackTuple(args, "IParticle_rotate", 2, 2, swig_obj)) SWIG_fail; res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_IParticle, 0 | 0 ); @@ -43691,8 +43693,8 @@ SWIGINTERN PyObject *_wrap_IParticle_rotate(PyObject *SWIGUNUSEDPARM(self), PyOb SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "IParticle_rotate" "', argument " "2"" of type '" "IRotation const &""'"); } arg2 = reinterpret_cast< IRotation * >(argp2); - (arg1)->rotate((IRotation const &)*arg2); - resultobj = SWIG_Py_Void(); + result = (IParticle *)(arg1)->rotate((IRotation const &)*arg2); + resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_IParticle, 0 | 0 ); return resultobj; fail: return NULL; @@ -44001,29 +44003,6 @@ SWIGINTERN PyObject *MesoCrystal_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObje return SWIG_Python_InitShadowInstance(args); } -SWIGINTERN PyObject *_wrap_Particle_className(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - Particle *arg1 = (Particle *) 0 ; - void *argp1 = 0 ; - int res1 = 0 ; - PyObject *swig_obj[1] ; - std::string result; - - if (!args) SWIG_fail; - swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Particle, 0 | 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Particle_className" "', argument " "1"" of type '" "Particle const *""'"); - } - arg1 = reinterpret_cast< Particle * >(argp1); - result = ((Particle const *)arg1)->className(); - resultobj = SWIG_From_std_string(static_cast< std::string >(result)); - return resultobj; -fail: - return NULL; -} - - SWIGINTERN PyObject *_wrap_new_Particle__SWIG_0(PyObject *SWIGUNUSEDPARM(self), Py_ssize_t nobjs, PyObject **swig_obj) { PyObject *resultobj = 0; SwigValueWrapper< Material > arg1 ; @@ -44206,6 +44185,52 @@ fail: } +SWIGINTERN PyObject *_wrap_Particle_className(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + Particle *arg1 = (Particle *) 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + PyObject *swig_obj[1] ; + std::string result; + + if (!args) SWIG_fail; + swig_obj[0] = args; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Particle, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Particle_className" "', argument " "1"" of type '" "Particle const *""'"); + } + arg1 = reinterpret_cast< Particle * >(argp1); + result = ((Particle const *)arg1)->className(); + resultobj = SWIG_From_std_string(static_cast< std::string >(result)); + return resultobj; +fail: + return NULL; +} + + +SWIGINTERN PyObject *_wrap_Particle_nodeChildren(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + Particle *arg1 = (Particle *) 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + PyObject *swig_obj[1] ; + std::vector< INode const *,std::allocator< INode const * > > result; + + if (!args) SWIG_fail; + swig_obj[0] = args; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Particle, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Particle_nodeChildren" "', argument " "1"" of type '" "Particle const *""'"); + } + arg1 = reinterpret_cast< Particle * >(argp1); + result = ((Particle const *)arg1)->nodeChildren(); + resultobj = swig::from(static_cast< std::vector< INode const*,std::allocator< INode const * > > >(result)); + return resultobj; +fail: + return NULL; +} + + SWIGINTERN PyObject *_wrap_Particle_createSlicedParticle(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; Particle *arg1 = (Particle *) 0 ; @@ -44264,29 +44289,6 @@ fail: } -SWIGINTERN PyObject *_wrap_Particle_nodeChildren(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - Particle *arg1 = (Particle *) 0 ; - void *argp1 = 0 ; - int res1 = 0 ; - PyObject *swig_obj[1] ; - std::vector< INode const *,std::allocator< INode const * > > result; - - if (!args) SWIG_fail; - swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_Particle, 0 | 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "Particle_nodeChildren" "', argument " "1"" of type '" "Particle const *""'"); - } - arg1 = reinterpret_cast< Particle * >(argp1); - result = ((Particle const *)arg1)->nodeChildren(); - resultobj = swig::from(static_cast< std::vector< INode const*,std::allocator< INode const * > > >(result)); - return resultobj; -fail: - return NULL; -} - - SWIGINTERN PyObject *_wrap_Particle_formFactor(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; Particle *arg1 = (Particle *) 0 ; @@ -44328,148 +44330,150 @@ SWIGINTERN PyObject *Particle_swiginit(PyObject *SWIGUNUSEDPARM(self), PyObject return SWIG_Python_InitShadowInstance(args); } -SWIGINTERN PyObject *_wrap_ParticleComposition_className(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_new_ParticleComposition(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + ParticleComposition *result = 0 ; + + if (!SWIG_Python_UnpackTuple(args, "new_ParticleComposition", 0, 0, 0)) SWIG_fail; + result = (ParticleComposition *)new ParticleComposition(); + resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_ParticleComposition, SWIG_POINTER_NEW | 0 ); + return resultobj; +fail: + return NULL; +} + + +SWIGINTERN PyObject *_wrap_delete_ParticleComposition(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; ParticleComposition *arg1 = (ParticleComposition *) 0 ; void *argp1 = 0 ; int res1 = 0 ; PyObject *swig_obj[1] ; - std::string result; if (!args) SWIG_fail; swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_ParticleComposition, 0 | 0 ); + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_ParticleComposition, SWIG_POINTER_DISOWN | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ParticleComposition_className" "', argument " "1"" of type '" "ParticleComposition const *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_ParticleComposition" "', argument " "1"" of type '" "ParticleComposition *""'"); } arg1 = reinterpret_cast< ParticleComposition * >(argp1); - result = ((ParticleComposition const *)arg1)->className(); - resultobj = SWIG_From_std_string(static_cast< std::string >(result)); + delete arg1; + resultobj = SWIG_Py_Void(); return resultobj; fail: return NULL; } -SWIGINTERN PyObject *_wrap_new_ParticleComposition__SWIG_0(PyObject *SWIGUNUSEDPARM(self), Py_ssize_t nobjs, PyObject **SWIGUNUSEDPARM(swig_obj)) { +SWIGINTERN PyObject *_wrap_ParticleComposition_clone(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; + ParticleComposition *arg1 = (ParticleComposition *) 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + PyObject *swig_obj[1] ; ParticleComposition *result = 0 ; - if ((nobjs < 0) || (nobjs > 0)) SWIG_fail; - result = (ParticleComposition *)new ParticleComposition(); - resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_ParticleComposition, SWIG_POINTER_NEW | 0 ); + if (!args) SWIG_fail; + swig_obj[0] = args; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_ParticleComposition, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ParticleComposition_clone" "', argument " "1"" of type '" "ParticleComposition const *""'"); + } + arg1 = reinterpret_cast< ParticleComposition * >(argp1); + result = (ParticleComposition *)((ParticleComposition const *)arg1)->clone(); + resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_ParticleComposition, 0 | 0 ); return resultobj; fail: return NULL; } -SWIGINTERN PyObject *_wrap_new_ParticleComposition__SWIG_1(PyObject *SWIGUNUSEDPARM(self), Py_ssize_t nobjs, PyObject **swig_obj) { +SWIGINTERN PyObject *_wrap_ParticleComposition_className(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; - IParticle *arg1 = 0 ; - std::vector< R3,std::allocator< R3 > > arg2 ; + ParticleComposition *arg1 = (ParticleComposition *) 0 ; void *argp1 = 0 ; int res1 = 0 ; - ParticleComposition *result = 0 ; + PyObject *swig_obj[1] ; + std::string result; - if ((nobjs < 2) || (nobjs > 2)) SWIG_fail; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1, SWIGTYPE_p_IParticle, 0 | 0); + if (!args) SWIG_fail; + swig_obj[0] = args; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_ParticleComposition, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "new_ParticleComposition" "', argument " "1"" of type '" "IParticle const &""'"); - } - if (!argp1) { - SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "new_ParticleComposition" "', argument " "1"" of type '" "IParticle const &""'"); - } - arg1 = reinterpret_cast< IParticle * >(argp1); - { - std::vector< Vec3< double >,std::allocator< Vec3< double > > > *ptr = (std::vector< Vec3< double >,std::allocator< Vec3< double > > > *)0; - int res = swig::asptr(swig_obj[1], &ptr); - if (!SWIG_IsOK(res) || !ptr) { - SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), "in method '" "new_ParticleComposition" "', argument " "2"" of type '" "std::vector< R3,std::allocator< R3 > >""'"); - } - arg2 = *ptr; - if (SWIG_IsNewObj(res)) delete ptr; + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ParticleComposition_className" "', argument " "1"" of type '" "ParticleComposition const *""'"); } - result = (ParticleComposition *)new ParticleComposition((IParticle const &)*arg1,arg2); - resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_ParticleComposition, SWIG_POINTER_NEW | 0 ); + arg1 = reinterpret_cast< ParticleComposition * >(argp1); + result = ((ParticleComposition const *)arg1)->className(); + resultobj = SWIG_From_std_string(static_cast< std::string >(result)); return resultobj; fail: return NULL; } -SWIGINTERN PyObject *_wrap_new_ParticleComposition(PyObject *self, PyObject *args) { - Py_ssize_t argc; - PyObject *argv[3] = { - 0 - }; +SWIGINTERN PyObject *_wrap_ParticleComposition_nodeChildren(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { + PyObject *resultobj = 0; + ParticleComposition *arg1 = (ParticleComposition *) 0 ; + void *argp1 = 0 ; + int res1 = 0 ; + PyObject *swig_obj[1] ; + std::vector< INode const *,std::allocator< INode const * > > result; - if (!(argc = SWIG_Python_UnpackTuple(args, "new_ParticleComposition", 0, 2, argv))) SWIG_fail; - --argc; - if (argc == 0) { - return _wrap_new_ParticleComposition__SWIG_0(self, argc, argv); - } - if (argc == 2) { - int _v; - int res = SWIG_ConvertPtr(argv[0], 0, SWIGTYPE_p_IParticle, SWIG_POINTER_NO_NULL | 0); - _v = SWIG_CheckState(res); - if (_v) { - int res = swig::asptr(argv[1], (std::vector< Vec3< double >,std::allocator< Vec3< double > > >**)(0)); - _v = SWIG_CheckState(res); - if (_v) { - return _wrap_new_ParticleComposition__SWIG_1(self, argc, argv); - } - } + if (!args) SWIG_fail; + swig_obj[0] = args; + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_ParticleComposition, 0 | 0 ); + if (!SWIG_IsOK(res1)) { + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ParticleComposition_nodeChildren" "', argument " "1"" of type '" "ParticleComposition const *""'"); } - + arg1 = reinterpret_cast< ParticleComposition * >(argp1); + result = ((ParticleComposition const *)arg1)->nodeChildren(); + resultobj = swig::from(static_cast< std::vector< INode const*,std::allocator< INode const * > > >(result)); + return resultobj; fail: - SWIG_Python_RaiseOrModifyTypeError("Wrong number or type of arguments for overloaded function 'new_ParticleComposition'.\n" - " Possible C/C++ prototypes are:\n" - " ParticleComposition::ParticleComposition()\n" - " ParticleComposition::ParticleComposition(IParticle const &,std::vector< R3,std::allocator< R3 > >)\n"); - return 0; + return NULL; } -SWIGINTERN PyObject *_wrap_delete_ParticleComposition(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_ParticleComposition_decompose(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; ParticleComposition *arg1 = (ParticleComposition *) 0 ; void *argp1 = 0 ; int res1 = 0 ; PyObject *swig_obj[1] ; + SwigValueWrapper< SafePointerVector< IParticle > > result; if (!args) SWIG_fail; swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_ParticleComposition, SWIG_POINTER_DISOWN | 0 ); + res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_ParticleComposition, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_ParticleComposition" "', argument " "1"" of type '" "ParticleComposition *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ParticleComposition_decompose" "', argument " "1"" of type '" "ParticleComposition const *""'"); } arg1 = reinterpret_cast< ParticleComposition * >(argp1); - delete arg1; - resultobj = SWIG_Py_Void(); + result = ((ParticleComposition const *)arg1)->decompose(); + resultobj = SWIG_NewPointerObj((new SafePointerVector< IParticle >(static_cast< const SafePointerVector< IParticle >& >(result))), SWIGTYPE_p_SafePointerVectorT_IParticle_t, SWIG_POINTER_OWN | 0 ); return resultobj; fail: return NULL; } -SWIGINTERN PyObject *_wrap_ParticleComposition_clone(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { +SWIGINTERN PyObject *_wrap_ParticleComposition_zSpan(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *resultobj = 0; ParticleComposition *arg1 = (ParticleComposition *) 0 ; void *argp1 = 0 ; int res1 = 0 ; PyObject *swig_obj[1] ; - ParticleComposition *result = 0 ; + ZLimits result; if (!args) SWIG_fail; swig_obj[0] = args; res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_ParticleComposition, 0 | 0 ); if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ParticleComposition_clone" "', argument " "1"" of type '" "ParticleComposition const *""'"); + SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ParticleComposition_zSpan" "', argument " "1"" of type '" "ParticleComposition const *""'"); } arg1 = reinterpret_cast< ParticleComposition * >(argp1); - result = (ParticleComposition *)((ParticleComposition const *)arg1)->clone(); - resultobj = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_ParticleComposition, 0 | 0 ); + result = ((ParticleComposition const *)arg1)->zSpan(); + resultobj = SWIG_NewPointerObj((new ZLimits(static_cast< const ZLimits& >(result))), SWIGTYPE_p_ZLimits, SWIG_POINTER_OWN | 0 ); return resultobj; fail: return NULL; @@ -44720,75 +44724,6 @@ fail: } -SWIGINTERN PyObject *_wrap_ParticleComposition_nodeChildren(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - ParticleComposition *arg1 = (ParticleComposition *) 0 ; - void *argp1 = 0 ; - int res1 = 0 ; - PyObject *swig_obj[1] ; - std::vector< INode const *,std::allocator< INode const * > > result; - - if (!args) SWIG_fail; - swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_ParticleComposition, 0 | 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ParticleComposition_nodeChildren" "', argument " "1"" of type '" "ParticleComposition const *""'"); - } - arg1 = reinterpret_cast< ParticleComposition * >(argp1); - result = ((ParticleComposition const *)arg1)->nodeChildren(); - resultobj = swig::from(static_cast< std::vector< INode const*,std::allocator< INode const * > > >(result)); - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *_wrap_ParticleComposition_decompose(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - ParticleComposition *arg1 = (ParticleComposition *) 0 ; - void *argp1 = 0 ; - int res1 = 0 ; - PyObject *swig_obj[1] ; - SwigValueWrapper< SafePointerVector< IParticle > > result; - - if (!args) SWIG_fail; - swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_ParticleComposition, 0 | 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ParticleComposition_decompose" "', argument " "1"" of type '" "ParticleComposition const *""'"); - } - arg1 = reinterpret_cast< ParticleComposition * >(argp1); - result = ((ParticleComposition const *)arg1)->decompose(); - resultobj = SWIG_NewPointerObj((new SafePointerVector< IParticle >(static_cast< const SafePointerVector< IParticle >& >(result))), SWIGTYPE_p_SafePointerVectorT_IParticle_t, SWIG_POINTER_OWN | 0 ); - return resultobj; -fail: - return NULL; -} - - -SWIGINTERN PyObject *_wrap_ParticleComposition_zSpan(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { - PyObject *resultobj = 0; - ParticleComposition *arg1 = (ParticleComposition *) 0 ; - void *argp1 = 0 ; - int res1 = 0 ; - PyObject *swig_obj[1] ; - ZLimits result; - - if (!args) SWIG_fail; - swig_obj[0] = args; - res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_ParticleComposition, 0 | 0 ); - if (!SWIG_IsOK(res1)) { - SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "ParticleComposition_zSpan" "', argument " "1"" of type '" "ParticleComposition const *""'"); - } - arg1 = reinterpret_cast< ParticleComposition * >(argp1); - result = ((ParticleComposition const *)arg1)->zSpan(); - resultobj = SWIG_NewPointerObj((new ZLimits(static_cast< const ZLimits& >(result))), SWIGTYPE_p_ZLimits, SWIG_POINTER_OWN | 0 ); - return resultobj; -fail: - return NULL; -} - - SWIGINTERN PyObject *ParticleComposition_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) { PyObject *obj; if (!SWIG_Python_UnpackTuple(args, "swigregister", 1, 1, &obj)) return NULL; @@ -69273,10 +69208,10 @@ static PyMethodDef SwigMethods[] = { "\n" ""}, { "IParticle_translate", _wrap_IParticle_translate, METH_VARARGS, "\n" - "IParticle_translate(IParticle self, R3 translation)\n" - "void IParticle::translate(R3 translation)\n" + "IParticle_translate(IParticle self, R3 translation) -> IParticle\n" + "IParticle * IParticle::translate(R3 translation)\n" "\n" - "Translates the particle. \n" + "Translates the particle, and returns this. \n" "\n" ""}, { "IParticle_rotation", _wrap_IParticle_rotation, METH_O, "\n" @@ -69294,10 +69229,10 @@ static PyMethodDef SwigMethods[] = { "\n" ""}, { "IParticle_rotate", _wrap_IParticle_rotate, METH_VARARGS, "\n" - "IParticle_rotate(IParticle self, IRotation rotation)\n" - "void IParticle::rotate(const IRotation &rotation)\n" + "IParticle_rotate(IParticle self, IRotation rotation) -> IParticle\n" + "IParticle * IParticle::rotate(const IRotation &rotation)\n" "\n" - "Rotates the particle. \n" + "Rotates the particle, and returns this. \n" "\n" ""}, { "IParticle_nodeChildren", _wrap_IParticle_nodeChildren, METH_O, "\n" @@ -69366,11 +69301,6 @@ static PyMethodDef SwigMethods[] = { ""}, { "MesoCrystal_swigregister", MesoCrystal_swigregister, METH_O, NULL}, { "MesoCrystal_swiginit", MesoCrystal_swiginit, METH_VARARGS, NULL}, - { "Particle_className", _wrap_Particle_className, METH_O, "\n" - "Particle_className(Particle self) -> std::string\n" - "std::string Particle::className() const override\n" - "\n" - ""}, { "new_Particle", _wrap_new_Particle, METH_VARARGS, "\n" "Particle(Material material, IFormFactor form_factor)\n" "new_Particle(Material material, IFormFactor form_factor, IRotation rotation) -> Particle\n" @@ -69389,6 +69319,16 @@ static PyMethodDef SwigMethods[] = { "Returns a clone of this ISampleNode object. \n" "\n" ""}, + { "Particle_className", _wrap_Particle_className, METH_O, "\n" + "Particle_className(Particle self) -> std::string\n" + "std::string Particle::className() const override\n" + "\n" + ""}, + { "Particle_nodeChildren", _wrap_Particle_nodeChildren, METH_O, "\n" + "Particle_nodeChildren(Particle self) -> swig_dummy_type_const_inode_vector\n" + "std::vector< const INode * > Particle::nodeChildren() const override\n" + "\n" + ""}, { "Particle_createSlicedParticle", _wrap_Particle_createSlicedParticle, METH_VARARGS, "\n" "Particle_createSlicedParticle(Particle self, ZLimits const & limits) -> SlicedParticle\n" "SlicedParticle Particle::createSlicedParticle(const ZLimits &limits) const override\n" @@ -69403,11 +69343,6 @@ static PyMethodDef SwigMethods[] = { "Returns nullptr, unless overwritten to return a specific material. \n" "\n" ""}, - { "Particle_nodeChildren", _wrap_Particle_nodeChildren, METH_O, "\n" - "Particle_nodeChildren(Particle self) -> swig_dummy_type_const_inode_vector\n" - "std::vector< const INode * > Particle::nodeChildren() const override\n" - "\n" - ""}, { "Particle_formFactor", _wrap_Particle_formFactor, METH_O, "\n" "Particle_formFactor(Particle self) -> IFormFactor\n" "const IFormFactor* Particle::formFactor() const\n" @@ -69415,15 +69350,9 @@ static PyMethodDef SwigMethods[] = { ""}, { "Particle_swigregister", Particle_swigregister, METH_O, NULL}, { "Particle_swiginit", Particle_swiginit, METH_VARARGS, NULL}, - { "ParticleComposition_className", _wrap_ParticleComposition_className, METH_O, "\n" - "ParticleComposition_className(ParticleComposition self) -> std::string\n" - "std::string ParticleComposition::className() const final\n" - "\n" - ""}, - { "new_ParticleComposition", _wrap_new_ParticleComposition, METH_VARARGS, "\n" - "ParticleComposition()\n" - "new_ParticleComposition(IParticle particle, vector_R3 positions) -> ParticleComposition\n" - "ParticleComposition::ParticleComposition(const IParticle &particle, std::vector< R3 > positions)\n" + { "new_ParticleComposition", _wrap_new_ParticleComposition, METH_NOARGS, "\n" + "new_ParticleComposition() -> ParticleComposition\n" + "ParticleComposition::ParticleComposition()\n" "\n" ""}, { "delete_ParticleComposition", _wrap_delete_ParticleComposition, METH_O, "\n" @@ -69438,6 +69367,30 @@ static PyMethodDef SwigMethods[] = { "Returns a clone of this ISampleNode object. \n" "\n" ""}, + { "ParticleComposition_className", _wrap_ParticleComposition_className, METH_O, "\n" + "ParticleComposition_className(ParticleComposition self) -> std::string\n" + "std::string ParticleComposition::className() const final\n" + "\n" + ""}, + { "ParticleComposition_nodeChildren", _wrap_ParticleComposition_nodeChildren, METH_O, "\n" + "ParticleComposition_nodeChildren(ParticleComposition self) -> swig_dummy_type_const_inode_vector\n" + "std::vector< const INode * > ParticleComposition::nodeChildren() const override\n" + "\n" + ""}, + { "ParticleComposition_decompose", _wrap_ParticleComposition_decompose, METH_O, "\n" + "ParticleComposition_decompose(ParticleComposition self) -> SafePointerVector< IParticle >\n" + "SafePointerVector< IParticle > ParticleComposition::decompose() const override\n" + "\n" + "Decompose in constituent IParticle objects. \n" + "\n" + ""}, + { "ParticleComposition_zSpan", _wrap_ParticleComposition_zSpan, METH_O, "\n" + "ParticleComposition_zSpan(ParticleComposition self) -> ZLimits\n" + "ZLimits ParticleComposition::zSpan() const override\n" + "\n" + "Top and bottom z-coordinate. \n" + "\n" + ""}, { "ParticleComposition_createFormFactor", _wrap_ParticleComposition_createFormFactor, METH_O, "\n" "ParticleComposition_createFormFactor(ParticleComposition self) -> IFormFactor\n" "IFormFactor * ParticleComposition::createFormFactor() const override\n" @@ -69468,25 +69421,6 @@ static PyMethodDef SwigMethods[] = { "std::vector< const IParticle * > ParticleComposition::particles() const\n" "\n" ""}, - { "ParticleComposition_nodeChildren", _wrap_ParticleComposition_nodeChildren, METH_O, "\n" - "ParticleComposition_nodeChildren(ParticleComposition self) -> swig_dummy_type_const_inode_vector\n" - "std::vector< const INode * > ParticleComposition::nodeChildren() const override\n" - "\n" - ""}, - { "ParticleComposition_decompose", _wrap_ParticleComposition_decompose, METH_O, "\n" - "ParticleComposition_decompose(ParticleComposition self) -> SafePointerVector< IParticle >\n" - "SafePointerVector< IParticle > ParticleComposition::decompose() const override\n" - "\n" - "Decompose in constituent IParticle objects. \n" - "\n" - ""}, - { "ParticleComposition_zSpan", _wrap_ParticleComposition_zSpan, METH_O, "\n" - "ParticleComposition_zSpan(ParticleComposition self) -> ZLimits\n" - "ZLimits ParticleComposition::zSpan() const override\n" - "\n" - "Top and bottom z-coordinate. \n" - "\n" - ""}, { "ParticleComposition_swigregister", ParticleComposition_swigregister, METH_O, NULL}, { "ParticleComposition_swiginit", ParticleComposition_swiginit, METH_VARARGS, NULL}, { "ParticleCoreShell_className", _wrap_ParticleCoreShell_className, METH_O, "\n" @@ -76029,7 +75963,6 @@ SWIG_init(void) { SWIG_Python_SetConstant(d, "FormFactorWeighted_class_name",SWIG_From_std_string(static_cast< std::string >(FormFactorWeighted::class_name))); SWIG_Python_SetConstant(d, "Crystal_class_name",SWIG_From_std_string(static_cast< std::string >(Crystal::class_name))); SWIG_Python_SetConstant(d, "MesoCrystal_class_name",SWIG_From_std_string(static_cast< std::string >(MesoCrystal::class_name))); - SWIG_Python_SetConstant(d, "ParticleComposition_class_name",SWIG_From_std_string(static_cast< std::string >(ParticleComposition::class_name))); SWIG_Python_SetConstant(d, "ParticleCoreShell_class_name",SWIG_From_std_string(static_cast< std::string >(ParticleCoreShell::class_name))); SWIG_Python_SetConstant(d, "FTDecayFunction1DCauchy_class_name",SWIG_From_std_string(static_cast< std::string >(FTDecayFunction1DCauchy::class_name))); SWIG_Python_SetConstant(d, "FTDecayFunction1DGauss_class_name",SWIG_From_std_string(static_cast< std::string >(FTDecayFunction1DGauss::class_name)));