public class com.sun.scenario.effect.impl.prism.sw.PSWDrawable extends com.sun.scenario.effect.impl.prism.PrDrawable implements com.sun.scenario.effect.impl.HeapImage
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.sun.scenario.effect.impl.prism.sw.PSWDrawable
  super_class: com.sun.scenario.effect.impl.prism.PrDrawable
{
  private com.sun.prism.RTTexture rtt;
    descriptor: Lcom/sun/prism/RTTexture;
    flags: (0x0002) ACC_PRIVATE

  private com.sun.prism.Image image;
    descriptor: Lcom/sun/prism/Image;
    flags: (0x0002) ACC_PRIVATE

  private boolean heapDirty;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean vramDirty;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private void <init>(com.sun.prism.RTTexture, boolean);
    descriptor: (Lcom/sun/prism/RTTexture;Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // com.sun.scenario.effect.impl.prism.sw.PSWDrawable this
        start local 1 // com.sun.prism.RTTexture rtt
        start local 2 // boolean isDirty
         0: .line 50
            aload 0 /* this */
            aload 1 /* rtt */
            invokespecial com.sun.scenario.effect.impl.prism.PrDrawable.<init>:(Lcom/sun/prism/RTTexture;)V
         1: .line 51
            aload 0 /* this */
            aload 1 /* rtt */
            putfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.rtt:Lcom/sun/prism/RTTexture;
         2: .line 52
            aload 0 /* this */
            iload 2 /* isDirty */
            putfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.vramDirty:Z
         3: .line 53
            return
        end local 2 // boolean isDirty
        end local 1 // com.sun.prism.RTTexture rtt
        end local 0 // com.sun.scenario.effect.impl.prism.sw.PSWDrawable this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lcom/sun/scenario/effect/impl/prism/sw/PSWDrawable;
            0    4     1      rtt  Lcom/sun/prism/RTTexture;
            0    4     2  isDirty  Z
    MethodParameters:
         Name  Flags
      rtt      
      isDirty  

  public static com.sun.scenario.effect.impl.prism.sw.PSWDrawable create(com.sun.prism.RTTexture);
    descriptor: (Lcom/sun/prism/RTTexture;)Lcom/sun/scenario/effect/impl/prism/sw/PSWDrawable;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.sun.prism.RTTexture rtt
         0: .line 56
            new com.sun.scenario.effect.impl.prism.sw.PSWDrawable
            dup
            aload 0 /* rtt */
            iconst_1
            invokespecial com.sun.scenario.effect.impl.prism.sw.PSWDrawable.<init>:(Lcom/sun/prism/RTTexture;Z)V
            areturn
        end local 0 // com.sun.prism.RTTexture rtt
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   rtt  Lcom/sun/prism/RTTexture;
    MethodParameters:
      Name  Flags
      rtt   

  static int getCompatibleWidth(com.sun.glass.ui.Screen, int);
    descriptor: (Lcom/sun/glass/ui/Screen;I)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.sun.glass.ui.Screen screen
        start local 1 // int w
         0: .line 61
            invokestatic com.sun.prism.GraphicsPipeline.getPipeline:()Lcom/sun/prism/GraphicsPipeline;
            aload 0 /* screen */
            invokevirtual com.sun.prism.GraphicsPipeline.getResourceFactory:(Lcom/sun/glass/ui/Screen;)Lcom/sun/prism/ResourceFactory;
         1: .line 60
            astore 2 /* factory */
        start local 2 // com.sun.prism.ResourceFactory factory
         2: .line 62
            aload 2 /* factory */
            iload 1 /* w */
            getstatic com.sun.prism.Texture$WrapMode.CLAMP_TO_ZERO:Lcom/sun/prism/Texture$WrapMode;
            invokeinterface com.sun.prism.ResourceFactory.getRTTWidth:(ILcom/sun/prism/Texture$WrapMode;)I
            ireturn
        end local 2 // com.sun.prism.ResourceFactory factory
        end local 1 // int w
        end local 0 // com.sun.glass.ui.Screen screen
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0   screen  Lcom/sun/glass/ui/Screen;
            0    3     1        w  I
            2    3     2  factory  Lcom/sun/prism/ResourceFactory;
    MethodParameters:
        Name  Flags
      screen  
      w       

  static int getCompatibleHeight(com.sun.glass.ui.Screen, int);
    descriptor: (Lcom/sun/glass/ui/Screen;I)I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.sun.glass.ui.Screen screen
        start local 1 // int h
         0: .line 67
            invokestatic com.sun.prism.GraphicsPipeline.getPipeline:()Lcom/sun/prism/GraphicsPipeline;
            aload 0 /* screen */
            invokevirtual com.sun.prism.GraphicsPipeline.getResourceFactory:(Lcom/sun/glass/ui/Screen;)Lcom/sun/prism/ResourceFactory;
         1: .line 66
            astore 2 /* factory */
        start local 2 // com.sun.prism.ResourceFactory factory
         2: .line 68
            aload 2 /* factory */
            iload 1 /* h */
            getstatic com.sun.prism.Texture$WrapMode.CLAMP_TO_ZERO:Lcom/sun/prism/Texture$WrapMode;
            invokeinterface com.sun.prism.ResourceFactory.getRTTHeight:(ILcom/sun/prism/Texture$WrapMode;)I
            ireturn
        end local 2 // com.sun.prism.ResourceFactory factory
        end local 1 // int h
        end local 0 // com.sun.glass.ui.Screen screen
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0   screen  Lcom/sun/glass/ui/Screen;
            0    3     1        h  I
            2    3     2  factory  Lcom/sun/prism/ResourceFactory;
    MethodParameters:
        Name  Flags
      screen  
      h       

  static com.sun.scenario.effect.impl.prism.sw.PSWDrawable create(com.sun.glass.ui.Screen, int, int);
    descriptor: (Lcom/sun/glass/ui/Screen;II)Lcom/sun/scenario/effect/impl/prism/sw/PSWDrawable;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // com.sun.glass.ui.Screen screen
        start local 1 // int width
        start local 2 // int height
         0: .line 73
            invokestatic com.sun.prism.GraphicsPipeline.getPipeline:()Lcom/sun/prism/GraphicsPipeline;
            aload 0 /* screen */
            invokevirtual com.sun.prism.GraphicsPipeline.getResourceFactory:(Lcom/sun/glass/ui/Screen;)Lcom/sun/prism/ResourceFactory;
         1: .line 72
            astore 3 /* factory */
        start local 3 // com.sun.prism.ResourceFactory factory
         2: .line 77
            aload 3 /* factory */
            iload 1 /* width */
            iload 2 /* height */
            getstatic com.sun.prism.Texture$WrapMode.CLAMP_TO_ZERO:Lcom/sun/prism/Texture$WrapMode;
            invokeinterface com.sun.prism.ResourceFactory.createRTTexture:(IILcom/sun/prism/Texture$WrapMode;)Lcom/sun/prism/RTTexture;
         3: .line 76
            astore 4 /* rtt */
        start local 4 // com.sun.prism.RTTexture rtt
         4: .line 78
            new com.sun.scenario.effect.impl.prism.sw.PSWDrawable
            dup
            aload 4 /* rtt */
            iconst_0
            invokespecial com.sun.scenario.effect.impl.prism.sw.PSWDrawable.<init>:(Lcom/sun/prism/RTTexture;Z)V
            areturn
        end local 4 // com.sun.prism.RTTexture rtt
        end local 3 // com.sun.prism.ResourceFactory factory
        end local 2 // int height
        end local 1 // int width
        end local 0 // com.sun.glass.ui.Screen screen
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0   screen  Lcom/sun/glass/ui/Screen;
            0    5     1    width  I
            0    5     2   height  I
            2    5     3  factory  Lcom/sun/prism/ResourceFactory;
            4    5     4      rtt  Lcom/sun/prism/RTTexture;
    MethodParameters:
        Name  Flags
      screen  
      width   
      height  

  public boolean isLost();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.scenario.effect.impl.prism.sw.PSWDrawable this
         0: .line 82
            aload 0 /* this */
            getfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.rtt:Lcom/sun/prism/RTTexture;
            ifnull 1
            aload 0 /* this */
            getfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.rtt:Lcom/sun/prism/RTTexture;
            invokeinterface com.sun.prism.RTTexture.isSurfaceLost:()Z
            ifne 1
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_1
            ireturn
        end local 0 // com.sun.scenario.effect.impl.prism.sw.PSWDrawable this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/scenario/effect/impl/prism/sw/PSWDrawable;

  public void flush();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.scenario.effect.impl.prism.sw.PSWDrawable this
         0: .line 86
            aload 0 /* this */
            getfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.rtt:Lcom/sun/prism/RTTexture;
            ifnull 4
         1: .line 87
            aload 0 /* this */
            getfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.rtt:Lcom/sun/prism/RTTexture;
            invokeinterface com.sun.prism.RTTexture.dispose:()V
         2: .line 88
            aload 0 /* this */
            aconst_null
            putfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.rtt:Lcom/sun/prism/RTTexture;
         3: .line 89
            aload 0 /* this */
            aconst_null
            putfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.image:Lcom/sun/prism/Image;
         4: .line 91
      StackMap locals:
      StackMap stack:
            return
        end local 0 // com.sun.scenario.effect.impl.prism.sw.PSWDrawable this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/sun/scenario/effect/impl/prism/sw/PSWDrawable;

  public java.lang.Object getData();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.scenario.effect.impl.prism.sw.PSWDrawable this
         0: .line 94
            aload 0 /* this */
            areturn
        end local 0 // com.sun.scenario.effect.impl.prism.sw.PSWDrawable this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/scenario/effect/impl/prism/sw/PSWDrawable;

  public int getContentWidth();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.scenario.effect.impl.prism.sw.PSWDrawable this
         0: .line 98
            aload 0 /* this */
            getfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.rtt:Lcom/sun/prism/RTTexture;
            invokeinterface com.sun.prism.RTTexture.getContentWidth:()I
            ireturn
        end local 0 // com.sun.scenario.effect.impl.prism.sw.PSWDrawable this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/scenario/effect/impl/prism/sw/PSWDrawable;

  public int getContentHeight();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.scenario.effect.impl.prism.sw.PSWDrawable this
         0: .line 102
            aload 0 /* this */
            getfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.rtt:Lcom/sun/prism/RTTexture;
            invokeinterface com.sun.prism.RTTexture.getContentHeight:()I
            ireturn
        end local 0 // com.sun.scenario.effect.impl.prism.sw.PSWDrawable this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/scenario/effect/impl/prism/sw/PSWDrawable;

  public int getMaxContentWidth();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.scenario.effect.impl.prism.sw.PSWDrawable this
         0: .line 106
            aload 0 /* this */
            getfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.rtt:Lcom/sun/prism/RTTexture;
            invokeinterface com.sun.prism.RTTexture.getMaxContentWidth:()I
            ireturn
        end local 0 // com.sun.scenario.effect.impl.prism.sw.PSWDrawable this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/scenario/effect/impl/prism/sw/PSWDrawable;

  public int getMaxContentHeight();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.scenario.effect.impl.prism.sw.PSWDrawable this
         0: .line 110
            aload 0 /* this */
            getfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.rtt:Lcom/sun/prism/RTTexture;
            invokeinterface com.sun.prism.RTTexture.getMaxContentHeight:()I
            ireturn
        end local 0 // com.sun.scenario.effect.impl.prism.sw.PSWDrawable this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/scenario/effect/impl/prism/sw/PSWDrawable;

  public void setContentWidth(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.scenario.effect.impl.prism.sw.PSWDrawable this
        start local 1 // int contentW
         0: .line 114
            aload 0 /* this */
            getfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.rtt:Lcom/sun/prism/RTTexture;
            iload 1 /* contentW */
            invokeinterface com.sun.prism.RTTexture.setContentWidth:(I)V
         1: .line 115
            return
        end local 1 // int contentW
        end local 0 // com.sun.scenario.effect.impl.prism.sw.PSWDrawable this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lcom/sun/scenario/effect/impl/prism/sw/PSWDrawable;
            0    2     1  contentW  I
    MethodParameters:
          Name  Flags
      contentW  

  public void setContentHeight(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.scenario.effect.impl.prism.sw.PSWDrawable this
        start local 1 // int contentH
         0: .line 118
            aload 0 /* this */
            getfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.rtt:Lcom/sun/prism/RTTexture;
            iload 1 /* contentH */
            invokeinterface com.sun.prism.RTTexture.setContentHeight:(I)V
         1: .line 119
            return
        end local 1 // int contentH
        end local 0 // com.sun.scenario.effect.impl.prism.sw.PSWDrawable this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lcom/sun/scenario/effect/impl/prism/sw/PSWDrawable;
            0    2     1  contentH  I
    MethodParameters:
          Name  Flags
      contentH  

  public int getPhysicalWidth();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.scenario.effect.impl.prism.sw.PSWDrawable this
         0: .line 124
            aload 0 /* this */
            getfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.rtt:Lcom/sun/prism/RTTexture;
            invokeinterface com.sun.prism.RTTexture.getContentWidth:()I
            ireturn
        end local 0 // com.sun.scenario.effect.impl.prism.sw.PSWDrawable this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/scenario/effect/impl/prism/sw/PSWDrawable;

  public int getPhysicalHeight();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.scenario.effect.impl.prism.sw.PSWDrawable this
         0: .line 130
            aload 0 /* this */
            getfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.rtt:Lcom/sun/prism/RTTexture;
            invokeinterface com.sun.prism.RTTexture.getContentHeight:()I
            ireturn
        end local 0 // com.sun.scenario.effect.impl.prism.sw.PSWDrawable this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/scenario/effect/impl/prism/sw/PSWDrawable;

  public int getScanlineStride();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.scenario.effect.impl.prism.sw.PSWDrawable this
         0: .line 134
            aload 0 /* this */
            getfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.rtt:Lcom/sun/prism/RTTexture;
            invokeinterface com.sun.prism.RTTexture.getContentWidth:()I
            ireturn
        end local 0 // com.sun.scenario.effect.impl.prism.sw.PSWDrawable this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/scenario/effect/impl/prism/sw/PSWDrawable;

  public int[] getPixelArray();
    descriptor: ()[I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // com.sun.scenario.effect.impl.prism.sw.PSWDrawable this
         0: .line 138
            aload 0 /* this */
            getfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.rtt:Lcom/sun/prism/RTTexture;
            invokeinterface com.sun.prism.RTTexture.getPixels:()[I
            astore 1 /* pixels */
        start local 1 // int[] pixels
         1: .line 139
            aload 1 /* pixels */
            ifnull 3
         2: .line 140
            aload 1 /* pixels */
            areturn
         3: .line 142
      StackMap locals: int[]
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.image:Lcom/sun/prism/Image;
            ifnonnull 8
         4: .line 143
            aload 0 /* this */
            getfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.rtt:Lcom/sun/prism/RTTexture;
            invokeinterface com.sun.prism.RTTexture.getContentWidth:()I
            istore 2 /* width */
        start local 2 // int width
         5: .line 144
            aload 0 /* this */
            getfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.rtt:Lcom/sun/prism/RTTexture;
            invokeinterface com.sun.prism.RTTexture.getContentHeight:()I
            istore 3 /* height */
        start local 3 // int height
         6: .line 145
            iload 2 /* width */
            iload 3 /* height */
            imul
            newarray 10
            astore 1 /* pixels */
         7: .line 146
            aload 0 /* this */
            aload 1 /* pixels */
            iload 2 /* width */
            iload 3 /* height */
            invokestatic com.sun.prism.Image.fromIntArgbPreData:([III)Lcom/sun/prism/Image;
            putfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.image:Lcom/sun/prism/Image;
        end local 3 // int height
        end local 2 // int width
         8: .line 148
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.image:Lcom/sun/prism/Image;
            invokevirtual com.sun.prism.Image.getPixelBuffer:()Ljava/nio/Buffer;
            checkcast java.nio.IntBuffer
            astore 2 /* buf */
        start local 2 // java.nio.IntBuffer buf
         9: .line 149
            aload 0 /* this */
            getfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.vramDirty:Z
            ifeq 12
        10: .line 151
            aload 0 /* this */
            getfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.rtt:Lcom/sun/prism/RTTexture;
            aload 2 /* buf */
            invokeinterface com.sun.prism.RTTexture.readPixels:(Ljava/nio/Buffer;)Z
            pop
        11: .line 152
            aload 0 /* this */
            iconst_0
            putfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.vramDirty:Z
        12: .line 154
      StackMap locals: java.nio.IntBuffer
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.heapDirty:Z
        13: .line 155
            aload 2 /* buf */
            invokevirtual java.nio.IntBuffer.array:()[I
            areturn
        end local 2 // java.nio.IntBuffer buf
        end local 1 // int[] pixels
        end local 0 // com.sun.scenario.effect.impl.prism.sw.PSWDrawable this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   14     0    this  Lcom/sun/scenario/effect/impl/prism/sw/PSWDrawable;
            1   14     1  pixels  [I
            5    8     2   width  I
            6    8     3  height  I
            9   14     2     buf  Ljava/nio/IntBuffer;

  public com.sun.prism.RTTexture getTextureObject();
    descriptor: ()Lcom/sun/prism/RTTexture;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=7, args_size=1
        start local 0 // com.sun.scenario.effect.impl.prism.sw.PSWDrawable this
         0: .line 160
            aload 0 /* this */
            getfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.heapDirty:Z
            ifeq 13
         1: .line 164
            aload 0 /* this */
            getfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.rtt:Lcom/sun/prism/RTTexture;
            invokeinterface com.sun.prism.RTTexture.getContentWidth:()I
            istore 1 /* width */
        start local 1 // int width
         2: .line 165
            aload 0 /* this */
            getfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.rtt:Lcom/sun/prism/RTTexture;
            invokeinterface com.sun.prism.RTTexture.getContentHeight:()I
            istore 2 /* height */
        start local 2 // int height
         3: .line 166
            aload 0 /* this */
            getfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.rtt:Lcom/sun/prism/RTTexture;
            invokeinterface com.sun.prism.RTTexture.getAssociatedScreen:()Lcom/sun/glass/ui/Screen;
            astore 3 /* screen */
        start local 3 // com.sun.glass.ui.Screen screen
         4: .line 168
            invokestatic com.sun.prism.GraphicsPipeline.getPipeline:()Lcom/sun/prism/GraphicsPipeline;
            aload 3 /* screen */
            invokevirtual com.sun.prism.GraphicsPipeline.getResourceFactory:(Lcom/sun/glass/ui/Screen;)Lcom/sun/prism/ResourceFactory;
         5: .line 167
            astore 4 /* factory */
        start local 4 // com.sun.prism.ResourceFactory factory
         6: .line 170
            aload 4 /* factory */
            aload 0 /* this */
            getfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.image:Lcom/sun/prism/Image;
            getstatic com.sun.prism.Texture$Usage.DEFAULT:Lcom/sun/prism/Texture$Usage;
            getstatic com.sun.prism.Texture$WrapMode.CLAMP_TO_EDGE:Lcom/sun/prism/Texture$WrapMode;
            invokeinterface com.sun.prism.ResourceFactory.createTexture:(Lcom/sun/prism/Image;Lcom/sun/prism/Texture$Usage;Lcom/sun/prism/Texture$WrapMode;)Lcom/sun/prism/Texture;
         7: .line 169
            astore 5 /* tex */
        start local 5 // com.sun.prism.Texture tex
         8: .line 171
            aload 0 /* this */
            invokevirtual com.sun.scenario.effect.impl.prism.sw.PSWDrawable.createGraphics:()Lcom/sun/prism/Graphics;
            astore 6 /* g */
        start local 6 // com.sun.prism.Graphics g
         9: .line 172
            aload 6 /* g */
            aload 5 /* tex */
            fconst_0
            fconst_0
            iload 1 /* width */
            i2f
            iload 2 /* height */
            i2f
            invokeinterface com.sun.prism.Graphics.drawTexture:(Lcom/sun/prism/Texture;FFFF)V
        10: .line 173
            aload 6 /* g */
            invokeinterface com.sun.prism.Graphics.sync:()V
        11: .line 174
            aload 5 /* tex */
            invokeinterface com.sun.prism.Texture.dispose:()V
        12: .line 175
            aload 0 /* this */
            iconst_0
            putfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.heapDirty:Z
        end local 6 // com.sun.prism.Graphics g
        end local 5 // com.sun.prism.Texture tex
        end local 4 // com.sun.prism.ResourceFactory factory
        end local 3 // com.sun.glass.ui.Screen screen
        end local 2 // int height
        end local 1 // int width
        13: .line 177
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.rtt:Lcom/sun/prism/RTTexture;
            areturn
        end local 0 // com.sun.scenario.effect.impl.prism.sw.PSWDrawable this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   14     0     this  Lcom/sun/scenario/effect/impl/prism/sw/PSWDrawable;
            2   13     1    width  I
            3   13     2   height  I
            4   13     3   screen  Lcom/sun/glass/ui/Screen;
            6   13     4  factory  Lcom/sun/prism/ResourceFactory;
            8   13     5      tex  Lcom/sun/prism/Texture;
            9   13     6        g  Lcom/sun/prism/Graphics;

  public com.sun.prism.Graphics createGraphics();
    descriptor: ()Lcom/sun/prism/Graphics;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.scenario.effect.impl.prism.sw.PSWDrawable this
         0: .line 181
            aload 0 /* this */
            iconst_1
            putfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.vramDirty:Z
         1: .line 182
            aload 0 /* this */
            getfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.rtt:Lcom/sun/prism/RTTexture;
            invokeinterface com.sun.prism.RTTexture.createGraphics:()Lcom/sun/prism/Graphics;
            areturn
        end local 0 // com.sun.scenario.effect.impl.prism.sw.PSWDrawable this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/scenario/effect/impl/prism/sw/PSWDrawable;

  public void clear();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // com.sun.scenario.effect.impl.prism.sw.PSWDrawable this
         0: .line 187
            aload 0 /* this */
            invokevirtual com.sun.scenario.effect.impl.prism.sw.PSWDrawable.createGraphics:()Lcom/sun/prism/Graphics;
            astore 1 /* g */
        start local 1 // com.sun.prism.Graphics g
         1: .line 188
            aload 1 /* g */
            invokeinterface com.sun.prism.Graphics.clear:()V
         2: .line 189
            aload 0 /* this */
            getfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.image:Lcom/sun/prism/Image;
            ifnull 5
         3: .line 190
            aload 0 /* this */
            getfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.image:Lcom/sun/prism/Image;
            invokevirtual com.sun.prism.Image.getPixelBuffer:()Ljava/nio/Buffer;
            checkcast java.nio.IntBuffer
            astore 2 /* buf */
        start local 2 // java.nio.IntBuffer buf
         4: .line 191
            aload 2 /* buf */
            invokevirtual java.nio.IntBuffer.array:()[I
            iconst_0
            invokestatic java.util.Arrays.fill:([II)V
        end local 2 // java.nio.IntBuffer buf
         5: .line 193
      StackMap locals: com.sun.prism.Graphics
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.heapDirty:Z
         6: .line 194
            aload 0 /* this */
            iconst_0
            putfield com.sun.scenario.effect.impl.prism.sw.PSWDrawable.vramDirty:Z
         7: .line 195
            return
        end local 1 // com.sun.prism.Graphics g
        end local 0 // com.sun.scenario.effect.impl.prism.sw.PSWDrawable this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lcom/sun/scenario/effect/impl/prism/sw/PSWDrawable;
            1    8     1     g  Lcom/sun/prism/Graphics;
            4    5     2   buf  Ljava/nio/IntBuffer;

  public com.sun.prism.Texture getTextureObject();
    descriptor: ()Lcom/sun/prism/Texture;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual com.sun.scenario.effect.impl.prism.sw.PSWDrawable.getTextureObject:()Lcom/sun/prism/RTTexture;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "PSWDrawable.java"
InnerClasses:
  public final Usage = com.sun.prism.Texture$Usage of com.sun.prism.Texture
  public final WrapMode = com.sun.prism.Texture$WrapMode of com.sun.prism.Texture