ESyS-Particle  2.3.2
esys::lsm::DistConnections< TmplParticle, TmplConnection > Class Template Reference

#include <DistConnections.h>

Inheritance diagram for esys::lsm::DistConnections< TmplParticle, TmplConnection >:
Collaboration diagram for esys::lsm::DistConnections< TmplParticle, TmplConnection >:

Classes

class  Cmp
class  ConstIterator

Public Types

typedef TmplParticle Particle
typedef TmplConnection Connection
typedef int Tag
typedef std::set< Connection
*, Cmp
ConnectionSet
typedef std::vector< Particle * > ParticleVector
typedef CircularNeighbourTable
< Particle
NTable
typedef NTable::ParticleIterator ParticleIterator
typedef
NTable::ParticleConstIterator 
ParticleConstIterator
typedef NTable::BoolVector BoolVector
typedef ForwardConstIterator
< ConnectionSet
ConnectionConstIterator
typedef ConstIterator Iterator

Public Member Functions

 DistConnections (double maxDist, Tag defaultTag=0, const BoundingBox &bBox=BoundingBox(Vec3(-10,-10,-10), Vec3(10, 10, 10)), const BoolVector &circDimensions=BoolVector(3, false))
 ~DistConnections ()
int getNumParticles () const
int getNumConnections () const
double getMinRadius () const
double getMaxRadius () const
ParticleConstIterator getParticleIterator () const
BoundingBox getParticleBBox () const
template<typename TmplParticleIterator >
void create (TmplParticleIterator it)
template<typename TmplParticleIterator >
void create (TmplParticleIterator it, Tag tag)
Tag getDefaultTag () const
void setDefaultTag (Tag defaultTag)
Iterator getIterator () const

Protected Member Functions

void insert (Particle &p)
void createConnection (const Particle &p1, const Particle &p2, Tag tag)

Private Types

typedef boost::shared_ptr< NTableNTablePtr
typedef boost::object_pool
< Connection
ConnectionPool
typedef boost::shared_ptr
< ConnectionPool
ConnectionPoolPtr

Private Attributes

ConnectionPoolPtr m_connectionPoolPtr
ConnectionSet m_connectionSet
NTablePtr m_nTablePtr
double m_minRadius
double m_maxRadius
double m_maxDist
Vec3 m_minPt
Vec3 m_maxPt
Tag m_defaultTag

Member Typedef Documentation

template<typename TmplParticle, typename TmplConnection>
typedef NTable::BoolVector esys::lsm::DistConnections< TmplParticle, TmplConnection >::BoolVector
template<typename TmplParticle, typename TmplConnection>
typedef TmplConnection esys::lsm::DistConnections< TmplParticle, TmplConnection >::Connection
template<typename TmplParticle, typename TmplConnection>
typedef ForwardConstIterator<ConnectionSet> esys::lsm::DistConnections< TmplParticle, TmplConnection >::ConnectionConstIterator
template<typename TmplParticle, typename TmplConnection>
typedef boost::object_pool<Connection> esys::lsm::DistConnections< TmplParticle, TmplConnection >::ConnectionPool
private
template<typename TmplParticle, typename TmplConnection>
typedef boost::shared_ptr<ConnectionPool> esys::lsm::DistConnections< TmplParticle, TmplConnection >::ConnectionPoolPtr
private
template<typename TmplParticle, typename TmplConnection>
typedef std::set<Connection *,Cmp> esys::lsm::DistConnections< TmplParticle, TmplConnection >::ConnectionSet
template<typename TmplParticle, typename TmplConnection>
typedef ConstIterator esys::lsm::DistConnections< TmplParticle, TmplConnection >::Iterator
template<typename TmplParticle, typename TmplConnection>
typedef CircularNeighbourTable<Particle> esys::lsm::DistConnections< TmplParticle, TmplConnection >::NTable
template<typename TmplParticle, typename TmplConnection>
typedef boost::shared_ptr<NTable> esys::lsm::DistConnections< TmplParticle, TmplConnection >::NTablePtr
private
template<typename TmplParticle, typename TmplConnection>
typedef TmplParticle esys::lsm::DistConnections< TmplParticle, TmplConnection >::Particle
template<typename TmplParticle, typename TmplConnection>
typedef NTable::ParticleConstIterator esys::lsm::DistConnections< TmplParticle, TmplConnection >::ParticleConstIterator
template<typename TmplParticle, typename TmplConnection>
typedef NTable::ParticleIterator esys::lsm::DistConnections< TmplParticle, TmplConnection >::ParticleIterator
template<typename TmplParticle, typename TmplConnection>
typedef std::vector<Particle *> esys::lsm::DistConnections< TmplParticle, TmplConnection >::ParticleVector
template<typename TmplParticle, typename TmplConnection>
typedef int esys::lsm::DistConnections< TmplParticle, TmplConnection >::Tag

