Package ghidra.app.merge

# Class DataTypeArchiveMergeManagerPlugin

java.lang.Object
ghidra.framework.plugintool.Plugin
ghidra.app.merge.MergeManagerPlugin
ghidra.app.merge.DataTypeArchiveMergeManagerPlugin

All Implemented Interfaces:
  `ProgramaticUseOnly`, `DomainObjectListener`, `PluginEventListener`, `ServiceListener`, `ExtensionPoint`, `EventListener`

public class DataTypeArchiveMergeManagerPlugin extends MergeManagerPlugin
Plugin that provides a merge component provider for data type archives.

- ## Field Summary

  ### Fields inherited from class ghidra.app.merge.MergeManagerPlugin

  `currentDomainObject, mergeManager, provider`

  ### Fields inherited from class ghidra.framework.plugintool.Plugin

  `name, pluginDescription, tool`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `DataTypeArchiveMergeManagerPlugin(PluginTool tool, DataTypeArchiveMergeManager mergeManager, DataTypeArchive dataTypeArchive)`
  Constructor for plugin that handles multi-user merge of data type archives.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `boolean`
  `closeAllPrograms(boolean ignoreChanges)`
  `boolean`
  `closeProgram()`
  `boolean`
  `closeProgram(Program program, boolean ignoreChanges)`
  `ghidra.app.merge.MergeManagerProvider`
  `createProvider()`
  Creates the provider that will be displayed in the merge tool.
  `protected void`
  `dispose()`
  Tells a plugin that it is no longer needed.
  `DataTypeArchive[]`
  `getAllOpenDataTypeArchives()`
  `static String`
  `getCategory()`
  `DataTypeArchive`
  `getCurrentDataTypeArchive()`
  `static String`
  `getDescription()`
  `static String`
  `getDescriptiveName()`
  `Program`
  `getProgram(Address addr)`
  `int`
  `getSearchPriority(Program p)`
  `boolean`
  `isVisible(Program program)`
  `Program`
  `openProgram(DomainFile domainFile)`
  `Program`
  `openProgram(DomainFile df, int version)`
  `Program`
  `openProgram(DomainFile domainFile, int version, int state)`
  `void`
  `openProgram(Program program)`
  `void`
  `openProgram(Program program, boolean current)`
  `void`
  `openProgram(Program program, int state)`
  `void`
  `processEvent(PluginEvent event)`
  Method called to process a plugin event.
  `void`
  `releaseProgram(Program program, Object persistentOwner)`
  `void`
  `setCurrentProgram(Program p)`
  `boolean`
  `setPersistentOwner(Program program, Object owner)`
  `void`
  `setSearchPriority(Program p, int priority)`

  ### Methods inherited from class ghidra.app.merge.MergeManagerPlugin

  `canClose, closeAllDomainObjects, closeDomainObject, closeDomainObject, domainObjectChanged, getAllOpenDomainObjects, getCurrentDomainObject, getSearchPriority, isVisible, openDomainObject, openDomainObject, openDomainObject, openDomainObject, openDomainObject, openDomainObject, releaseDomainObject, setCurrentDomainObject, setPersistentOwner, setSearchPriority`

  ### Methods inherited from class ghidra.framework.plugintool.Plugin

  `accept, acceptData, canCloseDomainObject, cleanup, close, dataStateRestoreCompleted, dependsUpon, deregisterService, equals, eventSent, firePluginEvent, getData, getMissingRequiredServices, getName, getPluginDescription, getServicesRequired, getSupportedDataTypes, getTool, getTransientState, getUndoRedoState, hashCode, hasMissingRequiredService, hasUnsaveData, init, internalRegisterEventConsumed, isDisposed, prepareToSave, readConfigState, readDataState, registerDynamicServiceProvided, registerServiceProvided, restoreTransientState, restoreUndoRedoState, saveData, serviceAdded, serviceRemoved, writeConfigState, writeDataState`

  ### Methods inherited from class java.lang.Object

  `clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### DataTypeArchiveMergeManagerPlugin

    public DataTypeArchiveMergeManagerPlugin(PluginTool tool, DataTypeArchiveMergeManager mergeManager, DataTypeArchive dataTypeArchive)
    Constructor for plugin that handles multi-user merge of data type archives.
    Parameters:
      `tool` - the tool
      `mergeManager` - the merge manager that will control the merge process
      `dataTypeArchive` - the data type archive

- ## Method Details

  - ### createProvider

    public ghidra.app.merge.MergeManagerProvider createProvider()
    Description copied from class: `MergeManagerPlugin`
    Creates the provider that will be displayed in the merge tool. This shows the merge progress to the user and lets the user resolve conflicts. Any class that extends this plugin must provide its own MergeManagerProvider here that will be shown to the user for the merge.
    Specified by:
      `createProvider` in class `MergeManagerPlugin`
    Returns:
      the merge provider associated with this plugin.

  - ### processEvent

    public void processEvent(PluginEvent event)
    Description copied from class: `Plugin`
    Method called to process a plugin event. Plugins should override this method if the plugin processes PluginEvents;
    Specified by:
      `processEvent` in class `MergeManagerPlugin`
    Parameters:
      `event` - plugin to process

  - ### dispose

    protected void dispose()
    Description copied from class: `Plugin`
    Tells a plugin that it is no longer needed. The plugin should release any resources that it has. All actions, components, services will automatically be cleaned up.
    Overrides:
      `dispose` in class `MergeManagerPlugin`

  - ### getDescription

    public static String getDescription()

  - ### getDescriptiveName

    public static String getDescriptiveName()

  - ### getCategory

    public static String getCategory()

  - ### closeAllPrograms

    public boolean closeAllPrograms(boolean ignoreChanges)

  - ### closeProgram

    public boolean closeProgram()

  - ### closeProgram

    public boolean closeProgram(Program program, boolean ignoreChanges)

  - ### getAllOpenDataTypeArchives

    public DataTypeArchive[] getAllOpenDataTypeArchives()

  - ### getCurrentDataTypeArchive

    public DataTypeArchive getCurrentDataTypeArchive()

  - ### getProgram

    public Program getProgram(Address addr)

  - ### getSearchPriority

    public int getSearchPriority(Program p)

  - ### isVisible

    public boolean isVisible(Program program)

  - ### openProgram

    public Program openProgram(DomainFile domainFile)

  - ### openProgram

    public Program openProgram(DomainFile df, int version)

  - ### openProgram

    public Program openProgram(DomainFile domainFile, int version, int state)

  - ### openProgram

    public void openProgram(Program program)

  - ### openProgram

    public void openProgram(Program program, boolean current)

  - ### openProgram

    public void openProgram(Program program, int state)

  - ### releaseProgram

    public void releaseProgram(Program program, Object persistentOwner)

  - ### setCurrentProgram

    public void setCurrentProgram(Program p)

  - ### setPersistentOwner

    public boolean setPersistentOwner(Program program, Object owner)

  - ### setSearchPriority

    public void setSearchPriority(Program p, int priority)