org.eclipse.cdt.utils.elf.parser

## Class GNUElfBinaryObject

- java.lang.Object
- - org.eclipse.core.runtime.PlatformObject
  - - org.eclipse.cdt.utils.BinaryFile
    - - org.eclipse.cdt.utils.BinaryObjectAdapter
      - - org.eclipse.cdt.utils.elf.parser.ElfBinaryObject
        - - org.eclipse.cdt.utils.elf.parser.GNUElfBinaryObject

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

Direct Known Subclasses:
  GNUElfBinaryExecutable, GNUElfBinaryShared

    public class GNUElfBinaryObject
    extends ElfBinaryObject

### 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 and Description
`GNUElfBinaryObject(IBinaryParser parser, org.eclipse.core.runtime.IPath path, AR.ARHeader header)`
`GNUElfBinaryObject(IBinaryParser parser, org.eclipse.core.runtime.IPath path, int type)`

### Method Summary

All Methods Instance Methods Concrete Methods
`protected void` `addSymbols(Elf.Symbol[] array, int type, List<Symbol> list)`
`<T> T` `getAdapter(Class<T> adapter)`
`Addr2line` `getAddr2line(boolean autodisposing)`
`InputStream` `getContents()`
`protected CPPFilt` `getCPPFilt()`
`protected Objdump` `getObjdump()`
`protected void` `loadSymbols(ElfHelper helper)`

### Methods inherited from class org.eclipse.cdt.utils.elf.parser.ElfBinaryObject

`getAddressFactory, getBinaryObjectInfo, getCPU, getElfHelper, getName, getSymbols, isLittleEndian, loadAll, loadInfo, loadInfo`

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

`getBSS, getData, getNeededSharedLibs, getSoName, getSymbol, getText, hasDebug, 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 Detail

#### GNUElfBinaryObject

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

Parameters:
  `parser` -
  `path` -
  `header` -

#### GNUElfBinaryObject

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

Parameters:
  `parser` -
  `path` -
  `type` -

### Method Detail

#### getAddr2line

    public Addr2line getAddr2line(boolean autodisposing)

#### getCPPFilt

    protected CPPFilt getCPPFilt()

#### getObjdump

    protected Objdump getObjdump()

#### getContents

    public InputStream getContents()
                            throws IOException

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

#### loadSymbols

    protected void loadSymbols(ElfHelper helper)
                        throws IOException

Overrides:
  `loadSymbols` in class `ElfBinaryObject`
Throws:
  `IOException`

#### addSymbols

    protected void addSymbols(Elf.Symbol[] array,
                              int type,
                              List<Symbol> list)

Overrides:
  `addSymbols` in class `ElfBinaryObject`

#### getAdapter

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

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