Package ghidra.debug.api.emulation

# Interface PcodeDebuggerAccess

All Superinterfaces:
  `PcodeTraceAccess`

public interface PcodeDebuggerAccess extends PcodeTraceAccess
A trace-and-debugger access shim

In addition to the trace "coordinates" encapsulated by `PcodeTraceAccess`, this encapsulates the tool controlling a session and the session's target. This permits p-code executor/emulator states to access target data and to access session data, e.g., data from mapped static images. It supports the same method chain pattern as `PcodeTraceAccess`.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `PcodeDebuggerRegistersAccess`
  `getDataForLocalState(PcodeThread<?> thread, int frame)`
  Get the data-access shim for use in an emulator thread's local state
  `PcodeDebuggerRegistersAccess`
  `getDataForLocalState(TraceThread thread, int frame)`
  Get the data-access shim for use in an emulator thread's local state
  `PcodeDebuggerMemoryAccess`
  `getDataForSharedState()`
  Get the data-access shim for use in an emulator's shared state

  ### Methods inherited from interface ghidra.pcode.exec.trace.data.PcodeTraceAccess

  `deriveForWrite, getDataForThreadState, getLanguage, newPcodeTraceThreadAccess`

- ## Method Details

  - ### getDataForSharedState

    PcodeDebuggerMemoryAccess getDataForSharedState()
    Description copied from interface: `PcodeTraceAccess`
    Get the data-access shim for use in an emulator's shared state
    Specified by:
      `getDataForSharedState` in interface `PcodeTraceAccess`
    Returns:
      the shim

  - ### getDataForLocalState

    PcodeDebuggerRegistersAccess getDataForLocalState(PcodeThread<?> thread, int frame)
    Description copied from interface: `PcodeTraceAccess`
    Get the data-access shim for use in an emulator thread's local state
    Specified by:
      `getDataForLocalState` in interface `PcodeTraceAccess`
    Parameters:
      `thread` - the emulator's thread
      `frame` - the frame, usually 0
    Returns:
      the shim

  - ### getDataForLocalState

    PcodeDebuggerRegistersAccess getDataForLocalState(TraceThread thread, int frame)
    Description copied from interface: `PcodeTraceAccess`
    Get the data-access shim for use in an emulator thread's local state
    Specified by:
      `getDataForLocalState` in interface `PcodeTraceAccess`
    Parameters:
      `thread` - the trace thread associated with the emulator's thread
      `frame` - the frame, usually 0
    Returns:
      the shim