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

biu::LatticeDescriptorSQR Class Reference

#include <LatticeDescriptorSQR.hh>

Inheritance diagram for biu::LatticeDescriptorSQR:

Inheritance graph
[legend]

Detailed Description

Lattice property handler for the integer square lattice.

Author:
Martin Mann, Sebastian Will, Andreas Richter

Definition at line 16 of file LatticeDescriptorSQR.hh.

Public Member Functions

virtual bool areNeighbored (const IntPoint &first, const IntPoint &second) const
const Alphabet *const getAlphabet () const
virtual const AutomorphismVecgetAutomorphisms () const
virtual const IPointVecgetBase () const
virtual std::string getName () const
virtual const LatticeNeighborhoodgetNeighborhood () const
virtual MoveSequence getSequence (const std::string &moveString) const
virtual std::string getString (const MoveSequence &moveSeq) const
 LatticeDescriptorSQR ()
virtual MoveSequence normalizeSequence (const MoveSequence &moveSeq) const
bool operator!= (const LatticeDescriptor &ld2) const
bool operator== (const LatticeDescriptor &ld2) const
virtual ~LatticeDescriptorSQR ()

Protected Member Functions

virtual const AutomorphismData * getAutomorphismData () const
virtual unsigned int getAutomorphismDataSize () const
virtual const NeighborData * getNeighborData () const
virtual unsigned int getNeighborDataSize () const
void initAutomorphisms ()
void initNeighborhood ()

Protected Attributes

AutomorphismVec automorphisms
IPointVec latBase
LatticeNeighborhoodlatNeighborhood
MoveAlphabetmoveAlphabet
std::vector< MoveSequencesymMoveReplacement


Constructor & Destructor Documentation

biu::LatticeDescriptorSQR::LatticeDescriptorSQR (  ) 

Definition at line 7 of file LatticeDescriptorSQR.cc.

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

Definition at line 20 of file LatticeDescriptorSQR.cc.


Member Function Documentation

bool biu::LatticeDescriptorSQR::areNeighbored ( const IntPoint first,
const IntPoint second 
) const [virtual]

Returns whether or not two points in the lattice are neighbored using a specialised implementation for the square lattice

Parameters:
first the first point
second the second point
Returns:
true if (second-first) is element of the neighborhood, false otherwise

Reimplemented from biu::LatticeDescriptor.

Definition at line 67 of file LatticeDescriptorSQR.cc.

const Alphabet* const biu::LatticeDescriptor::getAlphabet (  )  const [inline, inherited]

Returns the move alphabet of this lattice descriptor.

Definition at line 107 of file LatticeDescriptor.hh.

const LatticeDescriptorSQR::AutomorphismData * biu::LatticeDescriptorSQR::getAutomorphismData (  )  const [protected, virtual]

Gets pointer to automorphism data array.

Implements biu::LatticeDescriptor.

Definition at line 50 of file LatticeDescriptorSQR.cc.

unsigned int biu::LatticeDescriptorSQR::getAutomorphismDataSize (  )  const [protected, virtual]

get number of automorphisms

Implements biu::LatticeDescriptor.

Definition at line 45 of file LatticeDescriptorSQR.cc.

virtual const AutomorphismVec& biu::LatticeDescriptor::getAutomorphisms (  )  const [virtual, inherited]

Returns a vector of all automorphisms in this lattice.

virtual const IPointVec& biu::LatticeDescriptor::getBase (  )  const [virtual, inherited]

Returns the lattice base vectors.

virtual std::string biu::LatticeDescriptor::getName (  )  const [virtual, inherited]

const LatticeDescriptor::NeighborData * biu::LatticeDescriptorSQR::getNeighborData (  )  const [protected, virtual]

Gets pointer to neighbor data array. Together with getNeighborDataSize this defines the lattice in derived classes in a way that can be used by initNeighborhood for initializing the lattice neighborhood and move alphabet.

Implements biu::LatticeDescriptor.

Definition at line 29 of file LatticeDescriptorSQR.cc.

unsigned int biu::LatticeDescriptorSQR::getNeighborDataSize (  )  const [protected, virtual]

get number of neighbors

Implements biu::LatticeDescriptor.

Definition at line 24 of file LatticeDescriptorSQR.cc.

virtual const LatticeNeighborhood& biu::LatticeDescriptor::getNeighborhood (  )  const [virtual, inherited]

virtual MoveSequence biu::LatticeDescriptor::getSequence ( const std::string &  moveString  )  const [virtual, inherited]

Converts a move string into the internal move string sequence representation.

Parameters:
moveString Has to be a valid move string.

virtual std::string biu::LatticeDescriptor::getString ( const MoveSequence moveSeq  )  const [virtual, inherited]

Converts an internal move string sequence representation into a string representation.

Returns an empty string in error case.

void biu::LatticeDescriptor::initAutomorphisms (  )  [protected, inherited]

inits the automorphisms using getAutomorphismData*

Definition at line 127 of file LatticeDescriptor.cc.

void biu::LatticeDescriptor::initNeighborhood (  )  [protected, inherited]

inits the neighborhood from the data of getNeighborData() and getNeighborDataSize(). Generic function that should be called in the constructors of derived classes

Definition at line 89 of file LatticeDescriptor.cc.

MoveSequence biu::LatticeDescriptor::normalizeSequence ( const MoveSequence moveSeq  )  const [virtual, inherited]

Converts an internal move string sequence representation into a normalized form, that is the same for all symmetric structures.

Parameters:
moveSeq the move string representation to normalize
Returns:
the normalized move string representation

Definition at line 173 of file LatticeDescriptor.cc.

bool biu::LatticeDescriptor::operator!= ( const LatticeDescriptor ld2  )  const [inherited]

Definition at line 76 of file LatticeDescriptor.cc.

bool biu::LatticeDescriptor::operator== ( const LatticeDescriptor ld2  )  const [inherited]

Definition at line 65 of file LatticeDescriptor.cc.


Field Documentation

all available automorphisms in this lattice e.g. rotations

Definition at line 36 of file LatticeDescriptor.hh.

the base vectors of the lattice

Definition at line 39 of file LatticeDescriptor.hh.

The neighbor vectors that define the neighborhood in the lattice.

The first NeighborVector in the set represents the default direction for relative move string calculation.

Definition at line 49 of file LatticeDescriptor.hh.

the move string alphabet

Definition at line 41 of file LatticeDescriptor.hh.

std::vector<MoveSequence> biu::LatticeDescriptor::symMoveReplacement [protected, inherited]

A shuffle information that can be used to normalize move sequences by replacing moves with symmetric ones according to a symmetry. It is initializes by initAutomorphisms()

Definition at line 55 of file LatticeDescriptor.hh.


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