Package ghidra.app.util.opinion

# Class MSCoffLoader

java.lang.Object
ghidra.app.util.opinion.AbstractProgramLoader
ghidra.app.util.opinion.AbstractLibrarySupportLoader
ghidra.app.util.opinion.CoffLoader
ghidra.app.util.opinion.MSCoffLoader

All Implemented Interfaces:
  `Loader`, `ExtensionPoint`, `Comparable<Loader>`

public class MSCoffLoader extends CoffLoader

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from class ghidra.app.util.opinion.AbstractLibrarySupportLoader

  `AbstractLibrarySupportLoader.LibrarySearchPath, AbstractLibrarySupportLoader.UnprocessedLibrary`

  ## Nested classes/interfaces inherited from interface ghidra.app.util.opinion.Loader

  `Loader.ImporterSettings`

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final String`
  `MSCOFF_NAME`

  ### Fields inherited from class ghidra.app.util.opinion.CoffLoader

  `COFF_NAME, FAKE_LINK_OPTION_NAME`

  ### Fields inherited from class ghidra.app.util.opinion.AbstractLibrarySupportLoader

  `DEPTH_OPTION_NAME, LIBRARY_DEST_FOLDER_OPTION_NAME, LIBRARY_SEARCH_PATH_DUMMY_OPTION_NAME, LINK_EXISTING_OPTION_NAME, LINK_SEARCH_FOLDER_OPTION_NAME, LOAD_LIBRARY_OPTION_NAME, LOAD_ONLY_LIBRARIES_OPTION_NAME, MIRROR_LAYOUT_OPTION_NAME`

  ### Fields inherited from class ghidra.app.util.opinion.AbstractProgramLoader

  `ANCHOR_LABELS_OPTION_NAME, APPLY_LABELS_OPTION_NAME`

  ### Fields inherited from interface ghidra.app.util.opinion.Loader

  `COMMAND_LINE_ARG_PREFIX, loggingDisabled, OPTIONS_PROJECT_SAVE_STATE_KEY`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `MSCoffLoader()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `protected Comparator<String>`
  `getLibraryNameComparator()`
  Returns a `Comparator` for comparing library names.
  `String`
  `getName()`
  Gets the `Loader`'s name, which is used both for display purposes, and to identify the `Loader` in the opinion files.
  `protected int`
  `getSectionAlignment(CoffSectionHeader section)`
  Query a section header for alignment information.
  `boolean`
  `isMicrosoftFormat()`

  ### Methods inherited from class ghidra.app.util.opinion.CoffLoader

  `findSupportedLoadSpecs, getDefaultOptions, load, validateOptions`

  ### Methods inherited from class ghidra.app.util.opinion.AbstractLibrarySupportLoader

  `createLibraryByteProvider, findLibraryInLoadedList, findLibraryInProject, getCustomLibrarySearchPaths, getLibraryDestinationFolderPath, getLibraryDestinationSearchFolder, getLibraryLoadDepth, getLibrarySearchFolders, getLibrarySearchPaths, getLinkSearchFolder, getTier, getTierPriority, isLinkExistingLibraries, isLoadLibraries, isMirroredLayout, isValidSearchPath, loadProgram, loadProgramInto, lookupLibraryInFolder, lookupLibraryInFs, matchSupportedLoadSpec, postLoadProgramFixups, processLibrary, shouldLoadOnlyLibraries, shouldSearchAllPaths`

  ### Methods inherited from class ghidra.app.util.opinion.AbstractProgramLoader

  `addExternalBlock, createDefaultMemoryBlocks, createProgram, createProgram, generateBlockName, getLanguageService, load, loadInto, markAsFunction, postLoadCleanup, setProgramProperties, shouldApplyProcessorLabelsByDefault`

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

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

  ### Methods inherited from interface ghidra.app.util.opinion.Loader

  `compareTo, getPreferredFileName, loadsIntoNewFolder, supportsLoadIntoProgram, supportsLoadIntoProgram`

- ## Field Details

  - ### MSCOFF_NAME

    public static final String MSCOFF_NAME
    See Also:
      - Constant Field Values

- ## Constructor Details

  - ### MSCoffLoader

    public MSCoffLoader()

- ## Method Details

  - ### isMicrosoftFormat

    public boolean isMicrosoftFormat()
    Overrides:
      `isMicrosoftFormat` in class `CoffLoader`
    Returns:
      true if this loader assumes the Microsoft variant of the COFF format

  - ### getName

    public String getName()
    Description copied from interface: `Loader`
    Gets the `Loader`'s name, which is used both for display purposes, and to identify the `Loader` in the opinion files.
    Specified by:
      `getName` in interface `Loader`
    Overrides:
      `getName` in class `CoffLoader`
    Returns:
      The `Loader`'s name.

  - ### getLibraryNameComparator

    protected Comparator<String> getLibraryNameComparator()
    Description copied from class: `AbstractLibrarySupportLoader`
    Returns a `Comparator` for comparing library names.

    No assumptions should be made about whether the library name includes path information or not.

    Overrides:
      `getLibraryNameComparator` in class `AbstractLibrarySupportLoader`
    Returns:
      a `Comparator` for comparing library names

  - ### getSectionAlignment

    protected int getSectionAlignment(CoffSectionHeader section)
    Description copied from class: `CoffLoader`
    Query a section header for alignment information. The base version of this method assumes no alignment information is stored in the section header. Subclasses may implement a platform-specific check for alignment information.
    Overrides:
      `getSectionAlignment` in class `CoffLoader`
    Parameters:
      `section` - header object for the section
    Returns:
      the alignment requested by the section