Constructor & Destructor Documentation

template<typename TmplParticle , typename TmplConnection >
esys::lsm::DistConnections< TmplParticle, TmplConnection >::DistConnections ( double  maxDist,
Tag  defaultTag = 0,
const BoundingBox bBox = BoundingBox(Vec3(-10,-10,-10), Vec3(10,10,10)),
const BoolVector circDimensions = BoolVector(3, false) 
)
template<typename TmplParticle , typename TmplConnection >
esys::lsm::DistConnections< TmplParticle, TmplConnection >::~DistConnections ( )

Member Function Documentation

template<typename TmplParticle , typename TmplConnection >
template<typename TmplParticleIterator >
void esys::lsm::DistConnections< TmplParticle, TmplConnection >::create ( TmplParticleIterator  it)
template<typename TmplParticle , typename TmplConnection >
template<typename TmplParticleIterator >
void esys::lsm::DistConnections< TmplParticle, TmplConnection >::create ( TmplParticleIterator  it,
Tag  tag 
)

References console, Console::Debug(), and esys::lsm::StringUtil::toString().

Here is the call graph for this function:

template<typename TmplParticle , typename TmplConnection >
void esys::lsm::DistConnections< TmplParticle, TmplConnection >::createConnection ( const Particle p1,
const Particle p2,
Tag  tag 
)
protected
template<typename TmplParticle , typename TmplConnection >
DistConnections< TmplParticle, TmplConnection >::Tag esys::lsm::DistConnections< TmplParticle, TmplConnection >::getDefaultTag ( ) const
template<typename TmplParticle, typename TmplConnection>
Iterator esys::lsm::DistConnections< TmplParticle, TmplConnection >::getIterator ( ) const
inline
template<typename TmplParticle , typename TmplConnection >
double esys::lsm::DistConnections< TmplParticle, TmplConnection >::getMaxRadius ( ) const
template<typename TmplParticle , typename TmplConnection >
double esys::lsm::DistConnections< TmplParticle, TmplConnection >::getMinRadius ( ) const
template<typename TmplParticle , typename TmplConnection >
int esys::lsm::DistConnections< TmplParticle, TmplConnection >::getNumConnections ( ) const
template<typename TmplParticle , typename TmplConnection >
int esys::lsm::DistConnections< TmplParticle, TmplConnection >::getNumParticles ( ) const
template<typename TmplParticle , typename TmplConnection >
BoundingBox esys::lsm::DistConnections< TmplParticle, TmplConnection >::getParticleBBox ( ) const
template<typename TmplParticle , typename TmplConnection >
DistConnections< TmplParticle, TmplConnection >::ParticleConstIterator esys::lsm::DistConnections< TmplParticle, TmplConnection >::getParticleIterator ( ) const
template<typename TmplParticle , typename TmplConnection >
void esys::lsm::DistConnections< TmplParticle, TmplConnection >::insert ( Particle p)
protected
template<typename TmplParticle , typename TmplConnection >
void esys::lsm::DistConnections< TmplParticle, TmplConnection >::setDefaultTag ( Tag  defaultTag)

Member Data Documentation

template<typename TmplParticle, typename TmplConnection>
ConnectionPoolPtr esys::lsm::DistConnections< TmplParticle, TmplConnection >::m_connectionPoolPtr
private
template<typename TmplParticle, typename TmplConnection>
ConnectionSet esys::lsm::DistConnections< TmplParticle, TmplConnection >::m_connectionSet
private
template<typename TmplParticle, typename TmplConnection>
Tag esys::lsm::DistConnections< TmplParticle, TmplConnection >::m_defaultTag
private
template<typename TmplParticle, typename TmplConnection>
double esys::lsm::DistConnections< TmplParticle, TmplConnection >::m_maxDist
private
template<typename TmplParticle, typename TmplConnection>
Vec3 esys::lsm::DistConnections< TmplParticle, TmplConnection >::m_maxPt
private
template<typename TmplParticle, typename TmplConnection>
double esys::lsm::DistConnections< TmplParticle, TmplConnection >::m_maxRadius
private
template<typename TmplParticle, typename TmplConnection>
Vec3 esys::lsm::DistConnections< TmplParticle, TmplConnection >::m_minPt
private
template<typename TmplParticle, typename TmplConnection>
double esys::lsm::DistConnections< TmplParticle, TmplConnection >::m_minRadius
private
template<typename TmplParticle, typename TmplConnection>
NTablePtr esys::lsm::DistConnections< TmplParticle, TmplConnection >::m_nTablePtr
private

The documentation for this class was generated from the following files: