Go to the documentation of this file.
19 #include <boost/limits.hpp>
25 template <
typename TmplGrain>
33 template <
typename TmplGrain>
37 : m_particlePoolPtr(particlePoolPtr),
43 template <
typename TmplGrain>
48 : m_particlePoolPtr(particlePoolPtr),
49 m_grainPoolPtr(grainPoolPtr),
54 template <
typename TmplGrain>
58 return m_particlePoolPtr;
61 template <
typename TmplGrain>
65 return m_grainPoolPtr;
68 template <
typename TmplGrain>
73 template <
typename TmplGrain>
76 return m_grainVector.size();
79 template <
typename TmplGrain>
86 i += it.next().getNumParticles()
93 template <
typename TmplGrain>
97 if (m_grainPoolPtr->is_from(&g))
99 m_grainVector.push_back(&g);
105 "GrainCollection<TmplGrain>::insertRef: Tried to insert"
106 " reference to non-created grain."
111 template <
typename TmplGrain>
115 Grain *pGrain = m_grainPoolPtr->construct(getParticlePoolPtr());
120 template <
typename TmplGrain>
124 Grain *pGrain = m_grainPoolPtr->construct(
id, getParticlePoolPtr());
129 template <
typename TmplGrain>
133 Grain *pGrain = m_grainPoolPtr->construct(g);
138 template <
typename TmplGrain>
145 template <
typename TmplGrain>
Definition: GrainCollection.h:71
bool hasNext() const
Definition: StlIterator.h:100
GrainCollection()
Definition: GrainCollection.hpp:26
TmplGrain Grain
Definition: GrainCollection.h:33
virtual ~GrainCollection()
Definition: GrainCollection.hpp:69
Definition: CheckPointable.cpp:17
ParticleCollection::ParticlePoolPtr ParticlePoolPtr
Definition: GrainCollection.h:37
long Id
Definition: Grain.h:36
int getNumGrains() const
Definition: GrainCollection.hpp:74
GrainIterator getGrainIterator()
Definition: GrainCollection.hpp:140
Definition: GrainCollection.h:51
Grain & createGrain()
Definition: GrainCollection.hpp:113
ParticlePoolPtr getParticlePoolPtr()
Definition: GrainCollection.hpp:56
Definition: StlIterator.h:30
Definition: StlIterator.h:76
int getNumParticles() const
Definition: GrainCollection.hpp:80
boost::object_pool< Grain > GrainPool
Definition: GrainCollection.h:40
boost::shared_ptr< GrainPool > GrainPoolPtr
Definition: GrainCollection.h:41
ParticleCollection::ParticlePool ParticlePool
Definition: GrainCollection.h:36
void insertRef(Grain &g)
Definition: GrainCollection.hpp:95
GrainPoolPtr getGrainPoolPtr()
Definition: GrainCollection.hpp:63