class com.sun.prism.j2d.J2DTexturePool extends com.sun.prism.impl.BaseResourcePool<java.awt.image.BufferedImage> implements com.sun.prism.impl.TextureResourcePool<java.awt.image.BufferedImage>
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: com.sun.prism.j2d.J2DTexturePool
  super_class: com.sun.prism.impl.BaseResourcePool
{
  static final com.sun.prism.j2d.J2DTexturePool instance;
    descriptor: Lcom/sun/prism/j2d/J2DTexturePool;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  private static volatile int[] $SWITCH_TABLE$com$sun$prism$PixelFormat;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 37
            new com.sun.prism.j2d.J2DTexturePool
            dup
            invokespecial com.sun.prism.j2d.J2DTexturePool.<init>:()V
            putstatic com.sun.prism.j2d.J2DTexturePool.instance:Lcom/sun/prism/j2d/J2DTexturePool;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static long maxVram();
    descriptor: ()J
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=0
         0: .line 40
            invokestatic java.lang.Runtime.getRuntime:()Ljava/lang/Runtime;
            invokevirtual java.lang.Runtime.maxMemory:()J
            lstore 0 /* heapmax */
        start local 0 // long heapmax
         1: .line 41
            getstatic com.sun.prism.impl.PrismSettings.maxVram:J
            lstore 2 /* setmax */
        start local 2 // long setmax
         2: .line 42
            lload 0 /* heapmax */
            ldc 4
            ldiv
            lload 2 /* setmax */
            invokestatic java.lang.Math.min:(JJ)J
            lreturn
        end local 2 // long setmax
        end local 0 // long heapmax
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            1    3     0  heapmax  J
            2    3     2   setmax  J

  private static long targetVram();
    descriptor: ()J
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=0
         0: .line 46
            invokestatic com.sun.prism.j2d.J2DTexturePool.maxVram:()J
            lstore 0 /* max */
        start local 0 // long max
         1: .line 47
            lload 0 /* max */
            ldc 2
            ldiv
            getstatic com.sun.prism.impl.PrismSettings.targetVram:J
            invokestatic java.lang.Math.min:(JJ)J
            lreturn
        end local 0 // long max
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            1    2     0   max  J

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=1, args_size=1
        start local 0 // com.sun.prism.j2d.J2DTexturePool this
         0: .line 51
            aload 0 /* this */
            aconst_null
            invokestatic com.sun.prism.j2d.J2DTexturePool.targetVram:()J
            invokestatic com.sun.prism.j2d.J2DTexturePool.maxVram:()J
            invokespecial com.sun.prism.impl.BaseResourcePool.<init>:(Lcom/sun/prism/impl/ResourcePool;JJ)V
         1: .line 52
            return
        end local 0 // com.sun.prism.j2d.J2DTexturePool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/prism/j2d/J2DTexturePool;

  public long used();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=8, args_size=1
        start local 0 // com.sun.prism.j2d.J2DTexturePool this
         0: .line 56
            invokestatic java.lang.Runtime.getRuntime:()Ljava/lang/Runtime;
            astore 1 /* r */
        start local 1 // java.lang.Runtime r
         1: .line 57
            aload 1 /* r */
            invokevirtual java.lang.Runtime.totalMemory:()J
            aload 1 /* r */
            invokevirtual java.lang.Runtime.freeMemory:()J
            lsub
            lstore 2 /* heapused */
        start local 2 // long heapused
         2: .line 58
            aload 1 /* r */
            invokevirtual java.lang.Runtime.maxMemory:()J
            lload 2 /* heapused */
            lsub
            lstore 4 /* heapfree */
        start local 4 // long heapfree
         3: .line 60
            aload 0 /* this */
            invokevirtual com.sun.prism.j2d.J2DTexturePool.max:()J
            aload 0 /* this */
            invokevirtual com.sun.prism.j2d.J2DTexturePool.managed:()J
            lsub
            lstore 6 /* managedfree */
        start local 6 // long managedfree
         4: .line 61
            aload 0 /* this */
            invokevirtual com.sun.prism.j2d.J2DTexturePool.max:()J
            lload 4 /* heapfree */
            lload 6 /* managedfree */
            invokestatic java.lang.Math.min:(JJ)J
            lsub
            lreturn
        end local 6 // long managedfree
        end local 4 // long heapfree
        end local 2 // long heapused
        end local 1 // java.lang.Runtime r
        end local 0 // com.sun.prism.j2d.J2DTexturePool this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0         this  Lcom/sun/prism/j2d/J2DTexturePool;
            1    5     1            r  Ljava/lang/Runtime;
            2    5     2     heapused  J
            3    5     4     heapfree  J
            4    5     6  managedfree  J

  static long size(int, int, int);
    descriptor: (III)J
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // int w
        start local 1 // int h
        start local 2 // int type
         0: .line 65
            iload 0 /* w */
            i2l
            iload 1 /* h */
            i2l
            lmul
            lstore 3 /* size */
        start local 3 // long size
         1: .line 66
            iload 2 /* type */
            lookupswitch { // 3
                    3: 4
                    5: 2
                   10: 3
              default: 5
          }
         2: .line 68
      StackMap locals: long
      StackMap stack:
            lload 3 /* size */
            ldc 3
            lmul
            lreturn
         3: .line 70
      StackMap locals:
      StackMap stack:
            lload 3 /* size */
            lreturn
         4: .line 72
      StackMap locals:
      StackMap stack:
            lload 3 /* size */
            ldc 4
            lmul
            lreturn
         5: .line 74
      StackMap locals:
      StackMap stack:
            new java.lang.InternalError
            dup
            ldc "Unrecognized BufferedImage"
            invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
            athrow
        end local 3 // long size
        end local 2 // int type
        end local 1 // int h
        end local 0 // int w
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0     w  I
            0    6     1     h  I
            0    6     2  type  I
            1    6     3  size  J
    MethodParameters:
      Name  Flags
      w     
      h     
      type  

  public long size(java.awt.image.BufferedImage);
    descriptor: (Ljava/awt/image/BufferedImage;)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.sun.prism.j2d.J2DTexturePool this
        start local 1 // java.awt.image.BufferedImage resource
         0: .line 80
            aload 1 /* resource */
            invokevirtual java.awt.image.BufferedImage.getWidth:()I
            aload 1 /* resource */
            invokevirtual java.awt.image.BufferedImage.getHeight:()I
         1: .line 81
            aload 1 /* resource */
            invokevirtual java.awt.image.BufferedImage.getType:()I
         2: .line 80
            invokestatic com.sun.prism.j2d.J2DTexturePool.size:(III)J
            lreturn
        end local 1 // java.awt.image.BufferedImage resource
        end local 0 // com.sun.prism.j2d.J2DTexturePool this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lcom/sun/prism/j2d/J2DTexturePool;
            0    3     1  resource  Ljava/awt/image/BufferedImage;
    MethodParameters:
          Name  Flags
      resource  

  public long estimateTextureSize(int, int, com.sun.prism.PixelFormat);
    descriptor: (IILcom/sun/prism/PixelFormat;)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // com.sun.prism.j2d.J2DTexturePool this
        start local 1 // int width
        start local 2 // int height
        start local 3 // com.sun.prism.PixelFormat format
         0: .line 89
            invokestatic com.sun.prism.j2d.J2DTexturePool.$SWITCH_TABLE$com$sun$prism$PixelFormat:()[I
            aload 3 /* format */
            invokevirtual com.sun.prism.PixelFormat.ordinal:()I
            iaload
            tableswitch { // 1 - 4
                    1: 5
                    2: 5
                    3: 1
                    4: 3
              default: 7
          }
         1: .line 91
      StackMap locals:
      StackMap stack:
            iconst_5
            istore 4 /* type */
        start local 4 // int type
         2: .line 92
            goto 8
        end local 4 // int type
         3: .line 94
      StackMap locals:
      StackMap stack:
            bipush 10
            istore 4 /* type */
        start local 4 // int type
         4: .line 95
            goto 8
        end local 4 // int type
         5: .line 98
      StackMap locals:
      StackMap stack:
            iconst_3
            istore 4 /* type */
        start local 4 // int type
         6: .line 99
            goto 8
        end local 4 // int type
         7: .line 101
      StackMap locals:
      StackMap stack:
            new java.lang.InternalError
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unrecognized PixelFormat ("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* format */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc ")!"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
            athrow
        start local 4 // int type
         8: .line 103
      StackMap locals: int
      StackMap stack:
            iload 1 /* width */
            iload 2 /* height */
            iload 4 /* type */
            invokestatic com.sun.prism.j2d.J2DTexturePool.size:(III)J
            lreturn
        end local 4 // int type
        end local 3 // com.sun.prism.PixelFormat format
        end local 2 // int height
        end local 1 // int width
        end local 0 // com.sun.prism.j2d.J2DTexturePool this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0    this  Lcom/sun/prism/j2d/J2DTexturePool;
            0    9     1   width  I
            0    9     2  height  I
            0    9     3  format  Lcom/sun/prism/PixelFormat;
            2    3     4    type  I
            4    5     4    type  I
            6    7     4    type  I
            8    9     4    type  I
    MethodParameters:
        Name  Flags
      width   
      height  
      format  

  public long estimateRTTextureSize(int, int, boolean);
    descriptor: (IIZ)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // com.sun.prism.j2d.J2DTexturePool this
        start local 1 // int width
        start local 2 // int height
        start local 3 // boolean hasDepth
         0: .line 110
            iload 1 /* width */
            iload 2 /* height */
            iconst_3
            invokestatic com.sun.prism.j2d.J2DTexturePool.size:(III)J
            lreturn
        end local 3 // boolean hasDepth
        end local 2 // int height
        end local 1 // int width
        end local 0 // com.sun.prism.j2d.J2DTexturePool this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/sun/prism/j2d/J2DTexturePool;
            0    1     1     width  I
            0    1     2    height  I
            0    1     3  hasDepth  Z
    MethodParameters:
          Name  Flags
      width     
      height    
      hasDepth  

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.prism.j2d.J2DTexturePool this
         0: .line 115
            ldc "J2D Texture Pool"
            areturn
        end local 0 // com.sun.prism.j2d.J2DTexturePool this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/prism/j2d/J2DTexturePool;

  public long size(java.lang.Object);
    descriptor: (Ljava/lang/Object;)J
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            checkcast java.awt.image.BufferedImage
            invokevirtual com.sun.prism.j2d.J2DTexturePool.size:(Ljava/awt/image/BufferedImage;)J
            lreturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static int[] $SWITCH_TABLE$com$sun$prism$PixelFormat();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 34
            getstatic com.sun.prism.j2d.J2DTexturePool.$SWITCH_TABLE$com$sun$prism$PixelFormat:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic com.sun.prism.PixelFormat.values:()[Lcom/sun/prism/PixelFormat;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic com.sun.prism.PixelFormat.BYTE_ALPHA:Lcom/sun/prism/PixelFormat;
            invokevirtual com.sun.prism.PixelFormat.ordinal:()I
            iconst_5
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic com.sun.prism.PixelFormat.BYTE_APPLE_422:Lcom/sun/prism/PixelFormat;
            invokevirtual com.sun.prism.PixelFormat.ordinal:()I
            bipush 7
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic com.sun.prism.PixelFormat.BYTE_BGRA_PRE:Lcom/sun/prism/PixelFormat;
            invokevirtual com.sun.prism.PixelFormat.ordinal:()I
            iconst_2
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic com.sun.prism.PixelFormat.BYTE_GRAY:Lcom/sun/prism/PixelFormat;
            invokevirtual com.sun.prism.PixelFormat.ordinal:()I
            iconst_4
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic com.sun.prism.PixelFormat.BYTE_RGB:Lcom/sun/prism/PixelFormat;
            invokevirtual com.sun.prism.PixelFormat.ordinal:()I
            iconst_3
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic com.sun.prism.PixelFormat.FLOAT_XYZW:Lcom/sun/prism/PixelFormat;
            invokevirtual com.sun.prism.PixelFormat.ordinal:()I
            bipush 8
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic com.sun.prism.PixelFormat.INT_ARGB_PRE:Lcom/sun/prism/PixelFormat;
            invokevirtual com.sun.prism.PixelFormat.ordinal:()I
            iconst_1
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            getstatic com.sun.prism.PixelFormat.MULTI_YCbCr_420:Lcom/sun/prism/PixelFormat;
            invokevirtual com.sun.prism.PixelFormat.ordinal:()I
            bipush 6
            iastore
        24: goto 26
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        25: pop
      StackMap locals:
      StackMap stack:
        26: aload 0
            dup
            putstatic com.sun.prism.j2d.J2DTexturePool.$SWITCH_TABLE$com$sun$prism$PixelFormat:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
          14    15      16  Class java.lang.NoSuchFieldError
          17    18      19  Class java.lang.NoSuchFieldError
          20    21      22  Class java.lang.NoSuchFieldError
          23    24      25  Class java.lang.NoSuchFieldError
}
Signature: Lcom/sun/prism/impl/BaseResourcePool<Ljava/awt/image/BufferedImage;>;Lcom/sun/prism/impl/TextureResourcePool<Ljava/awt/image/BufferedImage;>;
SourceFile: "J2DTexturePool.java"