BALL::HashGridBox3< Item > Class Template Reference
[Three-dimensional Hash Grid]

#include <BALL/DATATYPE/hashGrid.h>

List of all members.

Classes

class  BoxIteratorTraits
class  DataIteratorTraits

Public Member Functions

Constructors and Destructors

 HashGridBox3 (HashGrid3< Item > *parent)
 Default constructor.
void clear ()
 Clears the grid box.
void destroy ()
Accessors

void setParent (HashGrid3< Item > *p)
void getIndices (Position &x, Position &y, Position &z)
Item * find (const Item &item)
const Item * find (const Item &item) const
 The const version of find().
Size getSize () const
void insert (const Item &item)
bool remove (const Item &item)
bool removeAll (const Item &item)
Miscellaneous

void host (Visitor< HashGridBox3 > &visitor)
 Host method.
Predicates

bool operator== (const HashGridBox3 &box) const
 Equality operator.
bool operator!= (const HashGridBox3 &box) const
 Inequality operator.
bool has (const Item &item) const
bool isEmpty () const
Debugging and Diagnostics

bool isValid () const
void dump (std::ostream &s=std::cout, Size depth=0) const
Internal Iterators

bool apply (UnaryProcessor< Item > &processor)
bool apply (UnaryProcessor< HashGridBox3< Item > > &processor)

Public Attributes

HashGrid3< Item > * parent
DataContainer data

External Iterators



typedef Position BoxIteratorPosition
typedef ForwardIterator
< HashGridBox3< Item >
, HashGridBox3< Item >
, BoxIteratorPosition,
BoxIteratorTraits
BoxIterator
typedef ConstForwardIterator
< HashGridBox3< Item >
, HashGridBox3< Item >
, BoxIteratorPosition,
BoxIteratorTraits
ConstBoxIterator
 This is the const version of BoxIterator .
typedef std::list< Item > DataContainer
typedef DataContainer::iterator DataIteratorPosition
typedef ForwardIterator
< HashGridBox3< Item >, Item,
DataIteratorPosition,
DataIteratorTraits
DataIterator
typedef ConstForwardIterator
< HashGridBox3< Item >, Item,
DataIteratorPosition,
DataIteratorTraits
ConstDataIterator
class BoxIteratorTraits
class DataIteratorTraits
BoxIterator beginBox ()
 get the first box
BoxIterator endBox ()
 get the last box
ConstBoxIterator beginBox () const
 get the first box
ConstBoxIterator endBox () const
 get the last box
DataIterator beginData ()
DataIterator endData ()
ConstDataIterator beginData () const
ConstDataIterator endData () const

Detailed Description

template<typename Item>
class BALL::HashGridBox3< Item >

Grid Box Class. These boxes represent the buckets of a threedimensional hash grid. Every such box contains a linear list of the objects that are contained in this box. This list is accessible through a DataIterator.

Definition at line 59 of file hashGrid.h.


Member Typedef Documentation

BoxIterators iterate over all boxes that lie in the direct neighborhood to a box, and over the box itself. Such an iterator traverses over 27 boxes.

Definition at line 321 of file hashGrid.h.

template<typename Item>
typedef Position BALL::HashGridBox3< Item >::BoxIteratorPosition

Definition at line 183 of file hashGrid.h.

This is the const version of BoxIterator .

Definition at line 340 of file hashGrid.h.

Const data iterator for grid boxes. This is the const version of DataIterator

Definition at line 511 of file hashGrid.h.

template<typename Item>
typedef std::list<Item> BALL::HashGridBox3< Item >::DataContainer

Definition at line 357 of file hashGrid.h.

Data iterator for grid boxes. This iterator traverses the list of data items store in a HashGridBox3 .

Definition at line 490 of file hashGrid.h.

template<typename Item>
typedef DataContainer::iterator BALL::HashGridBox3< Item >::DataIteratorPosition

Definition at line 360 of file hashGrid.h.


Member Function Documentation

template<typename Item>
ConstBoxIterator BALL::HashGridBox3< Item >::beginBox (  )  const [inline]

get the first box

Definition at line 343 of file hashGrid.h.

template<typename Item>
BoxIterator BALL::HashGridBox3< Item >::beginBox (  )  [inline]

get the first box

Definition at line 324 of file hashGrid.h.

template<typename Item>
ConstDataIterator BALL::HashGridBox3< Item >::beginData (  )  const [inline]

Definition at line 514 of file hashGrid.h.

template<typename Item>
DataIterator BALL::HashGridBox3< Item >::beginData (  )  [inline]

Definition at line 493 of file hashGrid.h.

template<typename Item>
ConstBoxIterator BALL::HashGridBox3< Item >::endBox (  )  const [inline]

get the last box

Definition at line 349 of file hashGrid.h.

template<typename Item>
BoxIterator BALL::HashGridBox3< Item >::endBox (  )  [inline]

get the last box

Definition at line 330 of file hashGrid.h.

template<typename Item>
ConstDataIterator BALL::HashGridBox3< Item >::endData (  )  const [inline]

Definition at line 520 of file hashGrid.h.

template<typename Item>
DataIterator BALL::HashGridBox3< Item >::endData (  )  [inline]

Definition at line 499 of file hashGrid.h.

template<typename Item>
void BALL::HashGridBox3< Item >::host ( Visitor< HashGridBox3< Item > > &  visitor  ) 

Host method.

template<typename Item>
bool BALL::HashGridBox3< Item >::operator!= ( const HashGridBox3< Item > &  box  )  const

Inequality operator.

template<typename Item>
bool BALL::HashGridBox3< Item >::operator== ( const HashGridBox3< Item > &  box  )  const

Equality operator.


Friends And Related Function Documentation

template<typename Item>
friend class BoxIteratorTraits [friend]

Definition at line 312 of file hashGrid.h.

template<typename Item>
friend class DataIteratorTraits [friend]

Definition at line 482 of file hashGrid.h.


Member Data Documentation

template<typename Item>
DataContainer BALL::HashGridBox3< Item >::data

Definition at line 529 of file hashGrid.h.

template<typename Item>
HashGrid3<Item>* BALL::HashGridBox3< Item >::parent

Definition at line 527 of file hashGrid.h.

Generated by  doxygen 1.6.3