ESyS-Particle  2.3.2
esys::lsm::SphereNeighbours< TmplSphere, TmplIdPairVector > Class Template Reference

#include <SphereNeighbours.h>

Inheritance diagram for esys::lsm::SphereNeighbours< TmplSphere, TmplIdPairVector >:
Collaboration diagram for esys::lsm::SphereNeighbours< TmplSphere, TmplIdPairVector >:

Classes

class  Cmp
class  ConstIterator

Public Types

typedef int Id
typedef TmplSphere Sphere
typedef TmplIdPairVector IdPairVector
typedef IdPairVector::value_type IdPair
typedef std::set< IdPair *, CmpIdPairSet
typedef std::set< const IdPair
*, Cmp
ConstIdPairSet
typedef std::vector< Sphere * > SphereVector
typedef CircularNeighbourTable
< Sphere
NTable
typedef NTable::ParticleIterator SphereIterator
typedef
NTable::ParticleConstIterator 
SphereConstIterator
typedef NTable::BoolVector BoolVector
typedef ForwardConstIterator
< IdPairSet
IdPairConstIterator
typedef ConstIterator Iterator

Public Member Functions

 SphereNeighbours (double maxDist, const BoundingBox &bBox=BoundingBox(Vec3(-10,-10,-10), Vec3(10, 10, 10)), const BoolVector &circDimensions=BoolVector(3, false))
 ~SphereNeighbours ()
int getNumSpheres () const
int getNumIdPairs () const
double getMinRadius () const
double getMaxRadius () const
SphereConstIterator getSphereIterator () const
BoundingBox getSphereBBox () const
template<typename TmplSphereIterator >
IdPairVector getNeighbours (TmplSphereIterator it)
Iterator getIterator () const

Protected Member Functions

void insert (Sphere &p)
const IdPaircreateIdPair (const Sphere &p1, const Sphere &p2)

Private Types

typedef boost::shared_ptr< NTableNTablePtr
typedef boost::object_pool
< IdPair
IdPairPool
typedef boost::shared_ptr
< IdPairPool
IdPairPoolPtr

Private Attributes

IdPairPoolPtr m_connectionPoolPtr
IdPairSet m_connectionSet
NTablePtr m_nTablePtr
double m_minRadius
double m_maxRadius
double m_maxDist
Vec3 m_minPt
Vec3 m_maxPt

Member Typedef Documentation

template<typename TmplSphere, typename TmplIdPairVector>
typedef NTable::BoolVector esys::lsm::SphereNeighbours< TmplSphere, TmplIdPairVector >::BoolVector
template<typename TmplSphere, typename TmplIdPairVector>
typedef std::set<const IdPair *,Cmp> esys::lsm::SphereNeighbours< TmplSphere, TmplIdPairVector >::ConstIdPairSet
template<typename TmplSphere, typename TmplIdPairVector>
typedef int esys::lsm::SphereNeighbours< TmplSphere, TmplIdPairVector >::Id
template<typename TmplSphere, typename TmplIdPairVector>
typedef IdPairVector::value_type esys::lsm::SphereNeighbours< TmplSphere, TmplIdPairVector >::IdPair
template<typename TmplSphere, typename TmplIdPairVector>
typedef ForwardConstIterator<IdPairSet> esys::lsm::SphereNeighbours< TmplSphere, TmplIdPairVector >::IdPairConstIterator
template<typename TmplSphere, typename TmplIdPairVector>
typedef boost::object_pool<IdPair> esys::lsm::SphereNeighbours< TmplSphere, TmplIdPairVector >::IdPairPool
private
template<typename TmplSphere, typename TmplIdPairVector>
typedef boost::shared_ptr<IdPairPool> esys::lsm::SphereNeighbours< TmplSphere, TmplIdPairVector >::IdPairPoolPtr
private
template<typename TmplSphere, typename TmplIdPairVector>
typedef std::set<IdPair *,Cmp> esys::lsm::SphereNeighbours< TmplSphere, TmplIdPairVector >::IdPairSet
template<typename TmplSphere, typename TmplIdPairVector>
typedef TmplIdPairVector esys::lsm::SphereNeighbours< TmplSphere, TmplIdPairVector >::IdPairVector
template<typename TmplSphere, typename TmplIdPairVector>
typedef ConstIterator esys::lsm::SphereNeighbours< TmplSphere, TmplIdPairVector >::Iterator
template<typename TmplSphere, typename TmplIdPairVector>
typedef CircularNeighbourTable<Sphere> esys::lsm::SphereNeighbours< TmplSphere, TmplIdPairVector >::NTable
template<typename TmplSphere, typename TmplIdPairVector>
typedef boost::shared_ptr<NTable> esys::lsm::SphereNeighbours< TmplSphere, TmplIdPairVector >::NTablePtr
private
template<typename TmplSphere, typename TmplIdPairVector>
typedef TmplSphere esys::lsm::SphereNeighbours< TmplSphere, TmplIdPairVector >::Sphere
template<typename TmplSphere, typename TmplIdPairVector>
typedef NTable::ParticleConstIterator esys::lsm::SphereNeighbours< TmplSphere, TmplIdPairVector >::SphereConstIterator
template<typename TmplSphere, typename TmplIdPairVector>
typedef NTable::ParticleIterator esys::lsm::SphereNeighbours< TmplSphere, TmplIdPairVector >::SphereIterator
template<typename TmplSphere, typename TmplIdPairVector>
typedef std::vector<Sphere *> esys::lsm::SphereNeighbours< TmplSphere, TmplIdPairVector >::SphereVector

