# Interface: com.pnfsoftware.jeb.core.units.code.android.IDexFile

Representation of a DEX entry. For dex version 40 and below, each entry is mapped to a single file \(hence the name of this class, at the time it was introduced\). For dex version 41 and above with containers, a single dex file may generate multiple dex entries. 

 IMPORTANT\! This interface will be renamed to `IDexEntry` in a future release.

## Method: getActualChecksum
- return type: `int`

Description: Get the computed checksum. It may differ from the expected one.
return: the actual checksum

## Method: getActualSignature
- return type: `byte[]`

Description: Get the computed signature. It may differ from the expected one.
return: the actual SHA\-1 signature

## Method: getCallSitesPoolOffset
- return type: `int`

Description: Convenience method. Always return 0 for DEX files version 37\-.
return: the call site pool offset

## Method: getCallSitesPoolSize
- return type: `int`

Description: Convenience method. Always return 0 for DEX files version 37\-.
return: the call site pool size

## Method: getClassesPoolOffset
- return type: `int`

Description: Get the class pool offset.
return: the class pool offset

## Method: getClassesPoolSize
- return type: `int`

Description: Get the class pool size.
return: the class pool size

## Method: getData
- return type: `byte[]`

Description: Retrieve the bytes of the underlying `dex` file. Multiple entries may share the share byte buffer.
return: the backing dex bytes

## Method: getDataSectionOffset
- return type: `int`

Description: Get the data section offset.
return: the data section offset

## Method: getDataSectionSize
- return type: `int`

Description: Get the data section size.
return: the data section size

## Method: getEndianness
- return type: `com.pnfsoftware.jeb.util.io.Endianness`

Description: Get the endianness of this file. Currently, all DEX files use a little\-endian byte ordering.
return: the file endianness

## Method: getExpectedChecksum
- return type: `int`

Description: Get the header provided file checksum.
return: the expected checksum

## Method: getExpectedFileSize
- return type: `int`

Description: Get the header provided expected DEX size.
deprecated: use [#getExpectedSize()](#getExpectedSize()) instead
return: the expected dex size

## Method: getExpectedSignature
- return type: `byte[]`

Description: Get the header provided SHA\-1 file signature.
return: the expected SHA\-1 signature

## Method: getExpectedSize
- return type: `int`

Description: Get the header provided expected DEX size.
return: the expected dex size

## Method: getFieldsPoolOffset
- return type: `int`

Description: Get the field pool offset.
return: the field pool offset

## Method: getFieldsPoolSize
- return type: `int`

Description: Get the field pool size.
return: the field pool size

## Method: getFileIndex
- return type: `int`

Description: The underlying dex file index. When children of an APK unit, 0 would be attributed to means `classes.dex`, 1 to `classes2.dex`, etc.
return: the physical dex file index

## Method: getHeaderSize
- return type: `int`

Description: Get the size of header.
return: the header size

## Method: getIndexInContainer
- return type: `int`

Description: The index of this entry in their dex container, if the corresponding physical dex file is a v41 container. The primary entry at offset 0 would have index 0, subsequent entries indices 1, 2, etc.
return: the entry index in the dex container

## Method: getLinkSectionOffset
- return type: `int`

Description: Get the link section offset.
return: the link section offset

## Method: getLinkSectionSize
- return type: `int`

Description: Get the link section size.
return: the link section size

## Method: getMap
- return type: `com.pnfsoftware.jeb.core.units.code.android.dex.IDexMap`

Description: Get a map object for this file.
return: the dex map

## Method: getMapOffset
- return type: `int`

Description: Get the map offset.
return: the map offset

## Method: getMethodHandlesPoolOffset
- return type: `int`

Description: Convenience method. Always return 0 for DEX files version 37\-.
return: the method handle pool offset

## Method: getMethodHandlesPoolSize
- return type: `int`

Description: Convenience method. Always return 0 for DEX files version 37\-.
return: the method handle pool size

## Method: getMethodsPoolOffset
- return type: `int`

Description: Get the method pool offset.
return: the method pool offset

## Method: getMethodsPoolSize
- return type: `int`

Description: Get the method pool size.
return: the method pool size

## Method: getNameTag
- return type: `java.lang.String`

Description: Get the optional name tag associated with this dex entry.
return: an optional name tag associated with the object \(usually, the file name that         contained the dex file or dex container used to create this object\)

## Method: getOffset
- return type: `int`

Description: Offset within [data](#getData()) of the start of this dex.
return: an offset, generally 0

## Method: getOwnerUnit
- return type: `com.pnfsoftware.jeb.core.units.code.android.IDexUnit`

Description: Retrieve the owner DEX unit.
return: the owner dex unit

## Method: getPrototypesPoolOffset
- return type: `int`

Description: Get the prototype pool offset.
return: the prototype pool offset

## Method: getPrototypesPoolSize
- return type: `int`

Description: Get the prototype pool size.
return: the prototype pool size

## Method: getStringsPoolOffset
- return type: `int`

Description: Get the string pool offset.
return: the string pool offset

## Method: getStringsPoolSize
- return type: `int`

Description: Get the string pool size.
return: the string pool size

## Method: getTypesPoolOffset
- return type: `int`

Description: Get the type pool offset.
return: the type pool offset

## Method: getTypesPoolSize
- return type: `int`

Description: Get the type pool size.
return: the type pool size

## Method: getVersion
- return type: `int`

Description: Get the DEX version number.
return: the dex version number

