Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## avrora.sim.util
Class MulticastIORWatch

    java.lang.Object
      avrora.sim.util.TransactionalList
          avrora.sim.util.MulticastIORWatch

All Implemented Interfaces:
  Simulator.IORWatch, Simulator.Watch

public class MulticastIORWatch
extends TransactionalList
implements Simulator.IORWatch

The `MulticastIORWatch` is a wrapper around multiple watches that allows them to act as a single watch. It is useful for composing multiple watches into one and is used internally in the simulator.

See Also:
  `Simulator`

Nested Class Summary

Nested classes inherited from class avrora.sim.util.TransactionalList
`TransactionalList.Link`

Nested classes inherited from class avrora.sim.Simulator.IORWatch
`Simulator.IORWatch.Empty`

Field Summary

Fields inherited from class avrora.sim.util.TransactionalList
`head, nesting, tail, transHead, transTail`

Constructor Summary
`MulticastIORWatch()`

Method Summary
`void` | `fireAfterBitRead(State state, int ioreg_num, int bit, boolean value)` The `fireAfterBitRead()` method is called after the data address is read by the program.
`void` | `fireAfterBitWrite(State state, int ioreg_num, int bit, boolean value)` The `fireAfterBitWrite()` method is called after the data address is written by the program.
`void` | `fireAfterRead(State state, int data_addr, byte val)` The `fireAfterRead()` method is called after the probed address is read by the program.
`void` | `fireAfterWrite(State state, int data_addr, byte val)` The `fireAfterWrite()` method is called after the probed address is written by the program.
`void` | `fireBeforeBitRead(State state, int ioreg_num, int bit)` The `fireBeforeBitRead()` method is called before the data address is read by the program.
`void` | `fireBeforeBitWrite(State state, int ioreg_num, int bit, boolean value)` The `fireBeforeBitWrite()` method is called before the data address is written by the program.
`void` | `fireBeforeRead(State state, int data_addr)` The `fireBeforeRead()` method is called before the probed address is read by the program.
`void` | `fireBeforeWrite(State state, int data_addr, byte val)` The `fireBeforeWrite()` method is called before the probed address is written by the program.

Methods inherited from class avrora.sim.util.TransactionalList
`add, beginTransaction, endTransaction, isEmpty, remove`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### MulticastIORWatch

    public MulticastIORWatch()

Method Detail

### fireBeforeRead

    public void fireBeforeRead(State state,
                               int data_addr)

  The `fireBeforeRead()` method is called before the probed address is read by the program. In the implementation of the multicast probe, it simply calls the `fireBeforeRead()` method on each of the probes in the multicast set in the order in which they were inserted.

  Specified by:
    `fireBeforeRead` in interface `Simulator.Watch`
  Parameters:
    `state` - the state of the simulation
    `data_addr` - the address of the data being referenced

### fireAfterRead

    public void fireAfterRead(State state,
                              int data_addr,
                              byte val)

  The `fireAfterRead()` method is called after the probed address is read by the program. In the implementation of the multicast probe, it simply calls the `fireAfterRead()` method on each of the probes in the multicast set in the order in which they were inserted.

  Specified by:
    `fireAfterRead` in interface `Simulator.Watch`
  Parameters:
    `state` - the state of the simulation
    `val` - the value of the memory location being read
    `data_addr` - the address of the data being referenced

### fireBeforeWrite

    public void fireBeforeWrite(State state,
                                int data_addr,
                                byte val)

  The `fireBeforeWrite()` method is called before the probed address is written by the program. In the implementation of the multicast probe, it simply calls the `fireBeforeWrite()` method on each of the probes in the multicast set in the order in which they were inserted.

  Specified by:
    `fireBeforeWrite` in interface `Simulator.Watch`
  Parameters:
    `state` - the state of the simulation
    `val` - the value being written to the memory location
    `data_addr` - the address of the data being referenced

### fireAfterWrite

    public void fireAfterWrite(State state,
                               int data_addr,
                               byte val)

  The `fireAfterWrite()` method is called after the probed address is written by the program. In the implementation of the multicast probe, it simply calls the `fireAfterWrite()` method on each of the probes in the multicast set in the order in which they were inserted.

  Specified by:
    `fireAfterWrite` in interface `Simulator.Watch`
  Parameters:
    `state` - the state of the simulation
    `val` - the value being written to the memory location
    `data_addr` - the address of the data being referenced

### fireBeforeBitRead

    public void fireBeforeBitRead(State state,
                                  int ioreg_num,
                                  int bit)

  The `fireBeforeBitRead()` method is called before the data address is read by the program. In the implementation of the Empty watch, this method does nothing.

  Specified by:
    `fireBeforeBitRead` in interface `Simulator.IORWatch`
  Parameters:
    `state` - the state of the simulation
    `ioreg_num` - the number of the IO register being read

### fireBeforeBitWrite

    public void fireBeforeBitWrite(State state,
                                   int ioreg_num,
                                   int bit,
                                   boolean value)

  The `fireBeforeBitWrite()` method is called before the data address is written by the program. In the implementation of the Empty watch, this method does nothing.

  Specified by:
    `fireBeforeBitWrite` in interface `Simulator.IORWatch`
  Parameters:
    `state` - the state of the simulation
    `ioreg_num` - the number of the IO register being read
    `value` - the value being written to the memory location

### fireAfterBitRead

    public void fireAfterBitRead(State state,
                                 int ioreg_num,
                                 int bit,
                                 boolean value)

  The `fireAfterBitRead()` method is called after the data address is read by the program. In the implementation of the Empty watch, this method does nothing.

  Specified by:
    `fireAfterBitRead` in interface `Simulator.IORWatch`
  Parameters:
    `state` - the state of the simulation
    `ioreg_num` - the number of the IO register being read
    `value` - the value of the memory location being read

### fireAfterBitWrite

    public void fireAfterBitWrite(State state,
                                  int ioreg_num,
                                  int bit,
                                  boolean value)

  The `fireAfterBitWrite()` method is called after the data address is written by the program. In the implementation of the Empty watch, this method does nothing.

  Specified by:
    `fireAfterBitWrite` in interface `Simulator.IORWatch`
  Parameters:
    `state` - the state of the simulation
    `ioreg_num` - the number of the IO register being read
    `value` - the value being written to the memory location

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD