Interface TraceDefinedDataView
- All Superinterfaces:
TraceBaseCodeUnitsView<TraceData>,TraceBaseDefinedUnitsView<TraceData>
- All Known Subinterfaces:
InternalTraceDefinedDataView
- All Known Implementing Classes:
DBTraceDefinedDataMemoryView,DBTraceDefinedDataView
This view excludes instructions and default / undefined data units.
-
Method Summary
Modifier and TypeMethodDescriptioncreate(TracePlatform platform, Lifespan lifespan, Register register, DataType dataType) Create a data unit on the given platform registerCreate a data unit of unspecified length starting at the given addressCreate a data unit starting at the given addresscreate(Lifespan lifespan, Address address, TracePlatform platform, DataType dataType) Create a data unit of unspecified length starting at the given addresscreate(Lifespan lifespan, Address address, TracePlatform platform, DataType dataType, int length) Create a data unit starting at the given addressdefault TraceDataCreate a data unit on the given registerMethods inherited from interface ghidra.trace.model.listing.TraceBaseCodeUnitsView
containsAddress, coversRange, coversRange, get, get, get, get, get, get, get, getAddressSetView, getAddressSetView, getAfter, getAt, getBefore, getCeiling, getContaining, getContaining, getContaining, getFloor, getForRegister, getForRegister, getIntersecting, getTrace, intersectsRange, intersectsRange, sizeMethods inherited from interface ghidra.trace.model.listing.TraceBaseDefinedUnitsView
clear, clear, clear
-
Method Details
-
create
TraceData create(Lifespan lifespan, Address address, DataType dataType, int length) throws CodeUnitInsertionException Create a data unit starting at the given addressIf 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.
- Parameters:
lifespan- the span for which the unit is effectiveaddress- the starting addressdataType- the data type for the unitlength- the length of the unit, -1 for unspecified- Returns:
- the new data unit
- Throws:
CodeUnitInsertionException- if there's a conflict
-
create
TraceData create(Lifespan lifespan, Address address, TracePlatform platform, DataType dataType, int length) throws CodeUnitInsertionException Create a data unit starting at the given addressThe given type is resolved to the given platform, even if the type already exists in the trace by another platform.
- Parameters:
lifespan- the span for which the unit is effectiveaddress- the starting addressplatform- the platform for the type'sDataOrganizationdataType- the data type for the unitlength- the length of the unit, -1 for unspecified- Returns:
- the new data unit
- Throws:
CodeUnitInsertionException- if there's a conflict
-
create
TraceData create(Lifespan lifespan, Address address, DataType dataType) throws CodeUnitInsertionException Create a data unit of unspecified length starting at the given addressThe 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.
- Parameters:
lifespan- the span for which the unit is effectiveaddress- the starting addressdataType- the data type for the unit- Returns:
- the new data unit
- Throws:
CodeUnitInsertionException- if there's a conflict
-
create
TraceData create(Lifespan lifespan, Address address, TracePlatform platform, DataType dataType) throws CodeUnitInsertionException Create a data unit of unspecified length starting at the given addressThe 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.
- Parameters:
lifespan- the span for which the unit is effectiveaddress- the starting addressplatform- the platform for the type'sDataOrganizationdataType- the data type for the unit- Returns:
- the new data unit
- Throws:
CodeUnitInsertionException- if there's a conflict
-
create
default TraceData create(Lifespan lifespan, Register register, DataType dataType) throws CodeUnitInsertionException Create a data unit on the given registerIf 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 host platform, even if it already exists in the trace by another platform.
- Parameters:
lifespan- the span for which the unit is effectiveregister- the register to assign a data typedataType- the data type for the register- Returns:
- the new data unit
- Throws:
CodeUnitInsertionException- if there's a conflict
-
create
TraceData create(TracePlatform platform, Lifespan lifespan, Register register, DataType dataType) throws CodeUnitInsertionException Create a data unit on the given platform registerIf 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.
- Parameters:
platform- the platform whose language defines the registerlifespan- the span for which the unit is effectiveregister- the register to assign a data typedataType- the data type for the register- Returns:
- the new data unit
- Throws:
CodeUnitInsertionException- if there's a conflict
-