Package ghidra.app.util.bin.format.pe

# Class BoundImportForwarderRef

java.lang.Object
ghidra.app.util.bin.format.pe.BoundImportForwarderRef

All Implemented Interfaces:
  `ByteArrayConverter`, `StructConverter`

public class BoundImportForwarderRef extends Object implements StructConverter, ByteArrayConverter
A class to represent the `IMAGE_BOUND_FORWARDER_REF` data structure defined in `winnt.h`.

     typedef struct _IMAGE_BOUND_FORWARDER_REF {
         DWORD   TimeDateStamp;
         WORD    OffsetModuleName;
         WORD    Reserved;
     } IMAGE_BOUND_FORWARDER_REF, *PIMAGE_BOUND_FORWARDER_REF;

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final int`
  `IMAGE_SIZEOF_BOUND_IMPORT_FORWARDER_REF`
  The size of the `IMAGE_BOUND_FORWARDER_REF` in bytes.
  `static final String`
  `NAME`
  The name to use when converting into a structure data type.

  ### Fields inherited from interface ghidra.app.util.bin.StructConverter

  `ASCII, BYTE, DWORD, IBO32, IBO64, POINTER, QWORD, SLEB128, STRING, ULEB128, UTF16, UTF8, VOID, WORD`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `String`
  `getModuleName()`
  Returns the imported module name.
  `short`
  `getOffsetModuleName()`
  Returns the offset, relative the beginning of the Bound Import Table, to the import name.
  `short`
  `getReserved()`
  Returns the reserved word (use unknown).
  `int`
  `getTimeDateStamp()`
  Returns the time stamp.
  `byte[]`
  `toBytes(DataConverter dc)`
  Returns a byte array representing this implementor of this interface.
  `DataType`
  `toDataType()`
  Returns a structure datatype representing the contents of the implementor of this interface.

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

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

- ## Field Details

  - ### NAME

    public static final String NAME
    The name to use when converting into a structure data type.
    See Also:
      - Constant Field Values

  - ### IMAGE_SIZEOF_BOUND_IMPORT_FORWARDER_REF

    public static final int IMAGE_SIZEOF_BOUND_IMPORT_FORWARDER_REF
    The size of the `IMAGE_BOUND_FORWARDER_REF` in bytes.
    See Also:
      - Constant Field Values

- ## Method Details

  - ### toBytes

    public byte[] toBytes(DataConverter dc)
    Description copied from interface: `ByteArrayConverter`
    Returns a byte array representing this implementor of this interface.
    Specified by:
      `toBytes` in interface `ByteArrayConverter`
    Parameters:
      `dc` - the data converter to use
    Returns:
      a byte array representing this object

  - ### getTimeDateStamp

    public int getTimeDateStamp()
    Returns the time stamp.
    Returns:
      the time stamp

  - ### getOffsetModuleName

    public short getOffsetModuleName()
    Returns the offset, relative the beginning of the Bound Import Table, to the import name.
    Returns:
      the offset to the import name

  - ### getReserved

    public short getReserved()
    Returns the reserved word (use unknown).
    Returns:
      the reserved word

  - ### getModuleName

    public String getModuleName()
    Returns the imported module name.
    Returns:
      the imported module name

  - ### toDataType

    public DataType toDataType() throws DuplicateNameException
    Description copied from interface: `StructConverter`
    Returns a structure datatype representing the contents of the implementor of this interface.

    For example, given:

         class A {
             int foo;
             double bar;
         }

    The return value should be a structure data type with two data type components; an INT and a DOUBLE. The structure should contain field names and, if possible, field comments.

    Specified by:
      `toDataType` in interface `StructConverter`
    Returns:
      returns a structure datatype representing the implementor of this interface
    Throws:
      `DuplicateNameException` - when a datatype of the same name already exists
    See Also:
      - `StructureDataType`