biu::LatticeDescriptorSQR Class Reference
#include <LatticeDescriptorSQR.hh>
Inheritance diagram for biu::LatticeDescriptorSQR:
Detailed Description
Lattice property handler for the integer square lattice.
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 AutomorphismVec & | getAutomorphisms () const |
virtual const IPointVec & | getBase () const |
virtual std::string | getName () const |
virtual const LatticeNeighborhood & | getNeighborhood () 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 |
LatticeNeighborhood * | latNeighborhood |
MoveAlphabet * | moveAlphabet |
std::vector< MoveSequence > | symMoveReplacement |
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 108 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
AutomorphismVec biu::LatticeDescriptor::automorphisms [protected, inherited] |
all available automorphisms in this lattice e.g. rotations
Definition at line 37 of file LatticeDescriptor.hh.
IPointVec biu::LatticeDescriptor::latBase [protected, inherited] |
the base vectors of the lattice
Definition at line 40 of file LatticeDescriptor.hh.
LatticeNeighborhood* biu::LatticeDescriptor::latNeighborhood [protected, inherited] |
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 50 of file LatticeDescriptor.hh.
MoveAlphabet* biu::LatticeDescriptor::moveAlphabet [protected, inherited] |
the move string alphabet
Definition at line 42 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 56 of file LatticeDescriptor.hh.
The documentation for this class was generated from the following files:
- src/biu/LatticeDescriptorSQR.hh
- src/biu/LatticeDescriptorSQR.cc