Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members  

PushOptimizer Class Reference

This class lets you optimize the number of pushes and moves for a given sequence of moves. More...

#include <push_optimizer.h>

Inheritance diagram for PushOptimizer::

Optimizer List of all members.

Public Methods

 PushOptimizer ()
 PushOptimizer (Map const &map, Movements const &moves)
virtual void optimize (Map const &map, Movements const &moves)
virtual Movements const & moves () const
virtual int numberOfMoves () const
virtual int numberOfPushes () const

Private Attributes

Movements m_moves
int m_number_of_moves
int m_number_of_pushes

Detailed Description

This class lets you optimize the number of pushes and moves for a given sequence of moves.

Author:
Ralf Schmelter (ralfs@pc2a.chemie.uni-dortmund.de).
Version:
0.1
See also:
Move


Constructor & Destructor Documentation

PushOptimizer::PushOptimizer
 

Constructs an empty object.

PushOptimizer::PushOptimizer Map const & map,
Movements const & moves
 

Contructs the object and optimizes the number of pushes and moves.

Parameters:
map   The start map of the moves.
moves   The moves to optimize.


Member Function Documentation

virtual Movements const& PushOptimizer::moves const [virtual]
 

Returns the optimized moves.

Note that the moves are not atomic, but as compact as possible.

Reimplemented from Optimizer.

virtual int PushOptimizer::numberOfMoves const [virtual]
 

Returns the optimized number of atomic moves.

Reimplemented from Optimizer.

virtual int PushOptimizer::numberOfPushes const [virtual]
 

Returns the optimized number of atomic pushes.

Reimplemented from Optimizer.

virtual void PushOptimizer::optimize Map const & map,
Movements const & moves
[virtual]
 

Optimizes the moves of the given map.

Parameters:
map   The start map of the moves.
moves   The moves to optimize.

Reimplemented from Optimizer.


Member Data Documentation

Movements PushOptimizer::m_moves [private]
 

The optimized moves.

int PushOptimizer::m_number_of_moves [private]
 

The number of atomic moves.

int PushOptimizer::m_number_of_pushes [private]
 

The number of atomic pushes.


The documentation for this class was generated from the following file:
Generated at Sun Jan 6 18:49:12 2002 for EasySok by doxygen1.2.9.1 written by Dimitri van Heesch, © 1997-2001