Go to the documentation of this file.
14 #ifndef ESYS_LSMGRAINRANDOMBOXPACKER_H
15 #define ESYS_LSMGRAINRANDOMBOXPACKER_H
21 #include <boost/shared_ptr.hpp>
30 template <
typename TmplParticleGrainGen,
typename TmplGrainCollection,
template <
typename TPartGrainGen>
class TmplRndBoxPackerWrap>
43 typename TmplRndBoxPackerWrap<TmplParticleGrainGen>::RandomBoxPackerBase
49 typedef typename Inherited::NTable
NTable;
64 double cubicPackRadius,
65 int maxInsertionFailures
75 double cubicPackRadius,
76 int maxInsertionFailures,
Definition: GrainCollection.h:71
GrainConstIterator getGrainIterator() const
Definition: GrainRandomBoxPacker.hpp:107
GrainId getNextGrainId() const
Definition: GrainRandomBoxPacker.hpp:153
GrainCollection::GrainPoolPtr GrainPoolPtr
Definition: GrainRandomBoxPacker.h:41
void generateCubicPackingGrains()
Definition: GrainRandomBoxPacker.hpp:182
void generateRandomFillGrains()
Definition: GrainRandomBoxPacker.hpp:195
TmplGrain Grain
Definition: GrainCollection.h:33
Inherited::Particle Particle
Definition: GrainRandomBoxPacker.h:48
GrainCollection::Grain Grain
Definition: GrainRandomBoxPacker.h:38
Inherited::ParticleGenerator ParticleGrainGen
Definition: GrainRandomBoxPacker.h:46
std::vector< Plane3D > PlaneVector
Definition: GougeBlock3D.h:32
int getNumGrains() const
Definition: GrainRandomBoxPacker.hpp:114
3D bounding box
Definition: BoundingBox.h:28
Definition: CheckPointable.cpp:17
TmplRndBoxPackerWrap< TmplParticleGrainGen >::RandomBoxPackerBase Inherited
Definition: GrainRandomBoxPacker.h:44
TmplGrainCollection GrainCollection
Definition: GrainRandomBoxPacker.h:34
Inherited::PlaneVector PlaneVector
Definition: GrainRandomBoxPacker.h:54
Grain & constructGrain()
Definition: GrainRandomBoxPacker.hpp:160
void setParticleGrainGen(ParticleGrainGen &particleGrainGen)
Definition: GrainRandomBoxPacker.hpp:135
ParticleGrainGen & getParticleGrainGen()
Definition: GrainRandomBoxPacker.hpp:121
long Id
Definition: Grain.h:36
Grain::Id GrainId
Definition: GrainRandomBoxPacker.h:39
const GrainCollection & getGrainCollection() const
Definition: GrainRandomBoxPacker.hpp:86
Inherited::StuffedParticleIterator StuffedParticleIterator
Definition: GrainRandomBoxPacker.h:55
Inherited::ParticleGeneratorPtr ParticleGrainGenPtr
Definition: GrainRandomBoxPacker.h:47
Definition: GrainRandomBoxPacker.h:32
std::vector< bool > BoolVector
Definition: BlockGenerator.h:28
GrainCollectionPtr m_grainCollectionPtr
Definition: GrainRandomBoxPacker.h:114
Definition: GrainCollection.h:51
Inherited::NTable NTable
Definition: GrainRandomBoxPacker.h:49
virtual void generate()
Definition: GrainRandomBoxPacker.hpp:211
Inherited::ParticleVector ParticleVector
Definition: GrainRandomBoxPacker.h:51
Inherited::ParticlePoolPtr ParticlePoolPtr
Definition: GrainRandomBoxPacker.h:53
GrainRandomBoxPacker(ParticleGrainGenPtr particleGrainGenPtr, ParticlePoolPtr particlePoolPtr, NTablePtr nTablePtr, const BoundingBox &bBox, const BoolVector &periodicDimensions, double tolerance, double cubicPackRadius, int maxInsertionFailures)
Definition: GrainRandomBoxPacker.hpp:55
boost::object_pool< Grain > GrainPool
Definition: GrainCollection.h:40
GrainCollection::GrainIterator GrainIterator
Definition: GrainRandomBoxPacker.h:36
boost::shared_ptr< GrainPool > GrainPoolPtr
Definition: GrainCollection.h:41
boost::shared_ptr< GrainCollection > GrainCollectionPtr
Definition: GrainRandomBoxPacker.h:35
std::vector< SimpleParticle > ParticleVector
Definition: SimpleNTable3D.h:22
Inherited::NTablePtr NTablePtr
Definition: GrainRandomBoxPacker.h:50
Grain & createAndInsertGrain(const Grain &grain)
Definition: GrainRandomBoxPacker.hpp:167
GrainCollection::GrainPool GrainPool
Definition: GrainRandomBoxPacker.h:40
Inherited RandomBoxPackerBase
Definition: GrainRandomBoxPacker.h:45
GrainCollection::GrainConstIterator GrainConstIterator
Definition: GrainRandomBoxPacker.h:37
Inherited::ParticlePool ParticlePool
Definition: GrainRandomBoxPacker.h:52
virtual ~GrainRandomBoxPacker()
Definition: GrainRandomBoxPacker.hpp:80