Class IBO64DataType

All Implemented Interfaces:
BuiltInDataType, DataType, TypeDef, ExtensionPoint

public class IBO64DataType extends AbstractPointerTypedefBuiltIn
IBO64DataType provides a Pointer-Typedef BuiltIn for a 64-bit Image Base Offset Relative Pointer. This TypeDef implementation specifies the PointerType.IMAGE_BASE_RELATIVE attribute/setting associated with a 64-bit Pointer.
This class replaces the use of the old ImageBaseOffset64DataType which did not implement the Pointer interface. This is an alternative BuiltIn implementation to using the more general PointerTypedef datatype with an unspecified referenced datatype. PointerTypedef should be used for other cases (see createIBO64PointerTypedef(DataType)).
  • Field Details

  • Constructor Details

    • IBO64DataType

      public IBO64DataType()
      Constructs a 64-bit Image Base Offset relative pointer-typedef.
    • IBO64DataType

      public IBO64DataType(DataTypeManager dtm)
      Constructs a 64-bit Image Base Offset relative pointer-typedef.
      Parameters:
      dtm - data-type manager whose data organization should be used
  • Method Details

    • getDescription

      public String getDescription()
      Description copied from interface: DataType
      Get a String briefly describing this DataType.
      Returns:
      a one-liner describing this DataType.
    • clone

      public DataType clone(DataTypeManager dtm)
      Description copied from interface: DataType
      Returns an instance of this DataType using the specified DataTypeManager to allow its use of the corresponding DataOrganization while retaining its unique identity (see DataType.getUniversalID() and archive association (see DataType.getSourceArchive()) if applicable.

      This instance will be returned if this datatype's DataTypeManager matches the specified dtm. The recursion depth of a clone will stop on any datatype whose DataTypeManager matches the specified dtm and simply use the existing datatype instance.

      NOTE: In general, this method should not be used to obtain an instance to be modified. In most cases changes may be made directly to this instance if supported or to a DataType.copy(DataTypeManager) of this type.

      Parameters:
      dtm - the data-type manager instance whose data-organization should apply.
      Returns:
      cloned instance which may be the same as this instance
    • getMnemonic

      public String getMnemonic(Settings settings)
      Description copied from interface: DataType
      Get the mnemonic for this DataType.
      Specified by:
      getMnemonic in interface DataType
      Overrides:
      getMnemonic in class AbstractDataType
      Parameters:
      settings - settings which may influence the result or null
      Returns:
      the mnemonic for this DataType.
    • getBuiltInSettingsDefinitions

      public TypeDefSettingsDefinition[] getBuiltInSettingsDefinitions()
      Description copied from class: BuiltIn
      Gets a list of all the settingsDefinitions used by this datatype.
      Overrides:
      getBuiltInSettingsDefinitions in class AbstractPointerTypedefBuiltIn
      Returns:
      a list of the settingsDefinitions used by this datatype.
    • createIBO64PointerTypedef

      public static PointerTypedef createIBO64PointerTypedef(DataType referencedDataType)
      Create a IBO64 PointerTypedef with auto-naming. If needed, a name and category may be assigned to the returned instance. Unlike using an immutable IBO32DataType instance the returned instance is mutable.
      Parameters:
      referencedDataType - referenced datatype or null
      Returns:
      new IBO64 pointer-typedef