Interface InternalTraceDefinedDataView

All Superinterfaces:
InternalBaseCodeUnitsView<TraceData>, InternalTraceBaseDefinedUnitsView<TraceData>, TraceBaseCodeUnitsView<TraceData>, TraceBaseDefinedUnitsView<TraceData>, TraceDefinedDataView
All Known Implementing Classes:
DBTraceDefinedDataMemoryView, DBTraceDefinedDataView

public interface InternalTraceDefinedDataView extends TraceDefinedDataView, InternalTraceBaseDefinedUnitsView<TraceData>
  • Method Details

    • getPlatformOf

      default TracePlatform getPlatformOf(DataType type)
    • create

      DBTraceDataAdapter create(Lifespan lifespan, Address address, TracePlatform platform, DataType dataType) throws CodeUnitInsertionException
      Description copied from interface: TraceDefinedDataView
      Create a data unit of unspecified length starting at the given address

      The length will be determined by the data type, possibly by examining the bytes, e.g., a null-terminated UTF-8 string. The given type is resolved to the given platform, even if the type already exists in the trace by another platform.

      Specified by:
      create in interface TraceDefinedDataView
      Parameters:
      lifespan - the span for which the unit is effective
      address - the starting address
      platform - the platform for the type's DataOrganization
      dataType - the data type for the unit
      Returns:
      the new data unit
      Throws:
      CodeUnitInsertionException - if there's a conflict
    • create

      DBTraceDataAdapter create(Lifespan lifespan, Address address, TracePlatform platform, DataType dataType, int length) throws CodeUnitInsertionException
      Description copied from interface: TraceDefinedDataView
      Create a data unit starting at the given address

      The given type is resolved to the given platform, even if the type already exists in the trace by another platform.

      Specified by:
      create in interface TraceDefinedDataView
      Parameters:
      lifespan - the span for which the unit is effective
      address - the starting address
      platform - the platform for the type's DataOrganization
      dataType - the data type for the unit
      length - the length of the unit, -1 for unspecified
      Returns:
      the new data unit
      Throws:
      CodeUnitInsertionException - if there's a conflict
    • create

      default DBTraceDataAdapter create(Lifespan lifespan, Address address, DataType dataType, int length) throws CodeUnitInsertionException
      Description copied from interface: TraceDefinedDataView
      Create a data unit starting at the given address

      If the given type is already part of this trace, its platform is used as is. If not, then it is resolved to the host platform.

      Specified by:
      create in interface TraceDefinedDataView
      Parameters:
      lifespan - the span for which the unit is effective
      address - the starting address
      dataType - the data type for the unit
      length - the length of the unit, -1 for unspecified
      Returns:
      the new data unit
      Throws:
      CodeUnitInsertionException - if there's a conflict
    • create

      default DBTraceDataAdapter create(Lifespan lifespan, Address address, DataType dataType) throws CodeUnitInsertionException
      Description copied from interface: TraceDefinedDataView
      Create a data unit of unspecified length starting at the given address

      The length will be determined by the data type, possibly by examining the bytes, e.g., a null-terminated UTF-8 string. If the given type is already part of this trace, its platform is used as is. If not, then it is resolved to the host platform.

      Specified by:
      create in interface TraceDefinedDataView
      Parameters:
      lifespan - the span for which the unit is effective
      address - the starting address
      dataType - the data type for the unit
      Returns:
      the new data unit
      Throws:
      CodeUnitInsertionException - if there's a conflict
    • create

      default DBTraceDataAdapter create(TracePlatform platform, Lifespan lifespan, Register register, DataType dataType) throws CodeUnitInsertionException
      Description copied from interface: TraceDefinedDataView
      Create a data unit on the given platform register

      If the register is memory mapped, this will delegate to the appropriate space. In those cases, the assignment affects all threads. The type is resolved to the given platform, even if it already exists in the trace by another platform.

      Specified by:
      create in interface TraceDefinedDataView
      Parameters:
      platform - the platform whose language defines the register
      lifespan - the span for which the unit is effective
      register - the register to assign a data type
      dataType - the data type for the register
      Returns:
      the new data unit
      Throws:
      CodeUnitInsertionException - if there's a conflict