Package ghidra.trace.model.property
Interface TracePropertyMap<T>
- Type Parameters:
T- the type of values
- All Superinterfaces:
TracePropertyMapOperations<T>
- All Known Implementing Classes:
AbstractDBTracePropertyMap,AbstractDBTracePropertyMap.DBTraceIntPropertyMap,AbstractDBTracePropertyMap.DBTraceLongPropertyMap,AbstractDBTracePropertyMap.DBTraceSaveablePropertyMap,AbstractDBTracePropertyMap.DBTraceStringPropertyMap,AbstractDBTracePropertyMap.DBTraceVoidPropertyMap
A range map for storing properties in a trace
Technically, each range is actually a "box" in two dimensions: time and space. Time is
represented by the span of snapshots covered, and space is represented by the range of addresses
covered. Currently, no effort is made to optimize coverage for entries having the same value. For
operations on entries, see TracePropertyMapOperations.
This interface is the root of a multi-space property map. For memory spaces, clients can
generally use the operations inherited on this interface. For register spaces, clients must use
getPropertyMapRegisterSpace(TraceThread, int, boolean) or similar.
-
Method Summary
Modifier and TypeMethodDescriptionvoiddelete()Delete this property and remove all of its mapsdefault TracePropertyMapSpace<T> getPropertyMapRegisterSpace(TraceStackFrame frame, boolean createIfAbsent) Get the map space for the registers of a given frame (which knows its thread)getPropertyMapRegisterSpace(TraceThread thread, int frameLevel, boolean createIfAbsent) Get the map space for the registers of a given thread and framegetPropertyMapSpace(AddressSpace space, boolean createIfAbsent) Get the map space for the given address spaceMethods inherited from interface ghidra.trace.model.property.TracePropertyMapOperations
clear, get, getAddressSetView, getEntries, getEntry, getValueClass, set, set
-
Method Details
-
getPropertyMapSpace
Get the map space for the given address space- Parameters:
space- the address spacecreateIfAbsent- true to create the map space if it doesn't already exist- Returns:
- the space, or null
-
getPropertyMapRegisterSpace
TracePropertyMapSpace<T> getPropertyMapRegisterSpace(TraceThread thread, int frameLevel, boolean createIfAbsent) Get the map space for the registers of a given thread and frame- Parameters:
thread- the threadframeLevel- the frame level, 0 being the innermostcreateIfAbsent- true to create the map space if it doesn't already exist- Returns:
- the space, or null
-
getPropertyMapRegisterSpace
default TracePropertyMapSpace<T> getPropertyMapRegisterSpace(TraceStackFrame frame, boolean createIfAbsent) Get the map space for the registers of a given frame (which knows its thread)- Parameters:
frame- the framecreateIfAbsent- true to create the map space if it doesn't already exist- Returns:
- the space, or null
-
delete
void delete()Delete this property and remove all of its mapsThe property can be re-created with the same or different value type.
-