public class com.android.internal.os.FlashlightPowerCalculator extends com.android.internal.os.PowerCalculator
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.android.internal.os.FlashlightPowerCalculator
  super_class: com.android.internal.os.PowerCalculator
{
  private final double mFlashlightPowerOnAvg;
    descriptor: D
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>(com.android.internal.os.PowerProfile);
    descriptor: (Lcom/android/internal/os/PowerProfile;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.android.internal.os.FlashlightPowerCalculator this
        start local 1 // com.android.internal.os.PowerProfile profile
         0: .line 26
            aload 0 /* this */
            invokespecial com.android.internal.os.PowerCalculator.<init>:()V
         1: .line 27
            aload 0 /* this */
            aload 1 /* profile */
            ldc "camera.flashlight"
            invokevirtual com.android.internal.os.PowerProfile.getAveragePower:(Ljava/lang/String;)D
            putfield com.android.internal.os.FlashlightPowerCalculator.mFlashlightPowerOnAvg:D
         2: .line 28
            return
        end local 1 // com.android.internal.os.PowerProfile profile
        end local 0 // com.android.internal.os.FlashlightPowerCalculator this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lcom/android/internal/os/FlashlightPowerCalculator;
            0    3     1  profile  Lcom/android/internal/os/PowerProfile;
    MethodParameters:
         Name  Flags
      profile  

  public void calculateApp(com.android.internal.os.BatterySipper, android.os.BatteryStats$Uid, long, long, int);
    descriptor: (Lcom/android/internal/os/BatterySipper;Landroid/os/BatteryStats$Uid;JJI)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=11, args_size=6
        start local 0 // com.android.internal.os.FlashlightPowerCalculator this
        start local 1 // com.android.internal.os.BatterySipper app
        start local 2 // android.os.BatteryStats$Uid u
        start local 3 // long rawRealtimeUs
        start local 5 // long rawUptimeUs
        start local 7 // int statsType
         0: .line 36
            aload 2 /* u */
            invokevirtual android.os.BatteryStats$Uid.getFlashlightTurnedOnTimer:()Landroid/os/BatteryStats$Timer;
            astore 8 /* timer */
        start local 8 // android.os.BatteryStats$Timer timer
         1: .line 37
            aload 8 /* timer */
            ifnull 6
         2: .line 38
            aload 8 /* timer */
            lload 3 /* rawRealtimeUs */
            iload 7 /* statsType */
            invokevirtual android.os.BatteryStats$Timer.getTotalTimeLocked:(JI)J
            ldc 1000
            ldiv
            lstore 9 /* totalTime */
        start local 9 // long totalTime
         3: .line 39
            aload 1 /* app */
            lload 9 /* totalTime */
            putfield com.android.internal.os.BatterySipper.flashlightTimeMs:J
         4: .line 40
            aload 1 /* app */
            lload 9 /* totalTime */
            l2d
            aload 0 /* this */
            getfield com.android.internal.os.FlashlightPowerCalculator.mFlashlightPowerOnAvg:D
            dmul
            ldc 3600000.0
            ddiv
            putfield com.android.internal.os.BatterySipper.flashlightPowerMah:D
        end local 9 // long totalTime
         5: .line 41
            goto 8
         6: .line 42
      StackMap locals: android.os.BatteryStats$Timer
      StackMap stack:
            aload 1 /* app */
            lconst_0
            putfield com.android.internal.os.BatterySipper.flashlightTimeMs:J
         7: .line 43
            aload 1 /* app */
            dconst_0
            putfield com.android.internal.os.BatterySipper.flashlightPowerMah:D
         8: .line 45
      StackMap locals:
      StackMap stack:
            return
        end local 8 // android.os.BatteryStats$Timer timer
        end local 7 // int statsType
        end local 5 // long rawUptimeUs
        end local 3 // long rawRealtimeUs
        end local 2 // android.os.BatteryStats$Uid u
        end local 1 // com.android.internal.os.BatterySipper app
        end local 0 // com.android.internal.os.FlashlightPowerCalculator this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    9     0           this  Lcom/android/internal/os/FlashlightPowerCalculator;
            0    9     1            app  Lcom/android/internal/os/BatterySipper;
            0    9     2              u  Landroid/os/BatteryStats$Uid;
            0    9     3  rawRealtimeUs  J
            0    9     5    rawUptimeUs  J
            0    9     7      statsType  I
            1    9     8          timer  Landroid/os/BatteryStats$Timer;
            3    5     9      totalTime  J
    MethodParameters:
               Name  Flags
      app            
      u              
      rawRealtimeUs  
      rawUptimeUs    
      statsType      
}
SourceFile: "FlashlightPowerCalculator.java"
InnerClasses:
  public abstract Timer = android.os.BatteryStats$Timer of android.os.BatteryStats
  public abstract Uid = android.os.BatteryStats$Uid of android.os.BatteryStats