public class android.hardware.soundtrigger.SoundTriggerModule
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: android.hardware.soundtrigger.SoundTriggerModule
  super_class: java.lang.Object
{
  private long mNativeContext;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

  private int mId;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private android.hardware.soundtrigger.SoundTriggerModule$NativeEventHandlerDelegate mEventHandlerDelegate;
    descriptor: Landroid/hardware/soundtrigger/SoundTriggerModule$NativeEventHandlerDelegate;
    flags: (0x0002) ACC_PRIVATE

  private static final int EVENT_RECOGNITION;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  private static final int EVENT_SERVICE_DIED;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  private static final int EVENT_SOUNDMODEL;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 3

  private static final int EVENT_SERVICE_STATE_CHANGE;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 4

  void <init>(int, android.hardware.soundtrigger.SoundTrigger$StatusListener, android.os.Handler);
    descriptor: (ILandroid/hardware/soundtrigger/SoundTrigger$StatusListener;Landroid/os/Handler;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // android.hardware.soundtrigger.SoundTriggerModule this
        start local 1 // int moduleId
        start local 2 // android.hardware.soundtrigger.SoundTrigger$StatusListener listener
        start local 3 // android.os.Handler handler
         0: .line 42
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 43
            aload 0 /* this */
            iload 1 /* moduleId */
            putfield android.hardware.soundtrigger.SoundTriggerModule.mId:I
         2: .line 44
            aload 0 /* this */
            new android.hardware.soundtrigger.SoundTriggerModule$NativeEventHandlerDelegate
            dup
            aload 0 /* this */
            aload 2 /* listener */
            aload 3 /* handler */
            invokespecial android.hardware.soundtrigger.SoundTriggerModule$NativeEventHandlerDelegate.<init>:(Landroid/hardware/soundtrigger/SoundTriggerModule;Landroid/hardware/soundtrigger/SoundTrigger$StatusListener;Landroid/os/Handler;)V
            putfield android.hardware.soundtrigger.SoundTriggerModule.mEventHandlerDelegate:Landroid/hardware/soundtrigger/SoundTriggerModule$NativeEventHandlerDelegate;
         3: .line 45
            aload 0 /* this */
            new java.lang.ref.WeakReference
            dup
            aload 0 /* this */
            invokespecial java.lang.ref.WeakReference.<init>:(Ljava/lang/Object;)V
            invokevirtual android.hardware.soundtrigger.SoundTriggerModule.native_setup:(Ljava/lang/Object;)V
         4: .line 46
            return
        end local 3 // android.os.Handler handler
        end local 2 // android.hardware.soundtrigger.SoundTrigger$StatusListener listener
        end local 1 // int moduleId
        end local 0 // android.hardware.soundtrigger.SoundTriggerModule this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Landroid/hardware/soundtrigger/SoundTriggerModule;
            0    5     1  moduleId  I
            0    5     2  listener  Landroid/hardware/soundtrigger/SoundTrigger$StatusListener;
            0    5     3   handler  Landroid/os/Handler;
    MethodParameters:
          Name  Flags
      moduleId  
      listener  
      handler   

  private native void native_setup(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0102) ACC_PRIVATE, ACC_NATIVE
    MethodParameters:
             Name  Flags
      module_this  

  protected void finalize();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.hardware.soundtrigger.SoundTriggerModule this
         0: .line 51
            aload 0 /* this */
            invokevirtual android.hardware.soundtrigger.SoundTriggerModule.native_finalize:()V
         1: .line 52
            return
        end local 0 // android.hardware.soundtrigger.SoundTriggerModule this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Landroid/hardware/soundtrigger/SoundTriggerModule;

  private native void native_finalize();
    descriptor: ()V
    flags: (0x0102) ACC_PRIVATE, ACC_NATIVE

  public native void detach();
    descriptor: ()V
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE

  public native int loadSoundModel(android.hardware.soundtrigger.SoundTrigger$SoundModel, int[]);
    descriptor: (Landroid/hardware/soundtrigger/SoundTrigger$SoundModel;[I)I
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    MethodParameters:
                  Name  Flags
      model             
      soundModelHandle  

  public native int unloadSoundModel(int);
    descriptor: (I)I
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    MethodParameters:
                  Name  Flags
      soundModelHandle  

  public native int startRecognition(int, android.hardware.soundtrigger.SoundTrigger$RecognitionConfig);
    descriptor: (ILandroid/hardware/soundtrigger/SoundTrigger$RecognitionConfig;)I
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    MethodParameters:
                  Name  Flags
      soundModelHandle  
      config            

  public native int stopRecognition(int);
    descriptor: (I)I
    flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
    MethodParameters:
                  Name  Flags
      soundModelHandle  

  private static void postEventFromNative(java.lang.Object, int, int, int, java.lang.Object);
    descriptor: (Ljava/lang/Object;IIILjava/lang/Object;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=9, args_size=5
        start local 0 // java.lang.Object module_ref
        start local 1 // int what
        start local 2 // int arg1
        start local 3 // int arg2
        start local 4 // java.lang.Object obj
         0: .line 186
            aload 0 /* module_ref */
            checkcast java.lang.ref.WeakReference
            invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
            checkcast android.hardware.soundtrigger.SoundTriggerModule
            astore 5 /* module */
        start local 5 // android.hardware.soundtrigger.SoundTriggerModule module
         1: .line 187
            aload 5 /* module */
            ifnonnull 3
         2: .line 188
            return
         3: .line 191
      StackMap locals: android.hardware.soundtrigger.SoundTriggerModule
      StackMap stack:
            aload 5 /* module */
            getfield android.hardware.soundtrigger.SoundTriggerModule.mEventHandlerDelegate:Landroid/hardware/soundtrigger/SoundTriggerModule$NativeEventHandlerDelegate;
            astore 6 /* delegate */
        start local 6 // android.hardware.soundtrigger.SoundTriggerModule$NativeEventHandlerDelegate delegate
         4: .line 192
            aload 6 /* delegate */
            ifnull 9
         5: .line 193
            aload 6 /* delegate */
            invokevirtual android.hardware.soundtrigger.SoundTriggerModule$NativeEventHandlerDelegate.handler:()Landroid/os/Handler;
            astore 7 /* handler */
        start local 7 // android.os.Handler handler
         6: .line 194
            aload 7 /* handler */
            ifnull 9
         7: .line 195
            aload 7 /* handler */
            iload 1 /* what */
            iload 2 /* arg1 */
            iload 3 /* arg2 */
            aload 4 /* obj */
            invokevirtual android.os.Handler.obtainMessage:(IIILjava/lang/Object;)Landroid/os/Message;
            astore 8 /* m */
        start local 8 // android.os.Message m
         8: .line 196
            aload 7 /* handler */
            aload 8 /* m */
            invokevirtual android.os.Handler.sendMessage:(Landroid/os/Message;)Z
            pop
        end local 8 // android.os.Message m
        end local 7 // android.os.Handler handler
         9: .line 199
      StackMap locals: android.hardware.soundtrigger.SoundTriggerModule$NativeEventHandlerDelegate
      StackMap stack:
            return
        end local 6 // android.hardware.soundtrigger.SoundTriggerModule$NativeEventHandlerDelegate delegate
        end local 5 // android.hardware.soundtrigger.SoundTriggerModule module
        end local 4 // java.lang.Object obj
        end local 3 // int arg2
        end local 2 // int arg1
        end local 1 // int what
        end local 0 // java.lang.Object module_ref
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0  module_ref  Ljava/lang/Object;
            0   10     1        what  I
            0   10     2        arg1  I
            0   10     3        arg2  I
            0   10     4         obj  Ljava/lang/Object;
            1   10     5      module  Landroid/hardware/soundtrigger/SoundTriggerModule;
            4   10     6    delegate  Landroid/hardware/soundtrigger/SoundTriggerModule$NativeEventHandlerDelegate;
            6    9     7     handler  Landroid/os/Handler;
            8    9     8           m  Landroid/os/Message;
    MethodParameters:
            Name  Flags
      module_ref  
      what        
      arg1        
      arg2        
      obj         
}
SourceFile: "SoundTriggerModule.java"
NestMembers:
  android.hardware.soundtrigger.SoundTriggerModule$NativeEventHandlerDelegate  android.hardware.soundtrigger.SoundTriggerModule$NativeEventHandlerDelegate$1
InnerClasses:
  public RecognitionConfig = android.hardware.soundtrigger.SoundTrigger$RecognitionConfig of android.hardware.soundtrigger.SoundTrigger
  public SoundModel = android.hardware.soundtrigger.SoundTrigger$SoundModel of android.hardware.soundtrigger.SoundTrigger
  public abstract StatusListener = android.hardware.soundtrigger.SoundTrigger$StatusListener of android.hardware.soundtrigger.SoundTrigger
  private NativeEventHandlerDelegate = android.hardware.soundtrigger.SoundTriggerModule$NativeEventHandlerDelegate of android.hardware.soundtrigger.SoundTriggerModule