caoss.simulator

## Class Program

- java.lang.Object
- - caoss.simulator.Program

-     public class Program
      extends java.lang.Object

  Class that defines programs to be executed by the CAOSS simulator
  Author:
    Herve Paulino

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `Program(java.lang.String fileName, InstructionList instructionList)` Construct a program from the given list of instructions

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.String` | `getFileName()` Get the name of the file storing the program
    `static boolean` | `isComputationOn()` Test if computation instructions are to be interpreted.
    `static boolean` | `isMemoryAccessOn()` Test if memory access instructions are to be interpreted.
    `InstructionList.InstructionListIterator` | `iterator()` Iterator over the program's list of instructions
    `static void` | `setComputation(boolean flag)` Set if the computation instructions are to be interpreted or not.
    `static void` | `setMemoryAccess(boolean flag)` Set if the memory access instructions are to be interpreted or not.
    `int` | `size()` Size of the program in number of instructions

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### Program

          public Program(java.lang.String fileName,
                         InstructionList instructionList)

      Construct a program from the given list of instructions
      Parameters:
        `instructionList` - The list of instructions

  - ### Method Detail

    - #### setComputation

          public static void setComputation(boolean flag)

      Set if the computation instructions are to be interpreted or not. By default they are.
      Parameters:
        `flag` - If true, computation instructions will be interpreted

    - #### isComputationOn

          public static boolean isComputationOn()

      Test if computation instructions are to be interpreted.
      Returns:
        true is computation instructions are to be interpreted

    - #### setMemoryAccess

          public static void setMemoryAccess(boolean flag)

      Set if the memory access instructions are to be interpreted or not. By default they are.
      Parameters:
        `flag` - If true, memory access instructions will be interpreted

    - #### isMemoryAccessOn

          public static boolean isMemoryAccessOn()

      Test if memory access instructions are to be interpreted.
      Returns:
        true is memory access instructions are to be interpreted

    - #### iterator

          public InstructionList.InstructionListIterator iterator()

      Iterator over the program's list of instructions
      Returns:
        The iterator

    - #### size

          public int size()

      Size of the program in number of instructions
      Returns:
        The program's number of instructions

    - #### getFileName

          public java.lang.String getFileName()

      Get the name of the file storing the program
      Returns: