com.abbyy.mobile.rtr

## Class Engine

- java.lang.Object
- - com.abbyy.mobile.rtr.Engine

-     public abstract class Engine
      extends java.lang.Object

  ABBYY RTR SDK engine via which the other objects may be created.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static interface` | `Engine.EngineSettings` Extended settings of the `Engine`.
    `static class` | `Engine.LicenseException` The exception to be thrown when invalid license is loaded.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `Engine()`

  - ### Method Summary

    All Methods Static Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `abstract IDataCaptureCoreAPI` | `createDataCaptureCoreAPI()` Creates a data capture core API object for extracting data from image
    `abstract IDataCaptureService` | `createDataCaptureService(java.lang.String profileName, IDataCaptureService.Callback callback)` Creates a background recognition service to run in data capture mode.
    `abstract IImageCaptureService` | `createImageCaptureService(IImageCaptureService.Callback callback)` Creates a background image capture service to run in image capture mode.
    `abstract IImagingCoreAPI` | `createImagingCoreAPI()` Creates a core API object, which provides access to low-level single image processing functions for the current thread.
    `abstract IRecognitionCoreAPI` | `createRecognitionCoreAPI()` Creates a core API object, which provides access to low-level single image processing functions for the current thread.
    `abstract ITextCaptureService` | `createTextCaptureService(ITextCaptureService.Callback callback)` Creates a background recognition service to run in text capture mode.
    `abstract DataCapture.DataScheme[]` | `getDataSchemesForProfile(java.lang.String profile)`
    `abstract Engine.EngineSettings` | `getExtendedSettings()` Extended settings of the `Engine`
    `abstract Language[]` | `getLanguagesAvailableForBcr()`
    `abstract Language[]` | `getLanguagesAvailableForOcr()`
    `static Engine` | `load(android.content.Context context, byte[] licenseData)` Loads the ABBYY RTR SDK engine.
    `static Engine` | `load(android.content.Context context, java.lang.String licenseFilePath)` Loads the ABBYY RTR SDK engine.
    `abstract void` | `unload()` Unloads the engine.

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

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

- - ### Constructor Detail

    - #### Engine

          public Engine()

  - ### Method Detail

    - #### load

          public static Engine load(android.content.Context context,
                                    java.lang.String licenseFilePath)
                             throws java.io.IOException,
                                    Engine.LicenseException

      Loads the ABBYY RTR SDK engine.
      Parameters:
        `context` - the application context
        `licenseFilePath` - the path to the license file relative to the 'assets' directory
      Returns:
        an instance of the `Engine` object
      Throws:
        `java.io.IOException` - required library or resource not found or could not be loaded
        `Engine.LicenseException` - the license is invalid

    - #### load

          public static Engine load(android.content.Context context,
                                    byte[] licenseData)
                             throws java.io.IOException,
                                    Engine.LicenseException

      Loads the ABBYY RTR SDK engine.
      Parameters:
        `context` - the application context
        `licenseData` - the bytes of the license
      Returns:
        an instance of the `Engine` object
      Throws:
        `java.io.IOException` - required library or resource not found or could not be loaded
        `Engine.LicenseException` - the license is invalid

    - #### unload

          public abstract void unload()

      Unloads the engine.

      Explicitly unloading the engine is NOT required and NOT RECOMMENDED in most applications. Use this method only if in your application the engine is used in a separate activity which is not likely to be used repeatedly and you absolutely must reclaim the memory. If this is the case the most appropriate place to unload the engine is onDestroy method of that activity.

    - #### createTextCaptureService

          public abstract ITextCaptureService createTextCaptureService(ITextCaptureService.Callback callback)

      Creates a background recognition service to run in text capture mode.
      Parameters:
        `callback` - the callback object used to interact with the service
      Returns:
        an instance of `IRecognitionService` object configured to run in 'text capture' mode

    - #### createDataCaptureService

          public abstract IDataCaptureService createDataCaptureService(java.lang.String profileName,
                                                                       IDataCaptureService.Callback callback)

      Creates a background recognition service to run in data capture mode.
      Parameters:
        `profileName` - the name of the asset containing the data scheme(s) and patterns required for data extraction
        `callback` - the callback object used to interact with the service
      Returns:
        an instance of `IDataCaptureService` object

    - #### createImageCaptureService

          public abstract IImageCaptureService createImageCaptureService(IImageCaptureService.Callback callback)

      Creates a background image capture service to run in image capture mode.
      Parameters:
        `callback` - the callback object used to interact with the service
      Returns:
        an instance of `IImageCaptureService` object configured to run in 'image capture' mode

    - #### createRecognitionCoreAPI

          public abstract IRecognitionCoreAPI createRecognitionCoreAPI()

      Creates a core API object, which provides access to low-level single image processing functions for the current thread.
      Returns:
        an instance of `IRecognitionCoreAPI` object

    - #### createDataCaptureCoreAPI

          public abstract IDataCaptureCoreAPI createDataCaptureCoreAPI()

      Creates a data capture core API object for extracting data from image
      Returns:
        an instance of `IDataCaptureCoreAPI` object

    - #### createImagingCoreAPI

          public abstract IImagingCoreAPI createImagingCoreAPI()

      Creates a core API object, which provides access to low-level single image processing functions for the current thread.
      Returns:
        an instance of `IImagingCoreAPI` object

    - #### getExtendedSettings

          public abstract Engine.EngineSettings getExtendedSettings()

      Extended settings of the `Engine`
      Returns:
        an instance of `EngineSettings` object

    - #### getDataSchemesForProfile

          public abstract DataCapture.DataScheme[] getDataSchemesForProfile(java.lang.String profile)

    - #### getLanguagesAvailableForOcr

          public abstract Language[] getLanguagesAvailableForOcr()

    - #### getLanguagesAvailableForBcr

          public abstract Language[] getLanguagesAvailableForBcr()