1 #ifndef ABSTRACT_PARTICLE_H
2 #define ABSTRACT_PARTICLE_H
7 template <
class T,
unsigned Dim>
63 virtual void create(
size_t) = 0;
66 virtual void destroy(
size_t,
size_t,
bool =
false) = 0;
ParticleAttrib< SingleParticlePos_t > ParticlePos_t
virtual void performDestroy(bool updateLocalNum=false)=0
virtual size_t getLocalNum() const =0
virtual ~AbstractParticle()
ParticleLayout< T, Dim >::Index_t Index_t
ParticleAttrib< Index_t > ParticleIndex_t
ParticleLayout< T, Dim >::UpdateFlags UpdateFlags
virtual void ghostDestroy(size_t M, size_t I)=0
virtual void setLocalNum(size_t n)=0
virtual void createWithID(unsigned id)=0
virtual Layout_t & getLayout()=0
virtual void setMinimumNumberOfParticlesPerCore(unsigned int n)=0
ParticleLayout< T, Dim > Layout_t
virtual bool singleInitNode() const =0
virtual unsigned int getMinimumNumberOfParticlesPerCore() const =0
virtual void create(size_t)=0
virtual void addAttribute(ParticleAttribBase &pa)=0
virtual void setTotalNum(size_t n)=0
virtual void globalCreate(size_t np)=0
virtual void setUpdateFlag(UpdateFlags f, bool val)=0
virtual size_t getTotalNum() const =0
virtual void setBConds(const ParticleBConds< Position_t, Dim > &bc)=0
virtual void destroy(size_t, size_t, bool=false)=0
virtual size_t getGhostNum() const =0
virtual ParticleBConds< Position_t, Dim > & getBConds()=0
virtual size_t getDestroyNum() const =0
virtual bool getUpdateFlag(UpdateFlags f) const =0
ParticleLayout< T, Dim >::SingleParticlePos_t SingleParticlePos_t
ParticleLayout< T, Dim >::Position_t Position_t