Generated on Tue Dec 16 12:50:06 2008 for BIU-2.2.0 by doxygen 1.5.1

biu::LatticeNeighborhood Class Reference

#include <LatticeNeighborhood.hh>

Inheritance diagram for biu::LatticeNeighborhood:

Inheritance graph
[legend]

Detailed Description

A LatticeNeighborhood handles the the NeighborVector objects of a lattice and the access to them.

Definition at line 16 of file LatticeNeighborhood.hh.

Public Types

typedef NeighSet::const_iterator const_iterator

Public Member Functions

virtual const_iterator begin () const
virtual const_iterator end () const
virtual const NeighborVectorgetElement (const Move &move) const
virtual const NeighborVectorgetElement (const IntPoint &vector) const
virtual const NeighborVectorgetElementByIndex (unsigned int index) const
virtual bool isElement (const IntPoint &vector) const
 LatticeNeighborhood (const LatticeNeighborhood &nh)
 LatticeNeighborhood (const MoveAlphabet *moveAlph_, const NeighSet &neighbors)
virtual unsigned int size () const
virtual ~LatticeNeighborhood ()

Protected Types

typedef __gnu_cxx::hash_map<
IntPoint, const NeighborVector *,
hash_IntPoint
P2N_MAP

Protected Attributes

const MoveAlphabetmoveAlph
NeighSet neighSet
std::vector< const NeighborVector * > neighVec
P2N_MAP vec2neigh

Data Structures

struct  hash_IntPoint


Member Typedef Documentation

typedef NeighSet::const_iterator biu::LatticeNeighborhood::const_iterator

a constant iterator to access the elements of the neighborhood

Definition at line 98 of file LatticeNeighborhood.hh.

typedef __gnu_cxx::hash_map< IntPoint, const NeighborVector*, hash_IntPoint > biu::LatticeNeighborhood::P2N_MAP [protected]

Definition at line 41 of file LatticeNeighborhood.hh.


Constructor & Destructor Documentation

biu::LatticeNeighborhood::LatticeNeighborhood ( const MoveAlphabet moveAlph_,
const NeighSet neighbors 
)

biu::LatticeNeighborhood::LatticeNeighborhood ( const LatticeNeighborhood nh  ) 

virtual biu::LatticeNeighborhood::~LatticeNeighborhood (  )  [virtual]


Member Function Documentation

virtual const_iterator biu::LatticeNeighborhood::begin (  )  const [virtual]

Returns a constant iterator to the first element of the neighborhood

virtual const_iterator biu::LatticeNeighborhood::end (  )  const [virtual]

Returns a constant iterator behind the last element of the neighborhood

virtual const NeighborVector& biu::LatticeNeighborhood::getElement ( const Move move  )  const [virtual]

Returns the corresponding NeighborVector.

Parameters:
move has to be element of the underlying move string alphabet
Returns:
the neighbor vector that corresponds to the given move

virtual const NeighborVector& biu::LatticeNeighborhood::getElement ( const IntPoint vector  )  const [virtual]

Returns the corresponding NeighborVector.

Parameters:
vector has to be element of this neighborhood
Returns:
the neighbor vector that corresponds to the given vector

virtual const NeighborVector& biu::LatticeNeighborhood::getElementByIndex ( unsigned int  index  )  const [virtual]

Returns the corresponding NeighborVector.

Parameters:
index has to be the index of an element of this neighborhood (has to be less than the return value of size())
Returns:
the neighbor vector of the given index

virtual bool biu::LatticeNeighborhood::isElement ( const IntPoint vector  )  const [virtual]

Returns whether or not a vector belongs to the neighborhood.

Parameters:
vector the vector to check
Returns:
true if the vector is part of the neighborhood, false otherwise

Reimplemented in biu::LatticeNeighborhoodCUB.

virtual unsigned int biu::LatticeNeighborhood::size (  )  const [virtual]

Returns the number of elements of the neighborhood.


Field Documentation

the underlying move string alphabet

Definition at line 48 of file LatticeNeighborhood.hh.

the NeighborVector data

Definition at line 49 of file LatticeNeighborhood.hh.

std::vector<const NeighborVector*> biu::LatticeNeighborhood::neighVec [protected]

a crossreference from move index to NeighborVectors

Definition at line 52 of file LatticeNeighborhood.hh.

a crossreference from vectors to NeighborVectors

Definition at line 55 of file LatticeNeighborhood.hh.


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