diff --git a/Resample/Particle/ReMesocrystal.cpp b/Resample/Particle/ReMesocrystal.cpp index 688b5283737604985fbf125aa76e9a6878a9df2d..dd115242bf00ebbc1bd3a27a2c998a9e3bb5ce2a 100644 --- a/Resample/Particle/ReMesocrystal.cpp +++ b/Resample/Particle/ReMesocrystal.cpp @@ -15,9 +15,10 @@ #include "Resample/Particle/ReMesocrystal.h" #include "Base/Math/Constants.h" #include "Base/Vector/WavevectorInfo.h" +#include "Resample/Particle/ReParticle.h" ReMesocrystal::ReMesocrystal(const Lattice3D& lattice, const IReParticle& basis, - const IReParticle& outer_shape, double position_variance) + const ReParticle& outer_shape, double position_variance) : m_lattice(lattice) , m_basis(basis.clone()) , m_outer_shape(outer_shape.clone()) @@ -32,6 +33,16 @@ ReMesocrystal::~ReMesocrystal() delete m_outer_shape; } +double ReMesocrystal::volume() const +{ + return m_outer_shape->volume(); +} + +double ReMesocrystal::radialExtension() const +{ + return m_outer_shape->radialExtension(); +} + double ReMesocrystal::bottomZ(const IRotation* rotation) const { return m_outer_shape->bottomZ(rotation); diff --git a/Resample/Particle/ReMesocrystal.h b/Resample/Particle/ReMesocrystal.h index 803c917bfaad897ab77a22dd67770470d76f00fe..89d102efd567abb67209f67475c974ffcdbdd3df 100644 --- a/Resample/Particle/ReMesocrystal.h +++ b/Resample/Particle/ReMesocrystal.h @@ -22,12 +22,14 @@ #include "Resample/Particle/IReParticle.h" #include "Sample/Lattice/Lattice3D.h" +class ReParticle; + //! A reprocessed MesoCrystal. class ReMesocrystal : public IReParticle { public: - ReMesocrystal(const Lattice3D& lattice, const IReParticle& basis, - const IReParticle& outer_shape, double position_variance = 0.0); + ReMesocrystal(const Lattice3D& lattice, const IReParticle& basis, const ReParticle& outer_shape, + double position_variance = 0.0); ~ReMesocrystal() override; ReMesocrystal* clone() const override @@ -40,8 +42,8 @@ public: m_basis->setAmbientMaterial(material); } - double volume() const override { return m_outer_shape->volume(); } - double radialExtension() const override { return m_outer_shape->radialExtension(); } + double volume() const override; + double radialExtension() const override; double bottomZ(const IRotation* rotation) const override; @@ -58,7 +60,7 @@ private: Lattice3D m_lattice; IReParticle* m_basis; - IReParticle* m_outer_shape; //!< The outer shape of this mesocrystal + ReParticle* m_outer_shape; //!< The outer shape of this mesocrystal double m_position_variance; double m_max_rec_length; }; diff --git a/auto/Wrap/doxygenResample.i b/auto/Wrap/doxygenResample.i index 4f48ae52ea718bdcc0b759e4021c5454b284b82f..216cd1b5932f1afca01214a57190d5b1470a421a 100644 --- a/auto/Wrap/doxygenResample.i +++ b/auto/Wrap/doxygenResample.i @@ -567,7 +567,7 @@ A reprocessed MesoCrystal. C++ includes: ReMesocrystal.h "; -%feature("docstring") ReMesocrystal::ReMesocrystal "ReMesocrystal::ReMesocrystal(const Lattice3D &lattice, const IReParticle &basis, const IReParticle &outer_shape, double position_variance=0.0) +%feature("docstring") ReMesocrystal::ReMesocrystal "ReMesocrystal::ReMesocrystal(const Lattice3D &lattice, const IReParticle &basis, const ReParticle &outer_shape, double position_variance=0.0) "; %feature("docstring") ReMesocrystal::~ReMesocrystal "ReMesocrystal::~ReMesocrystal() override