# Interface: com.pnfsoftware.jeb.core.units.code.asm.decompiler.INativeDecompilerContext

Decompiler manager object. The manager is a super\-interface of [INativeDecompilerUnit](INativeDecompilerUnit) and allows the implementation of test decompilers outside of the [unit](IUnit) management facility.

## Method: createASTOptimizer
- parameter: `m`, type: `com.pnfsoftware.jeb.core.units.code.asm.decompiler.ast.ICMethod`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.decompiler.ast.opt.ICMasterOptimizer`

Description: Create a C AST optimizer for a method.
parameter: m: C method
return: a C AST master optimizer

## Method: createIROptimizer
- parameter: `ectx`, type: `com.pnfsoftware.jeb.core.units.code.asm.decompiler.IERoutineContext`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.decompiler.ir.opt.IEMasterOptimizer`

Description: Create an IR optimizer for a routine context.
parameter: ectx: routine context
return: an IR master optimizer

## Method: decompile
- parameter: `item`, type: `com.pnfsoftware.jeb.core.units.code.asm.items.INativeItem`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.decompiler.IDecompiledItem`

Description: Decompile a native item.
parameter: item: native item
return: the decompiled item

## Method: decompile
- parameter: `item`, type: `com.pnfsoftware.jeb.core.units.code.asm.items.INativeItem`
- parameter: `ctx`, type: `com.pnfsoftware.jeb.core.units.code.DecompilationContext`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.decompiler.IDecompiledItem`

Description: Decompile a native item.
parameter: item: native item
parameter: ctx: decompilation context
return: the decompiled item

## Method: getConverter
- return type: `com.pnfsoftware.jeb.core.units.code.asm.decompiler.IEConverter<?>`

Description: Retrieve the native\-to\-IR converter.
return: the converter

## Method: getDecompiledItem
- parameter: `identifier`, type: `java.lang.String`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.decompiler.IDecompiledItem`

Description: Retrieve a decompiled item by identifier.
parameter: identifier: item identifier
return: the decompiled item, or null if unavailable

## Method: getDecompiledItem
- parameter: `item`, type: `com.pnfsoftware.jeb.core.units.code.asm.items.INativeItem`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.decompiler.IDecompiledItem`

Description: Retrieve a decompiled item for a native item.
parameter: item: native item
return: the decompiled item, or null if unavailable

## Method: getDecompiledItems
- return type: `java.util.Collection<com.pnfsoftware.jeb.core.units.code.asm.decompiler.IDecompiledItem>`

Description: Retrieve all decompiled items.
return: decompiled items

## Method: getEngine
- return type: `java.lang.Object`

Description: Reserved for internal use. The decompiler engine is currently an opaque component.
return: an opaque object

## Method: getExtensionsManager
- return type: `com.pnfsoftware.jeb.core.units.code.asm.decompiler.INativeDecompilerExtensionsManager`

Description: Retrieve the extension manager.
return: the extension manager

## Method: getGlobalContext
- return type: `com.pnfsoftware.jeb.core.units.code.asm.decompiler.IEGlobalContext`

Description: Retrieve the global IR context. Identical to [#getIntermediateContext()](#getIntermediateContext()).
return: 

## Method: getHighLevelContext
- return type: `com.pnfsoftware.jeb.core.units.code.asm.decompiler.ast.ICGlobalContext`

Description: Retrieve the global high\-level C AST context.
return: the high\-level context

## Method: getIntermediateContext
- return type: `com.pnfsoftware.jeb.core.units.code.asm.decompiler.IEGlobalContext`

Description: Retrieve the global IR context.
return: the global IR context

## Method: getNativeContext
- return type: `com.pnfsoftware.jeb.core.units.code.asm.INativeContext`

Description: Retrieve the native code context.
return: native context

## Method: getObjectTracker
- return type: `com.pnfsoftware.jeb.core.units.code.asm.decompiler.INativeObjectTracker`

Description: Retrieve the native object tracker.
return: the native object tracker

## Method: getOptions
- return type: `com.pnfsoftware.jeb.core.units.code.asm.decompiler.DecompilerOptions`

Description: Retrieve decompiler options.
return: decompiler options

## Method: getTypeManager
- return type: `com.pnfsoftware.jeb.core.units.code.asm.type.ITypeManager`

Description: Convenience method.
return: the type manager

## Method: getWildcardTypeManager
- return type: `com.pnfsoftware.jeb.core.units.code.asm.decompiler.ir.IWildcardTypeManager`

Description: Retrieve the wildcard type manager.
return: the wildcard type manager

## Method: onEngineNotification
- parameter: `object`, type: `java.lang.Object`

Description: Reserved for internal use. The decompiler engine is currently an opaque component.
parameter: object: an opaque object

## Method: removeDecompilation
- parameter: `item`, type: `com.pnfsoftware.jeb.core.units.code.asm.items.INativeItem`

Description: Remove the decompilation result for a native item.
parameter: item: native item

## Method: resetDecompilation
- parameter: `item`, type: `com.pnfsoftware.jeb.core.units.code.asm.items.INativeItem`

Description: Reset the decompilation result for a native item.
parameter: item: native item

