Main Page | Modules | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

Arak::CN94Proposal::InteriorVertexDeath Class Reference

#include <cn94.hpp>

Inheritance diagram for Arak::CN94Proposal::InteriorVertexDeath:

Inheritance graph
[legend]
Collaboration diagram for Arak::CN94Proposal::InteriorVertexDeath:

Collaboration graph
[legend]
List of all members.

Detailed Description

Removes an interior vertex whose adjacent vertices are not connected; the adjacent vertices are joined by a new edge.

Definition at line 451 of file cn94.hpp.

Public Member Functions

 InteriorVertexDeath (const CN94Proposal &proposal)
 Constructor.

void reset (Coloring::VertexHandle vertex)
 Resets this move.

virtual void execute (Coloring &c)
 Updates the supplied coloring according to this move.

virtual void undo (Coloring &c)
 Updates the supplied Coloring so that the effects of performing this move are undone.


Protected Attributes

const CN94Proposalproposal
 The proposal that this move is associated with.

Coloring::VertexHandle prevVertex
 The vertex preceeding the vertex to be removed.

Point point
 The location of the removed vertex.

double newEdgeLength
 The length of the edge that would be introduced if this vertex death move were executed.


Friends

class CN94Proposal


Constructor & Destructor Documentation

Arak::CN94Proposal::InteriorVertexDeath::InteriorVertexDeath const CN94Proposal proposal  )  [inline]
 

Constructor.

Parameters:
proposal the proposal this move is associated with

Definition at line 486 of file cn94.hpp.


Member Function Documentation

void CN94Proposal::InteriorVertexDeath::execute Coloring c  )  [virtual]
 

Updates the supplied coloring according to this move.

It is an error to call this method if the move is not valid for the supplied coloring.

Parameters:
c a coloring to be updated

Implements Arak::ColoringMove.

Definition at line 160 of file cn94.cpp.

References Arak::Coloring::deleteVertex(), PointerHandle< T >::valid(), and Arak::Coloring::VertexHandle.

void CN94Proposal::InteriorVertexDeath::reset Coloring::VertexHandle  vertex  ) 
 

Resets this move.

Parameters:
vertex the interior vertex to be removed

Definition at line 152 of file cn94.cpp.

References newEdgeLength, and Arak::Coloring::VertexHandle.

Referenced by Arak::CN94Proposal::proposeIntVertexDeath().

void CN94Proposal::InteriorVertexDeath::undo Coloring c  )  [virtual]
 

Updates the supplied Coloring so that the effects of performing this move are undone.

The semantics of this method ensure that applying execute(Coloring&) and then undo(Coloring&) to the same coloring leaves the coloring invariant. It is an error to call this method if this undo is not valid for the supplied coloring.

Parameters:
c a coloring to be updated

Implements Arak::ColoringMove.

Definition at line 166 of file cn94.cpp.

References Arak::Coloring::IntEdgeHandle, and Arak::Coloring::splitEdge().


Friends And Related Function Documentation

friend class CN94Proposal [friend]
 

Definition at line 453 of file cn94.hpp.


Member Data Documentation

double Arak::CN94Proposal::InteriorVertexDeath::newEdgeLength [protected]
 

The length of the edge that would be introduced if this vertex death move were executed.

Definition at line 477 of file cn94.hpp.

Referenced by reset(), and Arak::CN94Proposal::rll().

Point Arak::CN94Proposal::InteriorVertexDeath::point [protected]
 

The location of the removed vertex.

This information is used to restore the vertex if the move is undone.

Definition at line 471 of file cn94.hpp.

Coloring::VertexHandle Arak::CN94Proposal::InteriorVertexDeath::prevVertex [protected]
 

The vertex preceeding the vertex to be removed.

Definition at line 465 of file cn94.hpp.

const CN94Proposal& Arak::CN94Proposal::InteriorVertexDeath::proposal [protected]
 

The proposal that this move is associated with.

Definition at line 460 of file cn94.hpp.


The documentation for this class was generated from the following files:
Generated on Wed May 25 14:40:43 2005 for Arak by doxygen 1.3.6