Class StructureRecoveryPlugin
java.lang.Object
ghidra.framework.plugintool.Plugin
ghidra.app.plugin.ProgramPlugin
ghidra.features.bsim.gui.structs.StructureRecoveryPlugin
- All Implemented Interfaces:
OptionsChangeListener, PluginEventListener, ServiceListener, ExtensionPoint
Plugin for recovering structure layouts across programs.
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsFields inherited from class ProgramPlugin
currentHighlight, currentLocation, currentProgram, currentSelectionFields inherited from class Plugin
name, pluginDescription, tool -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()Close the plugin.doubledoubledoublelongdoublebooleanbooleandoublevoidoptionsChanged(ToolOptions options, String optionName, Object oldValue, Object newValue) Notification that an option changed.voidprocessEvent(PluginEvent event) Process the plugin event.protected voidprogramActivated(Program program) Subclass should override this method if it is interested when programs become active.protected voidprogramClosed(Program program) Subclasses should override this method if it is interested when a program is closed.voidsetAddressesByField(Map<String, AddressSet> toAddressSet) voidsetFunctionMap(Map<Function, Set<Function>> map) voidsetFunctionsByField(Map<String, Set<Function>> functionsByField) voidsetFunctionsToMatch(Set<Function> srcFunctionsToMatch) Methods inherited from class ProgramPlugin
getProgramHighlight, getProgramLocation, getProgramSelection, goTo, goTo, highlightChanged, locationChanged, postProgramActivated, programDeactivated, programOpened, selectionChanged, setSelectionMethods inherited from class Plugin
accept, acceptData, canClose, canCloseDomainObject, cleanup, dataStateRestoreCompleted, dependsUpon, deregisterService, dispose, equals, eventSent, firePluginEvent, getData, getMissingRequiredServices, getName, getPluginDescription, getServicesRequired, getSupportedDataTypes, getTool, getUndoRedoState, hashCode, hasMissingRequiredService, hasUnsaveData, init, internalRegisterEventConsumed, isDisposed, prepareToSave, readConfigState, readDataState, registerDynamicServiceProvided, registerServiceProvided, restoreUndoRedoState, saveData, serviceAdded, serviceRemoved, writeConfigState, writeDataState
-
Field Details
-
HELP_LOCATION
- See Also:
-
-
Constructor Details
-
StructureRecoveryPlugin
-
-
Method Details
-
getCurrentFunction
-
programActivated
Description copied from class:ProgramPluginSubclass should override this method if it is interested when programs become active. Note: this method is called in response to a ProgramActivatedPluginEvent.At the time this method is called, the "currentProgram" variable will be set the new active program.
- Overrides:
programActivatedin classProgramPlugin- Parameters:
program- the new program going active.
-
programClosed
Description copied from class:ProgramPluginSubclasses should override this method if it is interested when a program is closed. This event has no affect on the "current Program". A "programDeactivated" call will occur that affects the active program.- Overrides:
programClosedin classProgramPlugin- Parameters:
program- the program being closed.
-
optionsChanged
public void optionsChanged(ToolOptions options, String optionName, Object oldValue, Object newValue) throws OptionsVetoException Description copied from interface:OptionsChangeListenerNotification that an option changed.Note: to reject an options change, you can throw a
OptionsVetoException.- Specified by:
optionsChangedin interfaceOptionsChangeListener- Parameters:
options- options object containing the property that changedoptionName- name of option that changedoldValue- old value of the optionnewValue- new value of the option- Throws:
OptionsVetoException- if a change is rejected
-
getCurrentProgram
- Overrides:
getCurrentProgramin classProgramPlugin
-
close
public void close()Description copied from class:PluginClose the plugin. This is when the plugin should release resources, such as those from other services. This method should not close resources being used by others (that should happen in dispose()).This method will be called before
Plugin.dispose(). -
processEvent
Description copied from class:ProgramPluginProcess the plugin event.When a program closed event or focus changed event comes in, the locationChanged() and selectionChanged() methods are called with null arguments; currentProgram and currentLocation are cleared.
Note: if the subclass overrides processEvent(), it should call super.processEvent().
- Overrides:
processEventin classProgramPlugin- Parameters:
event- plugin to process
-
loadTargetProgram
-
getOffsets
-
getFieldNames
-
getFunctionMap
-
setFunctionMap
-
getFunctionsByField
-
setFunctionsByField
-
getAddressesByField
-
setAddressesByField
-
getFunctionsToMatch
-
setFunctionsToMatch
-
getTargetDataType
-
getConsole
-
getTargetProgram
-
getDefaultStructureName
-
getOptionStructUseBookmarks
public boolean getOptionStructUseBookmarks() -
getOptionFnMatchBookmarks
public boolean getOptionFnMatchBookmarks() -
getSelfSiginificanceBound
public double getSelfSiginificanceBound() -
getMatchSimilarityLowerBound
public double getMatchSimilarityLowerBound() -
getMatchSimilarityUpperBound
public double getMatchSimilarityUpperBound() -
getMatchConfidenceLowerBound
public double getMatchConfidenceLowerBound() -
getMinConfidence
public double getMinConfidence() -
getMaxOffset
public long getMaxOffset() -
getExcludedOffsets
-
getOptionSoloMatchesOnly
-