Class Process

java.lang.Object
  extended by Process

public final class Process
extends java.lang.Object

This is an immutable class the implements a Feralcore process.


Constructor Summary
Process(java.lang.String aliasin, ByteArray procID)
          Creates a new process having processID procID and initializes the internal registers for the process.
 
Method Summary
 Execreturn executeinstruction(Core coreobj, IDatagramSocket dsock, int fc3tuplecontainersize, Fc3tuple randomtuple, Fc3tuple rndtuplewor1, Fc3tuple rndtuplewor2, Fc3tuple ithtuple, Fc3tuple servertuple, Fccounter fccounterobj, YYrandom yyrandomobj)
          executeinstruction() is not a mutator since it duplicates the object that it is called with before executing the instruction.
 Reg32 getA(int i)
           
 Reg32 getA7()
           
 boolean getC()
           
 Reg32 getD(int i)
           
 boolean getN()
           
 Reg32 getPC()
           
 ByteArray getprocessID()
           
 IRegisters getregisters()
           
 boolean getstoponnextinstruction()
           
 boolean getV()
           
 boolean getX()
           
 boolean getZ()
           
 Process setflagC(boolean in)
          Factory method that sets the C flag.
 Process setflagN(boolean in)
          Factory method that sets the N flag.
 Process setflagV(boolean in)
          Factory method that sets the V flag.
 Process setflagX(boolean in)
          Factory method that sets the X flag.
 Process setflagZ(boolean in)
          Factory method that sets the Z flag.
 Process setstoponthenextinstruction(boolean in)
          Factory method that sets the value of stoponnextinstruction.
 Process setthepenaltydelay()
          Factory method that resets the penalty delay.
 Process setvalueA(int i, Reg32 u32)
          Factory method that sets the value of an A register.
 Process setvalueD(int i, Reg32 u32)
          Factory method that sets the value of a D register.
 Process setvaluePC(Reg32 addr)
          Factory method that sets the PC value.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Process

public Process(java.lang.String aliasin,
               ByteArray procID)
        throws java.lang.CloneNotSupportedException,
               FeralcoreException
Creates a new process having processID procID and initializes the internal registers for the process.

Throws:
java.lang.CloneNotSupportedException
FeralcoreException
Method Detail

executeinstruction

public Execreturn executeinstruction(Core coreobj,
                                     IDatagramSocket dsock,
                                     int fc3tuplecontainersize,
                                     Fc3tuple randomtuple,
                                     Fc3tuple rndtuplewor1,
                                     Fc3tuple rndtuplewor2,
                                     Fc3tuple ithtuple,
                                     Fc3tuple servertuple,
                                     Fccounter fccounterobj,
                                     YYrandom yyrandomobj)
                              throws FeralcoreException,
                                     java.security.NoSuchAlgorithmException,
                                     javax.crypto.NoSuchPaddingException,
                                     java.security.InvalidKeyException,
                                     javax.crypto.IllegalBlockSizeException,
                                     javax.crypto.BadPaddingException,
                                     java.io.FileNotFoundException,
                                     java.io.IOException,
                                     java.lang.InterruptedException,
                                     java.lang.CloneNotSupportedException
executeinstruction() is not a mutator since it duplicates the object that it is called with before executing the instruction.

Throws:
FeralcoreException
java.security.NoSuchAlgorithmException
javax.crypto.NoSuchPaddingException
java.security.InvalidKeyException
javax.crypto.IllegalBlockSizeException
javax.crypto.BadPaddingException
java.io.FileNotFoundException
java.io.IOException
java.lang.InterruptedException
java.lang.CloneNotSupportedException

setthepenaltydelay

public Process setthepenaltydelay()
                           throws java.lang.CloneNotSupportedException
Factory method that resets the penalty delay.

Throws:
java.lang.CloneNotSupportedException

setflagX

public Process setflagX(boolean in)
                 throws java.lang.CloneNotSupportedException
Factory method that sets the X flag.

Throws:
java.lang.CloneNotSupportedException

setflagN

public Process setflagN(boolean in)
                 throws java.lang.CloneNotSupportedException
Factory method that sets the N flag.

Throws:
java.lang.CloneNotSupportedException

setflagZ

public Process setflagZ(boolean in)
                 throws java.lang.CloneNotSupportedException
Factory method that sets the Z flag.

Throws:
java.lang.CloneNotSupportedException

setflagV

public Process setflagV(boolean in)
                 throws java.lang.CloneNotSupportedException
Factory method that sets the V flag.

Throws:
java.lang.CloneNotSupportedException

setflagC

public Process setflagC(boolean in)
                 throws java.lang.CloneNotSupportedException
Factory method that sets the C flag.

Throws:
java.lang.CloneNotSupportedException

getX

public boolean getX()

getN

public boolean getN()

getZ

public boolean getZ()

getV

public boolean getV()

getC

public boolean getC()

setvaluePC

public Process setvaluePC(Reg32 addr)
                   throws java.lang.CloneNotSupportedException
Factory method that sets the PC value.

Throws:
java.lang.CloneNotSupportedException

setvalueD

public Process setvalueD(int i,
                         Reg32 u32)
                  throws java.lang.CloneNotSupportedException
Factory method that sets the value of a D register.

Throws:
java.lang.CloneNotSupportedException

setvalueA

public Process setvalueA(int i,
                         Reg32 u32)
                  throws java.lang.CloneNotSupportedException
Factory method that sets the value of an A register.

Throws:
java.lang.CloneNotSupportedException

getD

public Reg32 getD(int i)

getA

public Reg32 getA(int i)

getprocessID

public ByteArray getprocessID()

getA7

public Reg32 getA7()

getPC

public Reg32 getPC()

getregisters

public IRegisters getregisters()

getstoponnextinstruction

public boolean getstoponnextinstruction()

setstoponthenextinstruction

public Process setstoponthenextinstruction(boolean in)
                                    throws java.lang.CloneNotSupportedException
Factory method that sets the value of stoponnextinstruction.

Throws:
java.lang.CloneNotSupportedException