Class MemoryAccessFilter

java.lang.Object
ghidra.app.emulator.MemoryAccessFilter

public abstract class MemoryAccessFilter extends Object
A means of intercepting and/or modifying the emulator's memory access.

Several of these filters may be chained together, each being invoked in the reverse of the order added. In this way, the first added gets the "final say," but it also is farthest from the original request.

  • Field Details

  • Constructor Details

    • MemoryAccessFilter

      public MemoryAccessFilter()
  • Method Details

    • processRead

      protected abstract void processRead(AddressSpace spc, long off, int size, byte[] values)
      Invoked after a read
      Parameters:
      spc - the space read from
      off - the offset within the space
      size - the number of bytes read
      values - the bytes read
    • processWrite

      protected abstract void processWrite(AddressSpace spc, long off, int size, byte[] values)
      Invoked after a write
      Parameters:
      spc - the space written to
      off - the offset within the space
      size - the number of bytes written
      values - the bytes written
    • dispose

      public void dispose()
      Dispose this filter which will cause it to be removed from the memory state.

      If overriden, be sure to invoke super.dispose().

    • filterOnExecutionOnly

      public boolean filterOnExecutionOnly()
    • setFilterOnExecutionOnly

      public void setFilterOnExecutionOnly(boolean filterOnExecutionOnly)