uk.ac.man.cs.rainbow.rapa.gcl
Class ProgramCounterFactory

java.lang.Object
  |
  +--uk.ac.man.cs.rainbow.rapa.gcl.ProgramCounterFactory

public class ProgramCounterFactory
extends Object

Creates program counters. This class provides context used to create program counters consistently so the register comparison engine can process them rapidly.

See Also:
Register, ProcessTerm.getGCL()

Constructor Summary
ProgramCounterFactory()
           
 
Method Summary
 void addToNamingMap(String kind, String name, int i)
          Add a mapping to the naming map.
 Assignment.StateVar assign(int i, int n)
          Create an assignment of n to PCi.
 CompareStateVar compare(int i, int n)
          Create a comparison of PCi to n.
 Register get(int i)
          Get the program counter PCi.
 Assignment.StateVar.Subst substitution(int i, int n1, int n2)
          Create a substitution to change PCi from being assigned n1 to n2.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ProgramCounterFactory

public ProgramCounterFactory()
Method Detail

get

public Register get(int i)
Get the program counter PCi.

compare

public CompareStateVar compare(int i,
                               int n)
Create a comparison of PCi to n.

assign

public Assignment.StateVar assign(int i,
                                  int n)
Create an assignment of n to PCi.

substitution

public Assignment.StateVar.Subst substitution(int i,
                                              int n1,
                                              int n2)
Create a substitution to change PCi from being assigned n1 to n2.

addToNamingMap

public void addToNamingMap(String kind,
                           String name,
                           int i)
Add a mapping to the naming map. Part of the mechanism for allowing propositions in a temporal formula to refer to the state of selected Rainbow devices.