Package org.eclipse.cdt.utils.coff.parser

# Class PEBinaryObject64

java.lang.Object
org.eclipse.core.runtime.PlatformObject
org.eclipse.cdt.utils.BinaryFile
org.eclipse.cdt.utils.BinaryObjectAdapter
org.eclipse.cdt.utils.coff.parser.PEBinaryObject64

All Implemented Interfaces:
  `IBinaryParser.IBinaryFile`, `IBinaryParser.IBinaryObject`, `org.eclipse.core.runtime.IAdaptable`

Direct Known Subclasses:
  `CygwinPEBinaryObject64`, `GNUPEBinaryObject64`, `PEBinaryExecutable64`, `PEBinaryShared64`

public class PEBinaryObject64 extends BinaryObjectAdapter

Since:
  6.9

## Nested Class Summary

## Nested classes/interfaces inherited from class org.eclipse.cdt.utils.BinaryObjectAdapter

`BinaryObjectAdapter.BinaryObjectInfo`

## Field Summary

### Fields inherited from class org.eclipse.cdt.utils.BinaryObjectAdapter

`NO_SYMBOLS`

### Fields inherited from interface org.eclipse.cdt.core.IBinaryParser.IBinaryFile

`ARCHIVE, CORE, EXECUTABLE, OBJECT, SHARED`

## Constructor Summary

Constructors
Constructor
Description
`PEBinaryObject64(IBinaryParser parser, org.eclipse.core.runtime.IPath p, int type)`
`PEBinaryObject64(IBinaryParser parser, org.eclipse.core.runtime.IPath path, AR.ARHeader header)`

## Method Summary

Modifier and Type
Method
Description
`protected void`
`addSymbols(Coff64.Symbol[] peSyms, byte[] table, List<Symbol> list)`
`<T> T`
`getAdapter(Class<T> adapter)`
`IAddressFactory`
`getAddressFactory()`
`protected BinaryObjectAdapter.BinaryObjectInfo`
`getBinaryObjectInfo()`
`InputStream`
`getContents()`
`String`
`getName()`
The name of the object
`protected PE64`
`getPE()`
`IBinaryParser.ISymbol[]`
`getSymbols()`
Symbols of the object
`protected void`
`loadAll()`
`protected void`
`loadInfo()`
`protected void`
`loadInfo(PE64 pe)`
`protected void`
`loadSymbols(PE64 pe)`
`protected void`
`loadSymbols(PE64 pe, List<Symbol> list)`

### Methods inherited from class org.eclipse.cdt.utils.BinaryObjectAdapter

`getBSS, getCPU, getData, getNeededSharedLibs, getSoName, getSymbol, getText, hasDebug, isLittleEndian, toString`

### Methods inherited from class org.eclipse.cdt.utils.BinaryFile

`getBinaryParser, getPath, getType, hasChanged`

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

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

### Methods inherited from interface org.eclipse.cdt.core.IBinaryParser.IBinaryFile

`getBinaryParser, getPath, getType`

## Constructor Details

### PEBinaryObject64

public PEBinaryObject64(IBinaryParser parser, org.eclipse.core.runtime.IPath path, AR.ARHeader header)

### PEBinaryObject64

public PEBinaryObject64(IBinaryParser parser, org.eclipse.core.runtime.IPath p, int type)

## Method Details

### getName

public String getName()
Description copied from interface: `IBinaryParser.IBinaryObject`
The name of the object

Specified by:
  `getName` in interface `IBinaryParser.IBinaryObject`
Overrides:
  `getName` in class `BinaryObjectAdapter`
Returns:
  String
See Also:
  - `IBinaryParser.IBinaryObject.getName()`

### getContents

public InputStream getContents() throws IOException

Specified by:
  `getContents` in interface `IBinaryParser.IBinaryFile`
Overrides:
  `getContents` in class `BinaryFile`
Returns:
  the binary contents.
Throws:
  `IOException`
See Also:
  - `IBinaryParser.IBinaryFile.getContents()`

### getSymbols

public IBinaryParser.ISymbol[] getSymbols()
Description copied from interface: `IBinaryParser.IBinaryObject`
Symbols of the object

Specified by:
  `getSymbols` in interface `IBinaryParser.IBinaryObject`
Specified by:
  `getSymbols` in class `BinaryObjectAdapter`
Returns:
  ISymbol[] arrays of symbols
See Also:
  - `IBinaryParser.IBinaryObject.getSymbols()`

### getBinaryObjectInfo

protected BinaryObjectAdapter.BinaryObjectInfo getBinaryObjectInfo()

Specified by:
  `getBinaryObjectInfo` in class `BinaryObjectAdapter`

### getAdapter

public <T> T getAdapter(Class<T> adapter)

Specified by:
  `getAdapter` in interface `org.eclipse.core.runtime.IAdaptable`
Overrides:
  `getAdapter` in class `org.eclipse.core.runtime.PlatformObject`

### getPE

protected PE64 getPE() throws IOException

Throws:
  `IOException`

### loadAll

protected void loadAll() throws IOException

Throws:
  `IOException`

### loadInfo

protected void loadInfo() throws IOException

Throws:
  `IOException`

### loadInfo

protected void loadInfo(PE64 pe) throws IOException

Throws:
  `IOException`

### loadSymbols

protected void loadSymbols(PE64 pe) throws IOException

Throws:
  `IOException`

### loadSymbols

protected void loadSymbols(PE64 pe, List<Symbol> list) throws IOException

Throws:
  `IOException`

### addSymbols

protected void addSymbols(Coff64.Symbol[] peSyms, byte[] table, List<Symbol> list)

### getAddressFactory

public IAddressFactory getAddressFactory()

Specified by:
  `getAddressFactory` in interface `IBinaryParser.IBinaryObject`
Specified by:
  `getAddressFactory` in class `BinaryObjectAdapter`