Package org.eclipse.cdt.core.model

# Interface IBinary

All Superinterfaces:
  `org.eclipse.core.runtime.IAdaptable`, `IBufferChangedListener`, `ICElement`, `IOpenable`, `IParent`

public interface IBinary extends ICElement, IParent, IOpenable
Represents a Binary file, for example an ELF executable. An ELF parser will inspect the binary.

Restriction:
  This interface is not intended to be implemented by clients.
Restriction:
  This interface is not intended to be extended by clients.

## Field Summary

### Fields inherited from interface org.eclipse.cdt.core.model.ICElement

`ASM_LABEL, C_ARCHIVE, C_BINARY, C_CCONTAINER, C_CLASS, C_CLASS_CTOR, C_CLASS_DECLARATION, C_CLASS_DTOR, C_ENUMERATION, C_ENUMERATOR, C_FIELD, C_FUNCTION, C_FUNCTION_DECLARATION, C_INCLUDE, C_MACRO, C_METHOD, C_METHOD_DECLARATION, C_MODEL, C_NAMESPACE, C_PRAGMA, C_PROJECT, C_STORAGE_EXTERN, C_STORAGE_STATIC, C_STRUCT, C_STRUCT_DECLARATION, C_TEMPLATE_CLASS, C_TEMPLATE_CLASS_DECLARATION, C_TEMPLATE_FUNCTION, C_TEMPLATE_FUNCTION_DECLARATION, C_TEMPLATE_METHOD, C_TEMPLATE_METHOD_DECLARATION, C_TEMPLATE_STRUCT, C_TEMPLATE_STRUCT_DECLARATION, C_TEMPLATE_UNION, C_TEMPLATE_UNION_DECLARATION, C_TEMPLATE_VARIABLE, C_TYPEDEF, C_UNION, C_UNION_DECLARATION, C_UNIT, C_UNKNOWN_DECLARATION, C_USING, C_VARIABLE, C_VARIABLE_DECLARATION, C_VARIABLE_LOCAL, C_VCONTAINER, CPP_FRIEND, CPP_PRIVATE, CPP_PROTECTED, CPP_PUBLIC, EMPTY_ARRAY`

## Method Summary

Modifier and Type
Method
Description
`long`
`getBSS()`
`String`
`getCPU()`
`long`
`getData()`
`org.eclipse.core.runtime.IPath`
`getLocation()`
Returns the absolute path of the location of this binary.
`String[]`
`getNeededSharedLibs()`
`String`
`getSoname()`
`long`
`getText()`
`boolean`
`hasDebug()`
Return whether the file was compiling with debug symbols.
`boolean`
`isCore()`
`boolean`
`isExecutable()`
`boolean`
`isLittleEndian()`
`boolean`
`isObject()`
`boolean`
`isSharedLib()`
`boolean`
`showInBinaryContainer()`
Determines whether this binary is part of the binary container.

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

`getAdapter`

### Methods inherited from interface org.eclipse.cdt.core.model.IBufferChangedListener

`bufferChanged`

### Methods inherited from interface org.eclipse.cdt.core.model.ICElement

`accept, exists, getAncestor, getCModel, getCProject, getElementName, getElementType, getHandleIdentifier, getLocationURI, getParent, getPath, getResource, getUnderlyingResource, isReadOnly, isStructureKnown`

### Methods inherited from interface org.eclipse.cdt.core.model.IOpenable

`close, getBuffer, hasUnsavedChanges, isConsistent, isOpen, makeConsistent, makeConsistent, open, save`

### Methods inherited from interface org.eclipse.cdt.core.model.IParent

`getChildren, getChildrenOfType, hasChildren`

## Method Details

### hasDebug

boolean hasDebug()
Return whether the file was compiling with debug symbols.

### isExecutable

boolean isExecutable()

### isObject

boolean isObject()

### isSharedLib

boolean isSharedLib()

### isCore

boolean isCore()

### getNeededSharedLibs

String[] getNeededSharedLibs()

### getSoname

String getSoname()

### getCPU

String getCPU()

### getText

long getText()

### getData

long getData()

### getBSS

long getBSS()

### isLittleEndian

boolean isLittleEndian()

### showInBinaryContainer

boolean showInBinaryContainer()
Determines whether this binary is part of the binary container. The binary container collects binaries from a project. This is typically used to presents the executables of a project under a common node in the CView or ProjectNavigator.

### getLocation

org.eclipse.core.runtime.IPath getLocation()
Returns the absolute path of the location of this binary. May be `null`, in case the location does not exist.

Returns:
  an absolute path to the location, or `null`
Since:
  8.4