ESyS-Particle  2.3.4
SphAggGougeBlock.hpp
Go to the documentation of this file.
1 // //
3 // Copyright (c) 2003-2017 by The University of Queensland //
4 // Centre for Geoscience Computing //
5 // http://earth.uq.edu.au/centre-geoscience-computing //
6 // //
7 // Primary Business: Brisbane, Queensland, Australia //
8 // Licensed under the Open Software License version 3.0 //
9 // http://www.apache.org/licenses/LICENSE-2.0 //
10 // //
12 
13 namespace esys {
14  namespace lsm {
15 
18  template <typename TmplVisitor>
19  void SphAggGougeBlock::visitParticles(TmplVisitor& visitor)
20  {
22  for(vector<SBG_ptr>::iterator it = m_grainParticleGen.begin();
23  it != m_grainParticleGen.end();
24  it++)
25  {
26  SphereBlockGenerator::ParticleIterator particleIt = (*it)->getParticleIterator();
27  while (particleIt.hasNext()) {
28  particleIt.next()->visit(visitor);
29  }
30  }
31  }
32 
35  template <typename TmplVisitor>
36  void SphAggGougeBlock::visitParticles(TmplVisitor& visitor) const
37  {
39  for(vector<SBG_ptr>::iterator it = m_grainParticleGen.begin();
40  it != m_grainParticleGen.end();
41  it++)
42  {
43  SphereBlockGenerator::ParticleIterator particleIt = (*it)->getParticleIterator();
44  while (particleIt.hasNext()) {
45  particleIt.next()->visit(visitor);
46  }
47  }
48  }
49  } // namespace lsm
50 } // namespace esys
esys::lsm::SphAggGougeBlock::m_grainParticleGen
vector< SBG_ptr > m_grainParticleGen
Definition: SphAggGougeBlock.h:45
esys::lsm::ForwardIterator::hasNext
bool hasNext() const
Definition: StlIterator.h:48
esys::lsm::GougeBlock3D::visitParticles
void visitParticles(TmplVisitor &visitor)
Definition: GougeBlock3D.h:219
esys::lsm::ForwardIterator::next
reference next()
Definition: StlIterator.h:60
esys
Definition: CheckPointable.cpp:17
esys::lsm::ForwardIterator
Definition: StlIterator.h:30
esys::lsm::SphAggGougeBlock::visitParticles
void visitParticles(TmplVisitor &)
Definition: SphAggGougeBlock.hpp:19