diff --git a/Core/Samples/inc/ParticleDistribution.h b/Core/Samples/inc/ParticleDistribution.h index a4d829e689ff97e4048dd799bb93d89fefabea1e..ae41541cde73f81c6e5170d2b3557e7cfccd73e3 100644 --- a/Core/Samples/inc/ParticleDistribution.h +++ b/Core/Samples/inc/ParticleDistribution.h @@ -27,7 +27,7 @@ class ParticleInfo; //! @ingroup samples //! @brief A particle with a form factor and refractive index -class BA_CORE_API_ ParticleDistribution : public IParticle +class BA_CORE_API_ ParticleDistribution : public IAbstractParticle { public: ParticleDistribution(const IParticle &prototype, const ParameterDistribution &par_distr); @@ -59,14 +59,6 @@ public: return mP_particle->getAmbientMaterial(); } - //! Should not be called for objects of this class: - //! The object should spawn particles that will create the - //! required form factors - virtual IFormFactor *createTransformedFormFactor(complex_t wavevector_scattering_factor, - const IRotation* p_rotation, - kvector_t translation) const; - - //! Initializes list of new particles generated according to a distribution virtual void generateParticleInfos(std::vector<const IParticle*>& particle_vector, std::vector<double>& abundance_vector, @@ -90,9 +82,6 @@ public: } private: - //! Checks if particle's type is suitable for adding - void checkParticleType(const IParticle& p_particle); - boost::scoped_ptr<IParticle> mP_particle; ParameterDistribution m_par_distribution; }; diff --git a/Core/Samples/src/ParticleDistribution.cpp b/Core/Samples/src/ParticleDistribution.cpp index 2b42092a10b331426bd54e0745285751bcf85d75..70b9e38a5aea8b126baac315782b9f2c82d16fa4 100644 --- a/Core/Samples/src/ParticleDistribution.cpp +++ b/Core/Samples/src/ParticleDistribution.cpp @@ -23,10 +23,6 @@ ParticleDistribution::ParticleDistribution(const IParticle &prototype, : m_par_distribution(par_distr) { setName("ParticleDistribution"); - registerParameter("position_x", &m_position[0]); - registerParameter("position_y", &m_position[1]); - registerParameter("position_z", &m_position[2]); - checkParticleType(prototype); mP_particle.reset(prototype.clone()); registerChild(mP_particle.get()); } @@ -44,14 +40,6 @@ ParticleDistribution *ParticleDistribution::cloneInvertB() const "cloneInvertB: should never be called"); } -IFormFactor *ParticleDistribution::createTransformedFormFactor(complex_t, const IRotation *, - kvector_t) const -{ - throw Exceptions::NotImplementedException( - "ParticleDistribution::" - "createTransformedFormFactor: should never be called"); -} - void ParticleDistribution::generateParticleInfos(std::vector<const IParticle*> &particle_vector, std::vector<double> &abundance_vector, double abundance) const { @@ -110,12 +98,3 @@ void ParticleDistribution::generateParticleInfos(std::vector<const IParticle*> & abundance_vector.push_back(particle_abundance); } } - -void ParticleDistribution::checkParticleType(const IParticle &p_particle) -{ - const ParticleDistribution *p_distr = dynamic_cast<const ParticleDistribution*>(&p_particle); - if (p_distr) { - throw Exceptions::ClassInitializationException("ParticleDistribution::checkParticleType: " - "cannot add ParticleDistribution!"); - } -}