uk.ac.man.cs.rainbow.simulator.rasm
Class LabelDevice

java.lang.Object
  |
  +--uk.ac.man.cs.rainbow.simulator.Instruction
        |
        +--uk.ac.man.cs.rainbow.simulator.rasm.LabelDevice
All Implemented Interfaces:
Serializable

public class LabelDevice
extends Instruction

Label a thread according to an external specification. Identifies the current thread of execution as implementing the device named string by the editor/simulator environment. Furthermore, the register, regId, will be taken as containing a value that represents the (major) state of the device. Only the first such identification for particular labelling will be used, with later calls being ignored silently.

regId string -

See Also:
LabelChannel, StatelessDevice, DeclareDeviceWithState, Scheduler.LabellingListener, Serialized Form

Inner classes inherited from class uk.ac.man.cs.rainbow.simulator.Instruction
Instruction.MACRO
 
Constructor Summary
LabelDevice()
           
LabelDevice(RASMCode code)
           
 
Method Summary
protected  boolean execute(RASMThread thread)
          Make this instruction execute in the given context.
 String toString()
           
 
Methods inherited from class uk.ac.man.cs.rainbow.simulator.Instruction
addClass, getInstruction, getInstruction, getInstruction
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

LabelDevice

public LabelDevice()

LabelDevice

public LabelDevice(RASMCode code)
Method Detail

toString

public String toString()
Overrides:
toString in class Object

execute

protected boolean execute(RASMThread thread)
                   throws RASMThread.Exception
Description copied from class: Instruction
Make this instruction execute in the given context.
Overrides:
execute in class Instruction
Following copied from class: uk.ac.man.cs.rainbow.simulator.Instruction
Throws:
RainbowException - All sorts of things can go wrong during execution...