Package ghidra.program.model.address
Class AddressMapImpl
java.lang.Object
ghidra.program.model.address.AddressMapImpl
AddressMapImpl
provides a stand-alone AddressMap.
An AddressMapImpl instance should only be used to decode keys which it has generated.
If this map is used for a specific program instance, the map should be discard if any changes
are made to that programs address map (e.g., removing or renaming overlay spaces).-
Constructor Summary
ConstructorDescriptionCreates a new AddressMapImpl with a mapID of 0.AddressMapImpl
(byte mapID, AddressFactory addrFactory) Creates a new AddressMapImpl with the specified mapID -
Method Summary
Modifier and TypeMethodDescriptiondecodeAddress
(long value) int
findKeyRange
(List<KeyRange> keyRangeList, Address addr) long
Generate a unique key for the specified addr.getKeyRanges
(Address start, Address end) void
Reconcile address space changes using associated address factory.
-
Constructor Details
-
AddressMapImpl
public AddressMapImpl()Creates a new AddressMapImpl with a mapID of 0. -
AddressMapImpl
Creates a new AddressMapImpl with the specified mapID- Parameters:
mapID
- the 8-bit value is placed in the upper 8 bits of every address encoding.
-
-
Method Details
-
decodeAddress
- See Also:
-
getKey
Generate a unique key for the specified addr. Only addresses from a single address space or single program should be passed to this method. Only limited checking is not performed in order to improve performance.- Parameters:
addr
- address- See Also:
-
findKeyRange
- See Also:
-
getKeyRanges
- See Also:
-
getKeyRanges
- See Also:
-
reconcile
public void reconcile()Reconcile address space changes using associated address factory. This method should be invoked following an undo/redo (if the associated address factory may have changed) or removal of an overlay memory block.
-