Package org.eclipse.cdt.utils

# Class BinaryObjectAdapter

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

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

Direct Known Subclasses:
  `ElfBinaryObject`, `MachOBinaryObject64`, `PEBinaryObject64`, `SOMBinaryObject`, `XCOFFBinaryObject`

public abstract class BinaryObjectAdapter extends BinaryFile implements IBinaryParser.IBinaryObject

## Nested Class Summary

Nested Classes
Modifier and Type
Class
Description
`class`
`BinaryObjectAdapter.BinaryObjectInfo`

## Field Summary

Fields
Modifier and Type
Field
Description
`protected static final IBinaryParser.ISymbol[]`
`NO_SYMBOLS`

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

`ARCHIVE, CORE, EXECUTABLE, OBJECT, SHARED`

## Constructor Summary

Constructors
Constructor
Description
`BinaryObjectAdapter(IBinaryParser parser, org.eclipse.core.runtime.IPath path, int type)`

## Method Summary

Modifier and Type
Method
Description
`abstract IAddressFactory`
`getAddressFactory()`
`protected abstract BinaryObjectAdapter.BinaryObjectInfo`
`getBinaryObjectInfo()`
`long`
`getBSS()`
`String`
`getCPU()`
CPU name
`long`
`getData()`
`String`
`getName()`
The name of the object
`String[]`
`getNeededSharedLibs()`
`String`
`getSoName()`
`IBinaryParser.ISymbol`
`getSymbol(IAddress addr)`
Symbo at this address.
`abstract IBinaryParser.ISymbol[]`
`getSymbols()`
Symbols of the object
`long`
`getText()`
`boolean`
`hasDebug()`
True if the binary contains debug information
`boolean`
`isLittleEndian()`
The endian
`String`
`toString()`

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

`getBinaryParser, getContents, getPath, getType, hasChanged`

### Methods inherited from class org.eclipse.core.runtime.PlatformObject

`getAdapter`

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

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

### Methods inherited from interface org.eclipse.core.runtime.IAdaptable

`getAdapter`

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

`getBinaryParser, getContents, getPath, getType`

## Field Details

### NO_SYMBOLS

protected static final IBinaryParser.ISymbol[] NO_SYMBOLS

## Constructor Details

### BinaryObjectAdapter

public BinaryObjectAdapter(IBinaryParser parser, org.eclipse.core.runtime.IPath path, int type)

## Method Details

### getSymbol

public IBinaryParser.ISymbol getSymbol(IAddress addr)
Description copied from interface: `IBinaryParser.IBinaryObject`
Symbo at this address.

Specified by:
  `getSymbol` in interface `IBinaryParser.IBinaryObject`
Returns:
  ISymbol

### getBSS

public long getBSS()

Specified by:
  `getBSS` in interface `IBinaryParser.IBinaryObject`
See Also:
  - `IBinaryParser.IBinaryObject.getBSS()`

### getCPU

public String getCPU()
Description copied from interface: `IBinaryParser.IBinaryObject`
CPU name

Specified by:
  `getCPU` in interface `IBinaryParser.IBinaryObject`
Returns:
  String - cpu name
See Also:
  - `IBinaryParser.IBinaryObject.getCPU()`

### getData

public long getData()

Specified by:
  `getData` in interface `IBinaryParser.IBinaryObject`
See Also:
  - `IBinaryParser.IBinaryObject.getData()`

### getText

public long getText()

Specified by:
  `getText` in interface `IBinaryParser.IBinaryObject`
See Also:
  - `IBinaryParser.IBinaryObject.getText()`

### hasDebug

public boolean hasDebug()
Description copied from interface: `IBinaryParser.IBinaryObject`
True if the binary contains debug information

Specified by:
  `hasDebug` in interface `IBinaryParser.IBinaryObject`
Returns:
  true if debug information
See Also:
  - `IBinaryParser.IBinaryObject.hasDebug()`

### isLittleEndian

public boolean isLittleEndian()
Description copied from interface: `IBinaryParser.IBinaryObject`
The endian

Specified by:
  `isLittleEndian` in interface `IBinaryParser.IBinaryObject`
Returns:
  boolean - true for little endian
See Also:
  - `IBinaryParser.IBinaryObject.isLittleEndian()`

### getNeededSharedLibs

public String[] getNeededSharedLibs()

See Also:
  - `IBinaryParser.IBinaryExecutable.getNeededSharedLibs()`

### getSoName

public String getSoName()

See Also:
  - `IBinaryParser.IBinaryShared.getSoName()`

### getName

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

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

### toString

public String toString()

Overrides:
  `toString` in class `Object`

### getSymbols

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

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

### getAddressFactory

public abstract IAddressFactory getAddressFactory()

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

### getBinaryObjectInfo

protected abstract BinaryObjectAdapter.BinaryObjectInfo getBinaryObjectInfo()