Package ghidra.trace.database.program
Class DBTraceProgramViewPropertyMapManager.AbstractDBTraceProgramViewPropertyMap<T>
java.lang.Object
ghidra.trace.database.program.DBTraceProgramViewPropertyMapManager.AbstractDBTraceProgramViewPropertyMap<T>
- All Implemented Interfaces:
PropertyMap<T>
- Direct Known Subclasses:
DBTraceProgramViewPropertyMapManager.DBTraceProgramViewIntPropertyMap,DBTraceProgramViewPropertyMapManager.DBTraceProgramViewLongPropertyMap,DBTraceProgramViewPropertyMapManager.DBTraceProgramViewObjectPropertyMap,DBTraceProgramViewPropertyMapManager.DBTraceProgramViewStringPropertyMap,DBTraceProgramViewPropertyMapManager.DBTraceProgramViewVoidPropertyMap
- Enclosing class:
DBTraceProgramViewPropertyMapManager
protected abstract class DBTraceProgramViewPropertyMapManager.AbstractDBTraceProgramViewPropertyMap<T>
extends Object
implements PropertyMap<T>
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionReturns the property value stored at the specified address or null if no property found.protected AddressSetViewGet the first Address where a property value exists.Get the last Address where a property value exists.getName()Get the name for this property map.Get the next address where the property value exists.Get the previous Address where a property value exists.Returns an iterator over the addresses that a property value.getPropertyIterator(Address start, boolean forward) Returns an iterator over the address having a property value.getPropertyIterator(Address start, Address end) Returns an iterator over the indices having a property value.getPropertyIterator(Address start, Address end, boolean forward) Returns an iterator over addresses that have a property value.Returns an iterator over the addresses that have a property value and are in the given address set.getPropertyIterator(AddressSetView asv, boolean forward) Returns an iterator over the addresses that have a property value and are in the given address set.intgetSize()Get the number of properties in the map.booleanhasProperty(Address addr) returns whether there is a property value at addr.booleanintersects(Address start, Address end) Given two addresses, indicate whether there is an address in that range (inclusive) having the property.booleanintersects(AddressSetView set) Indicate whether there is an address within the set which exists within this map.voidMoves the properties defined in the range from the start address thru the end address to now be located beginning at the newStart address.booleanRemove the property value at the given address.booleanremoveRange(Address start, Address end) Removes all property values within a given range.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface ghidra.program.model.util.PropertyMap
add, getValueClass
-
Field Details
-
map
-
name
-
-
Constructor Details
-
AbstractDBTraceProgramViewPropertyMap
-
-
Method Details
-
getName
Description copied from interface:PropertyMapGet the name for this property map.- Specified by:
getNamein interfacePropertyMap<T>- Returns:
- map name
-
getAddressSetView
-
intersects
Description copied from interface:PropertyMapGiven two addresses, indicate whether there is an address in that range (inclusive) having the property.- Specified by:
intersectsin interfacePropertyMap<T>- Parameters:
start- the start of the range.end- the end of the range.- Returns:
- boolean true if at least one address in the range has the property, false otherwise.
-
intersects
Description copied from interface:PropertyMapIndicate whether there is an address within the set which exists within this map.- Specified by:
intersectsin interfacePropertyMap<T>- Parameters:
set- set of addresses- Returns:
- boolean true if at least one address in the set has the property, false otherwise.
-
removeRange
Description copied from interface:PropertyMapRemoves all property values within a given range.- Specified by:
removeRangein interfacePropertyMap<T>- Parameters:
start- begin rangeend- end range, inclusive- Returns:
- true if any property value was removed; return false otherwise.
-
remove
Description copied from interface:PropertyMapRemove the property value at the given address.- Specified by:
removein interfacePropertyMap<T>- Parameters:
addr- the address where the property should be removed- Returns:
- true if the property value was removed, false otherwise.
-
hasProperty
Description copied from interface:PropertyMapreturns whether there is a property value at addr.- Specified by:
hasPropertyin interfacePropertyMap<T>- Parameters:
addr- the address in question- Returns:
- true if map has value at specified address
-
get
Description copied from interface:PropertyMapReturns the property value stored at the specified address or null if no property found.- Specified by:
getin interfacePropertyMap<T>- Parameters:
addr- property address- Returns:
- property value
-
getNextPropertyAddress
Description copied from interface:PropertyMapGet the next address where the property value exists.- Specified by:
getNextPropertyAddressin interfacePropertyMap<T>- Parameters:
addr- the address from which to begin the search (exclusive).- Returns:
- property value location after specified
addror null if none found
-
getPreviousPropertyAddress
Description copied from interface:PropertyMapGet the previous Address where a property value exists.- Specified by:
getPreviousPropertyAddressin interfacePropertyMap<T>- Parameters:
addr- the address from which to begin the search (exclusive).- Returns:
- property value location after specified
addror null if none found
-
getFirstPropertyAddress
Description copied from interface:PropertyMapGet the first Address where a property value exists.- Specified by:
getFirstPropertyAddressin interfacePropertyMap<T>- Returns:
- first property value location or null if none found
-
getLastPropertyAddress
Description copied from interface:PropertyMapGet the last Address where a property value exists.- Specified by:
getLastPropertyAddressin interfacePropertyMap<T>- Returns:
- last property value location or null if none found
-
getSize
public int getSize()Description copied from interface:PropertyMapGet the number of properties in the map.- Specified by:
getSizein interfacePropertyMap<T>- Returns:
- number of stored property values
-
getPropertyIterator
Description copied from interface:PropertyMapReturns an iterator over the indices having a property value.- Specified by:
getPropertyIteratorin interfacePropertyMap<T>- Parameters:
start- minimum addressend- maximum address- Returns:
- forward property address iterator
-
getPropertyIterator
Description copied from interface:PropertyMapReturns an iterator over addresses that have a property value.- Specified by:
getPropertyIteratorin interfacePropertyMap<T>- Parameters:
start- minimum addressend- maximum addressforward- if true will iterate in increasing address order, otherwise it will start at the end and iterate in decreasing address order- Returns:
- property address iterator
-
getPropertyIterator
Description copied from interface:PropertyMapReturns an iterator over the addresses that a property value.- Specified by:
getPropertyIteratorin interfacePropertyMap<T>- Returns:
- forward property address iterator
-
getPropertyIterator
Description copied from interface:PropertyMapReturns an iterator over the addresses that have a property value and are in the given address set.- Specified by:
getPropertyIteratorin interfacePropertyMap<T>- Parameters:
asv- the set of addresses to iterate over.- Returns:
- forward property address iterator
-
getPropertyIterator
Description copied from interface:PropertyMapReturns an iterator over the addresses that have a property value and are in the given address set.- Specified by:
getPropertyIteratorin interfacePropertyMap<T>- Parameters:
asv- the set of addresses to iterate over.forward- if true will iterate in increasing address order, otherwise it will start at the end and iterate in decreasing address order- Returns:
- property address iterator
-
getPropertyIterator
Description copied from interface:PropertyMapReturns an iterator over the address having a property value.- Specified by:
getPropertyIteratorin interfacePropertyMap<T>- Parameters:
start- the starting addressforward- if true will iterate in increasing address order, otherwise it will start at the end and iterate in decreasing address order- Returns:
- property address iterator
-
moveRange
Description copied from interface:PropertyMapMoves the properties defined in the range from the start address thru the end address to now be located beginning at the newStart address. The moved properties will be located at the same relative location to the newStart address as they were previously to the start address.- Specified by:
moveRangein interfacePropertyMap<T>- Parameters:
start- the start of the range to move.end- the end of the range to move.newStart- the new start location of the range of properties after the move.
-