Package com.microblink.blinkid.entities.recognizers

# Class Recognizer<T extends Recognizer.Result>

java.lang.Object
com.microblink.blinkid.entities.Entity<T>
com.microblink.blinkid.entities.recognizers.Recognizer<T>

All Implemented Interfaces:
  `android.os.Parcelable`, `JsonizableEntity`

Direct Known Subclasses:
  `BlinkIdMultiSideRecognizer`, `BlinkIdSingleSideRecognizer`, `DocumentFaceRecognizer`, `FrameGrabberRecognizer`, `IdBarcodeRecognizer`, `MrtdCombinedRecognizer`, `PassportRecognizer`, `SuccessFrameGrabberRecognizer`, `TemplatingRecognizer`, `UsdlCombinedRecognizer`, `UsdlRecognizer`, `VisaRecognizer`

public abstract class Recognizer<T extends Recognizer.Result> extends Entity<T> implements JsonizableEntity
Base recognizer that is used to perform recognition of images.

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Class
  Description
  `static class`
  `Recognizer.Result`

  ## Nested classes/interfaces inherited from interface android.os.Parcelable

  `android.os.Parcelable.ClassLoaderCreator<T extends Object>, android.os.Parcelable.Creator<T extends Object>`

- ## Field Summary

  ### Fields inherited from interface android.os.Parcelable

  `CONTENTS_FILE_DESCRIPTOR, PARCELABLE_WRITE_RETURN_VALUE`

- ## Constructor Summary

  Constructors
  Modifier
  Constructor
  Description
  `protected`
  `Recognizer(long nativeRecognizer, T concreteResult)`
  `protected`
  `Recognizer(long nativeRecognizer, T concreteResult, android.os.Parcel in)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `abstract Recognizer`
  `clone()`
  Create a copy of the entity.
  `String`
  `getName()`
  Returns unique name of this recognizer type.
  `boolean`
  `isExcludedFromPing()`
  Returns true if this recognizer should be excluded from reporting its scan success to ping server.
  `boolean`
  `requiresAutofocus()`
  Returns true if this recognizer requires camera with autofocus.
  `boolean`
  `requiresLandscapeMode()`
  Returns true if this recognizer works only in landscape mode.
  `protected static SignedPayload`
  `signedJsonNativeGet(long nativePtr)`
  `SignedPayload`
  `toSignedJson()`
  Returns the signed JSON representation of this entity's current state as a `SignedPayload`.

  ### Methods inherited from class com.microblink.blinkid.entities.Entity

  `consumeResultFrom, describeContents, deserializeNativeSettings, finalize, getNativeContext, getResult, nativeGetNativeResultContext, readFromParcel, serializeNativeSettings, terminateNative, writeToParcel`

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

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

- ## Constructor Details

  - ### Recognizer

    protected Recognizer(long nativeRecognizer, T concreteResult)

  - ### Recognizer

    protected Recognizer(long nativeRecognizer, T concreteResult, android.os.Parcel in)

- ## Method Details

  - ### requiresAutofocus

    public boolean requiresAutofocus()
    Returns true if this recognizer requires camera with autofocus.
    Returns:
      true if this recognizer requires camera with autofocus.

  - ### toSignedJson

    public SignedPayload toSignedJson()
    Description copied from interface: `JsonizableEntity`
    Returns the signed JSON representation of this entity's current state as a `SignedPayload`.
    Specified by:
      `toSignedJson` in interface `JsonizableEntity`
    Returns:
      signed JSON representation of this entity's current state.

  - ### signedJsonNativeGet

    protected static SignedPayload signedJsonNativeGet(long nativePtr)

  - ### clone

    @NonNull public abstract Recognizer clone()
    Description copied from class: `Entity`
    Create a copy of the entity. This is required if properties of the entity must be modified while background thread performs processing. In order to avoid race conditions, changing properties is not allowed while entity is used in background processing. However, you are able to make a copy of the entity, change properties of it and then update the `RecognizerRunnerView` or `RecognizerRunner` with the updated entity hierarchy.
    Specified by:
      `clone` in class `Entity<T extends Recognizer.Result>`
    Returns:
      a copy of the entity

  - ### requiresLandscapeMode

    public boolean requiresLandscapeMode()
    Returns true if this recognizer works only in landscape mode.
    Returns:
      true if this recognizer works only in landscape mode.

  - ### isExcludedFromPing

    public boolean isExcludedFromPing()
    Returns true if this recognizer should be excluded from reporting its scan success to ping server.
    Returns:
      true if this recognizer should be excluded from reporting its scan success to ping server.

  - ### getName

    public String getName()
    Returns unique name of this recognizer type.
    Returns:
      unique name of this recognizer type.