Constructor & Destructor Documentation

template<typename TmplSphere , typename TmplIdPair >
esys::lsm::SphereNeighbours< TmplSphere, TmplIdPair >::SphereNeighbours ( double  maxDist,
const BoundingBox bBox = BoundingBox(Vec3(-10,-10,-10), Vec3(10,10,10)),
const BoolVector circDimensions = BoolVector(3, false) 
)
template<typename TmplSphere , typename TmplIdPair >
esys::lsm::SphereNeighbours< TmplSphere, TmplIdPair >::~SphereNeighbours ( )

Member Function Documentation

template<typename TmplSphere , typename TmplIdPair >
const SphereNeighbours< TmplSphere, TmplIdPair >::IdPair & esys::lsm::SphereNeighbours< TmplSphere, TmplIdPair >::createIdPair ( const Sphere p1,
const Sphere p2 
)
protected
template<typename TmplSphere, typename TmplIdPairVector>
Iterator esys::lsm::SphereNeighbours< TmplSphere, TmplIdPairVector >::getIterator ( ) const
inline
template<typename TmplSphere , typename TmplIdPair >
double esys::lsm::SphereNeighbours< TmplSphere, TmplIdPair >::getMaxRadius ( ) const
template<typename TmplSphere , typename TmplIdPair >
double esys::lsm::SphereNeighbours< TmplSphere, TmplIdPair >::getMinRadius ( ) const
template<typename TmplSphere , typename TmplIdPair >
template<typename TmplSphereIterator >
SphereNeighbours< TmplSphere, TmplIdPair >::IdPairVector esys::lsm::SphereNeighbours< TmplSphere, TmplIdPair >::getNeighbours ( TmplSphereIterator  it)
template<typename TmplSphere , typename TmplIdPair >
int esys::lsm::SphereNeighbours< TmplSphere, TmplIdPair >::getNumIdPairs ( ) const
template<typename TmplSphere , typename TmplIdPair >
int esys::lsm::SphereNeighbours< TmplSphere, TmplIdPair >::getNumSpheres ( ) const
template<typename TmplSphere , typename TmplIdPair >
BoundingBox esys::lsm::SphereNeighbours< TmplSphere, TmplIdPair >::getSphereBBox ( ) const
template<typename TmplSphere , typename TmplIdPair >
SphereNeighbours< TmplSphere, TmplIdPair >::SphereConstIterator esys::lsm::SphereNeighbours< TmplSphere, TmplIdPair >::getSphereIterator ( ) const
template<typename TmplSphere , typename TmplIdPair >
void esys::lsm::SphereNeighbours< TmplSphere, TmplIdPair >::insert ( Sphere p)
protected

Member Data Documentation

template<typename TmplSphere, typename TmplIdPairVector>
IdPairPoolPtr esys::lsm::SphereNeighbours< TmplSphere, TmplIdPairVector >::m_connectionPoolPtr
private
template<typename TmplSphere, typename TmplIdPairVector>
IdPairSet esys::lsm::SphereNeighbours< TmplSphere, TmplIdPairVector >::m_connectionSet
private
template<typename TmplSphere, typename TmplIdPairVector>
double esys::lsm::SphereNeighbours< TmplSphere, TmplIdPairVector >::m_maxDist
private
template<typename TmplSphere, typename TmplIdPairVector>
Vec3 esys::lsm::SphereNeighbours< TmplSphere, TmplIdPairVector >::m_maxPt
private
template<typename TmplSphere, typename TmplIdPairVector>
double esys::lsm::SphereNeighbours< TmplSphere, TmplIdPairVector >::m_maxRadius
private
template<typename TmplSphere, typename TmplIdPairVector>
Vec3 esys::lsm::SphereNeighbours< TmplSphere, TmplIdPairVector >::m_minPt
private
template<typename TmplSphere, typename TmplIdPairVector>
double esys::lsm::SphereNeighbours< TmplSphere, TmplIdPairVector >::m_minRadius
private
template<typename TmplSphere, typename TmplIdPairVector>
NTablePtr esys::lsm::SphereNeighbours< TmplSphere, TmplIdPairVector >::m_nTablePtr
private

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