Main Page | Namespace List | Class Hierarchy | Class List | File List | Class Members

CCM::StateAbstraction Class Reference

List of all members.

Detailed Description

State abstraction (equivalence relation for StateNodes).


Public Member Functions

 StateAbstraction (int numFields)
 Create a new state abstraction relation for numFields abstraction class fields.

void addField (int index, string abstracts, EqRel eq)
 Add new field to the end of the array.

void resolve (IList implNames)
 Finishes adding fields and resolves implementation names to their index in implementation StateNodes.

bool equal (StateNode abstr, StateNode impl)
 Return whether the two given StateNodes are equivalent.

override string ToString ()

Private Attributes

string[] abstracts
 Maps state array indices of the abstraction to the field name of the implementation.

EqRel[] rel
 Maps state array indices of the abstraction to an EqRel.

int[] abstractsIndex
 Maps state array indices of the abstraction to the respective state array index of the implementation.


Constructor & Destructor Documentation

CCM::StateAbstraction::StateAbstraction int  numFields  ) 
 

Create a new state abstraction relation for numFields abstraction class fields.


Member Function Documentation

void CCM::StateAbstraction::addField int  index,
string  abstracts,
EqRel  eq
 

Add new field to the end of the array.

Parameters:
index Index of this field in the StateNode state list given to equal()
abstracts Name of the respective implementation field
eq EqRel of this field

bool CCM::StateAbstraction::equal StateNode  abstr,
StateNode  impl
 

Return whether the two given StateNodes are equivalent.

The state abstraction must be resolve()d for this.

See also:
resolve

void CCM::StateAbstraction::resolve IList  implNames  ) 
 

Finishes adding fields and resolves implementation names to their index in implementation StateNodes.

Resets abstracts to null.

Parameters:
implNames Layout of implementation StateNodes (contains field names), as delivered by Class.stateName()
See also:
Class.stateName()

override string CCM::StateAbstraction::ToString  ) 
 


Member Data Documentation

string [] CCM::StateAbstraction::abstracts [private]
 

Maps state array indices of the abstraction to the field name of the implementation.

int [] CCM::StateAbstraction::abstractsIndex [private]
 

Maps state array indices of the abstraction to the respective state array index of the implementation.

Created by resolve() from abstracts.

EqRel [] CCM::StateAbstraction::rel [private]
 

Maps state array indices of the abstraction to an EqRel.


The documentation for this class was generated from the following file:
Generated on Mon Jun 21 01:20:50 2004 for cs2ccmb by doxygen 1.3.7