class com.sun.prism.es2.ES2RTTexture extends com.sun.prism.es2.ES2Texture<com.sun.prism.es2.ES2RTTextureData> implements com.sun.prism.es2.ES2RenderTarget, com.sun.prism.RTTexture, com.sun.prism.ReadbackRenderTarget
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.sun.prism.es2.ES2RTTexture
super_class: com.sun.prism.es2.ES2Texture
{
private boolean opaque;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private static volatile int[] $SWITCH_TABLE$com$sun$prism$Texture$WrapMode;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
private void <init>(com.sun.prism.es2.ES2Context, com.sun.prism.es2.ES2TextureResource<com.sun.prism.es2.ES2RTTextureData>, com.sun.prism.Texture$WrapMode, int, int, int, int, int, int, int, );
descriptor: (Lcom/sun/prism/es2/ES2Context;Lcom/sun/prism/es2/ES2TextureResource;Lcom/sun/prism/Texture$WrapMode;IIIIIIII)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=14, locals=12, args_size=12
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 start local 9 start local 10 start local 11 0: aload 0
aload 1
aload 2
getstatic com.sun.prism.PixelFormat.BYTE_BGRA_PRE:Lcom/sun/prism/PixelFormat;
aload 3
1: iload 4
iload 5
2: iload 6
iload 7
3: iload 8
iload 9
4: iload 10
iload 11
iconst_0
invokespecial com.sun.prism.es2.ES2Texture.<init>:(Lcom/sun/prism/es2/ES2Context;Lcom/sun/prism/es2/ES2TextureResource;Lcom/sun/prism/PixelFormat;Lcom/sun/prism/Texture$WrapMode;IIIIIIIIZ)V
5: aload 2
invokevirtual com.sun.prism.es2.ES2TextureResource.getResource:()Ljava/lang/Object;
checkcast com.sun.prism.es2.ES2RTTextureData
invokevirtual com.sun.prism.es2.ES2RTTextureData.getFboID:()I
i2l
6: iload 4
iload 5
7: getstatic com.sun.prism.PixelFormat.BYTE_BGRA_PRE:Lcom/sun/prism/PixelFormat;
invokevirtual com.sun.prism.PixelFormat.getBytesPerPixelUnit:()I
8: invokestatic com.sun.prism.impl.PrismTrace.rttCreated:(JIII)V
9: aload 0
iconst_0
putfield com.sun.prism.es2.ES2RTTexture.opaque:Z
10: return
end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/sun/prism/es2/ES2RTTexture;
0 11 1 context Lcom/sun/prism/es2/ES2Context;
0 11 2 resource Lcom/sun/prism/es2/ES2TextureResource<Lcom/sun/prism/es2/ES2RTTextureData;>;
0 11 3 wrapMode Lcom/sun/prism/Texture$WrapMode;
0 11 4 physicalWidth I
0 11 5 physicalHeight I
0 11 6 contentX I
0 11 7 contentY I
0 11 8 contentWidth I
0 11 9 contentHeight I
0 11 10 maxContentWidth I
0 11 11 maxContentHeight I
Signature: (Lcom/sun/prism/es2/ES2Context;Lcom/sun/prism/es2/ES2TextureResource<Lcom/sun/prism/es2/ES2RTTextureData;>;Lcom/sun/prism/Texture$WrapMode;IIIIIIII)V
MethodParameters:
Name Flags
context
resource
wrapMode
physicalWidth
physicalHeight
contentX
contentY
contentWidth
contentHeight
maxContentWidth
maxContentHeight
void attachDepthBuffer(com.sun.prism.es2.ES2Context);
descriptor: (Lcom/sun/prism/es2/ES2Context;)V
flags: (0x0000)
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.prism.es2.ES2RTTexture.resource:Lcom/sun/prism/impl/ManagedResource;
checkcast com.sun.prism.es2.ES2TextureResource
invokevirtual com.sun.prism.es2.ES2TextureResource.getResource:()Ljava/lang/Object;
checkcast com.sun.prism.es2.ES2RTTextureData
astore 2
start local 2 1: aload 2
invokevirtual com.sun.prism.es2.ES2RTTextureData.getDepthBufferID:()I
istore 3
start local 3 2: iload 3
ifeq 4
3: return
4: StackMap locals: com.sun.prism.es2.ES2RTTextureData int
StackMap stack:
aload 0
invokevirtual com.sun.prism.es2.ES2RTTexture.isMSAA:()Z
ifeq 5
aload 1
invokevirtual com.sun.prism.es2.ES2Context.getGLContext:()Lcom/sun/prism/es2/GLContext;
invokevirtual com.sun.prism.es2.GLContext.getSampleSize:()I
goto 6
StackMap locals:
StackMap stack:
5: iconst_0
StackMap locals:
StackMap stack: int
6: istore 4
start local 4 7: aload 1
invokevirtual com.sun.prism.es2.ES2Context.getGLContext:()Lcom/sun/prism/es2/GLContext;
aload 0
invokevirtual com.sun.prism.es2.ES2RTTexture.getPhysicalWidth:()I
8: aload 0
invokevirtual com.sun.prism.es2.ES2RTTexture.getPhysicalHeight:()I
iload 4
9: invokevirtual com.sun.prism.es2.GLContext.createDepthBuffer:(III)I
istore 3
10: aload 2
iload 3
invokevirtual com.sun.prism.es2.ES2RTTextureData.setDepthBufferID:(I)V
11: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lcom/sun/prism/es2/ES2RTTexture;
0 12 1 context Lcom/sun/prism/es2/ES2Context;
1 12 2 texData Lcom/sun/prism/es2/ES2RTTextureData;
2 12 3 dbID I
7 12 4 msaaSamples I
MethodParameters:
Name Flags
context
private void createAndAttachMSAABuffer(com.sun.prism.es2.ES2Context);
descriptor: (Lcom/sun/prism/es2/ES2Context;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.prism.es2.ES2RTTexture.resource:Lcom/sun/prism/impl/ManagedResource;
checkcast com.sun.prism.es2.ES2TextureResource
invokevirtual com.sun.prism.es2.ES2TextureResource.getResource:()Ljava/lang/Object;
checkcast com.sun.prism.es2.ES2RTTextureData
astore 2
start local 2 1: aload 2
invokevirtual com.sun.prism.es2.ES2RTTextureData.getMSAARenderBufferID:()I
istore 3
start local 3 2: iload 3
ifeq 4
3: return
4: StackMap locals: com.sun.prism.es2.ES2RTTextureData int
StackMap stack:
aload 1
invokevirtual com.sun.prism.es2.ES2Context.getGLContext:()Lcom/sun/prism/es2/GLContext;
astore 4
start local 4 5: aload 4
aload 0
invokevirtual com.sun.prism.es2.ES2RTTexture.getPhysicalWidth:()I
6: aload 0
invokevirtual com.sun.prism.es2.ES2RTTexture.getPhysicalHeight:()I
aload 4
invokevirtual com.sun.prism.es2.GLContext.getSampleSize:()I
7: invokevirtual com.sun.prism.es2.GLContext.createRenderBuffer:(III)I
istore 3
8: aload 2
iload 3
invokevirtual com.sun.prism.es2.ES2RTTextureData.setMSAARenderBufferID:(I)V
9: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/sun/prism/es2/ES2RTTexture;
0 10 1 context Lcom/sun/prism/es2/ES2Context;
1 10 2 texData Lcom/sun/prism/es2/ES2RTTextureData;
2 10 3 rbID I
5 10 4 glContext Lcom/sun/prism/es2/GLContext;
MethodParameters:
Name Flags
context
static int getCompatibleDimension(com.sun.prism.es2.ES2Context, int, com.sun.prism.Texture$WrapMode);
descriptor: (Lcom/sun/prism/es2/ES2Context;ILcom/sun/prism/Texture$WrapMode;)I
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual com.sun.prism.es2.ES2Context.getGLContext:()Lcom/sun/prism/es2/GLContext;
astore 3
start local 3 1: invokestatic com.sun.prism.es2.ES2RTTexture.$SWITCH_TABLE$com$sun$prism$Texture$WrapMode:()[I
aload 2
invokevirtual com.sun.prism.Texture$WrapMode.ordinal:()I
iaload
tableswitch { // 1 - 7
1: 2
2: 4
3: 8
4: 8
5: 9
6: 9
7: 9
default: 8
}
2: StackMap locals: com.sun.prism.es2.GLContext
StackMap stack:
iconst_0
istore 4
start local 4 3: goto 10
end local 4 4: StackMap locals:
StackMap stack:
aload 3
invokevirtual com.sun.prism.es2.GLContext.canClampToZero:()Z
ifeq 5
iconst_0
goto 6
StackMap locals:
StackMap stack:
5: iconst_1
StackMap locals:
StackMap stack: int
6: istore 4
start local 4 7: goto 10
end local 4 8: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "wrap mode not supported for RT textures: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
9: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Cannot request simulated wrap mode: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
start local 4 10: StackMap locals: int
StackMap stack:
iload 4
ifeq 11
iload 1
iconst_2
iadd
goto 12
StackMap locals:
StackMap stack:
11: iload 1
StackMap locals:
StackMap stack: int
12: istore 5
start local 5 13: aload 3
invokevirtual com.sun.prism.es2.GLContext.getMaxTextureSize:()I
istore 6
start local 6 14: aload 3
invokevirtual com.sun.prism.es2.GLContext.canCreateNonPowTwoTextures:()Z
ifeq 19
15: iload 5
iload 6
if_icmpgt 16
iload 5
goto 17
StackMap locals: int int
StackMap stack:
16: iconst_0
StackMap locals:
StackMap stack: int
17: istore 7
start local 7 18: goto 20
end local 7 19: StackMap locals:
StackMap stack:
iload 5
iload 6
invokestatic com.sun.prism.es2.ES2RTTexture.nextPowerOfTwo:(II)I
istore 7
start local 7 20: StackMap locals: int
StackMap stack:
iload 7
ifne 27
21: new java.lang.RuntimeException
dup
22: new java.lang.StringBuilder
dup
ldc "Requested texture dimension ("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ") "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
23: ldc "requires dimension ("
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 7
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ") "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
24: ldc "that exceeds maximum texture size ("
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 6
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
25: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
26: invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
27: StackMap locals:
StackMap stack:
iload 7
getstatic com.sun.prism.impl.PrismSettings.minRTTSize:I
invokestatic java.lang.Math.max:(II)I
istore 7
28: iload 4
ifeq 29
iload 7
iconst_2
isub
goto 30
StackMap locals:
StackMap stack:
29: iload 7
StackMap locals:
StackMap stack: int
30: ireturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 31 0 context Lcom/sun/prism/es2/ES2Context;
0 31 1 dim I
0 31 2 wrapMode Lcom/sun/prism/Texture$WrapMode;
1 31 3 glContext Lcom/sun/prism/es2/GLContext;
3 4 4 pad Z
7 8 4 pad Z
10 31 4 pad Z
13 31 5 paddedDim I
14 31 6 maxSize I
18 19 7 texDim I
20 31 7 texDim I
MethodParameters:
Name Flags
context
dim
wrapMode
static com.sun.prism.es2.ES2RTTexture create(com.sun.prism.es2.ES2Context, int, int, com.sun.prism.Texture$WrapMode, boolean);
descriptor: (Lcom/sun/prism/es2/ES2Context;IILcom/sun/prism/Texture$WrapMode;Z)Lcom/sun/prism/es2/ES2RTTexture;
flags: (0x0008) ACC_STATIC
Code:
stack=13, locals=29, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokevirtual com.sun.prism.es2.ES2Context.getGLContext:()Lcom/sun/prism/es2/GLContext;
astore 5
start local 5 1: invokestatic com.sun.prism.es2.ES2RTTexture.$SWITCH_TABLE$com$sun$prism$Texture$WrapMode:()[I
aload 3
invokevirtual com.sun.prism.Texture$WrapMode.ordinal:()I
iaload
tableswitch { // 1 - 7
1: 2
2: 4
3: 8
4: 8
5: 9
6: 9
7: 9
default: 8
}
2: StackMap locals: com.sun.prism.es2.GLContext
StackMap stack:
iconst_0
istore 6
start local 6 3: goto 10
end local 6 4: StackMap locals:
StackMap stack:
aload 5
invokevirtual com.sun.prism.es2.GLContext.canClampToZero:()Z
ifeq 5
iconst_0
goto 6
StackMap locals:
StackMap stack:
5: iconst_1
StackMap locals:
StackMap stack: int
6: istore 6
start local 6 7: goto 10
end local 6 8: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "wrap mode not supported for RT textures: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
9: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Cannot request simulated wrap mode: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
start local 6 10: StackMap locals: int
StackMap stack:
iload 6
ifeq 17
11: iconst_1
istore 7
start local 7 12: iconst_1
istore 8
start local 8 13: iload 1
iconst_2
iadd
istore 9
start local 9 14: iload 2
iconst_2
iadd
istore 10
start local 10 15: aload 3
invokevirtual com.sun.prism.Texture$WrapMode.simulatedVersion:()Lcom/sun/prism/Texture$WrapMode;
astore 3
16: goto 21
end local 10 end local 9 end local 8 end local 7 17: StackMap locals:
StackMap stack:
iconst_0
istore 7
start local 7 18: iconst_0
istore 8
start local 8 19: iload 1
istore 9
start local 9 20: iload 2
istore 10
start local 10 21: StackMap locals: com.sun.prism.es2.ES2Context int int com.sun.prism.Texture$WrapMode int com.sun.prism.es2.GLContext int int int int int
StackMap stack:
aload 5
invokevirtual com.sun.prism.es2.GLContext.getMaxTextureSize:()I
istore 11
start local 11 22: aload 5
invokevirtual com.sun.prism.es2.GLContext.canCreateNonPowTwoTextures:()Z
ifeq 30
23: iload 9
iload 11
if_icmpgt 24
iload 9
goto 25
StackMap locals: int
StackMap stack:
24: iconst_0
StackMap locals:
StackMap stack: int
25: istore 12
start local 12 26: iload 10
iload 11
if_icmpgt 27
iload 10
goto 28
StackMap locals: int
StackMap stack:
27: iconst_0
StackMap locals:
StackMap stack: int
28: istore 13
start local 13 29: goto 32
end local 13 end local 12 30: StackMap locals:
StackMap stack:
iload 9
iload 11
invokestatic com.sun.prism.es2.ES2RTTexture.nextPowerOfTwo:(II)I
istore 12
start local 12 31: iload 10
iload 11
invokestatic com.sun.prism.es2.ES2RTTexture.nextPowerOfTwo:(II)I
istore 13
start local 13 32: StackMap locals: int int
StackMap stack:
iload 12
ifeq 33
iload 13
ifne 39
33: StackMap locals:
StackMap stack:
new java.lang.RuntimeException
dup
34: new java.lang.StringBuilder
dup
ldc "Requested texture dimensions ("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc "x"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ") "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
35: ldc "require dimensions ("
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 12
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc "x"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 13
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ") "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
36: ldc "that exceed maximum texture size ("
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 11
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
37: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
38: invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
39: StackMap locals:
StackMap stack:
getstatic com.sun.prism.impl.PrismSettings.minRTTSize:I
istore 14
start local 14 40: iload 12
iload 14
invokestatic java.lang.Math.max:(II)I
istore 12
41: iload 13
iload 14
invokestatic java.lang.Math.max:(II)I
istore 13
42: getstatic com.sun.prism.es2.ES2VramPool.instance:Lcom/sun/prism/es2/ES2VramPool;
astore 15
start local 15 43: aload 15
iload 12
iload 13
iconst_0
invokevirtual com.sun.prism.es2.ES2VramPool.estimateRTTextureSize:(IIZ)J
lstore 16
start local 16 44: aload 15
lload 16
invokevirtual com.sun.prism.es2.ES2VramPool.prepareForAllocation:(J)Z
ifne 46
45: aconst_null
areturn
46: StackMap locals: int com.sun.prism.es2.ES2VramPool long
StackMap stack:
iload 6
ifeq 52
47: iload 12
iconst_2
isub
istore 20
start local 20 48: iload 13
iconst_2
isub
istore 21
start local 21 49: iload 1
istore 18
start local 18 50: iload 2
istore 19
start local 19 51: goto 56
end local 21 end local 20 end local 19 end local 18 52: StackMap locals:
StackMap stack:
iload 12
istore 20
start local 20 53: iload 13
istore 21
start local 21 54: iload 1
istore 18
start local 18 55: iload 2
istore 19
start local 19 56: StackMap locals: com.sun.prism.es2.ES2Context int int com.sun.prism.Texture$WrapMode int com.sun.prism.es2.GLContext int int int int int int int int int com.sun.prism.es2.ES2VramPool long int int int int
StackMap stack:
aload 5
iconst_0
invokevirtual com.sun.prism.es2.GLContext.setActiveTextureUnit:(I)V
57: aload 5
invokevirtual com.sun.prism.es2.GLContext.getBoundFBO:()I
istore 22
start local 22 58: aload 5
invokevirtual com.sun.prism.es2.GLContext.getBoundTexture:()I
istore 23
start local 23 59: iconst_0
istore 24
start local 24 60: iload 4
ifne 62
61: aload 5
iload 12
iload 13
invokevirtual com.sun.prism.es2.GLContext.createTexture:(II)I
istore 24
62: StackMap locals: int int int
StackMap stack:
iconst_0
istore 25
start local 25 63: iload 24
ifne 64
iload 4
ifeq 68
64: StackMap locals: int
StackMap stack:
aload 5
iload 24
invokevirtual com.sun.prism.es2.GLContext.createFBO:(I)I
istore 25
65: iload 25
ifne 68
66: aload 5
iload 24
invokevirtual com.sun.prism.es2.GLContext.deleteTexture:(I)V
67: iconst_0
istore 24
68: StackMap locals:
StackMap stack:
new com.sun.prism.es2.ES2RTTextureData
dup
aload 0
iload 24
iload 25
69: iload 12
iload 13
lload 16
70: invokespecial com.sun.prism.es2.ES2RTTextureData.<init>:(Lcom/sun/prism/es2/ES2Context;IIIIJ)V
71: astore 26
start local 26 72: new com.sun.prism.es2.ES2TextureResource
dup
aload 26
invokespecial com.sun.prism.es2.ES2TextureResource.<init>:(Lcom/sun/prism/es2/ES2TextureData;)V
astore 27
start local 27 73: new com.sun.prism.es2.ES2RTTexture
dup
aload 0
aload 27
aload 3
74: iload 12
iload 13
75: iload 7
iload 8
76: iload 18
iload 19
77: iload 20
iload 21
78: invokespecial com.sun.prism.es2.ES2RTTexture.<init>:(Lcom/sun/prism/es2/ES2Context;Lcom/sun/prism/es2/ES2TextureResource;Lcom/sun/prism/Texture$WrapMode;IIIIIIII)V
astore 28
start local 28 79: iload 4
ifeq 81
80: aload 28
aload 0
invokevirtual com.sun.prism.es2.ES2RTTexture.createAndAttachMSAABuffer:(Lcom/sun/prism/es2/ES2Context;)V
81: StackMap locals: com.sun.prism.es2.ES2RTTextureData com.sun.prism.es2.ES2TextureResource com.sun.prism.es2.ES2RTTexture
StackMap stack:
aload 5
iload 22
invokevirtual com.sun.prism.es2.GLContext.bindFBO:(I)V
82: aload 5
iload 23
invokevirtual com.sun.prism.es2.GLContext.setBoundTexture:(I)V
83: aload 28
areturn
end local 28 end local 27 end local 26 end local 25 end local 24 end local 23 end local 22 end local 21 end local 20 end local 19 end local 18 end local 16 end local 15 end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 84 0 context Lcom/sun/prism/es2/ES2Context;
0 84 1 w I
0 84 2 h I
0 84 3 wrapMode Lcom/sun/prism/Texture$WrapMode;
0 84 4 msaa Z
1 84 5 glContext Lcom/sun/prism/es2/GLContext;
3 4 6 pad Z
7 8 6 pad Z
10 84 6 pad Z
12 17 7 contentX I
18 84 7 contentX I
13 17 8 contentY I
19 84 8 contentY I
14 17 9 paddedW I
20 84 9 paddedW I
15 17 10 paddedH I
21 84 10 paddedH I
22 84 11 maxSize I
26 30 12 texWidth I
31 84 12 texWidth I
29 30 13 texHeight I
32 84 13 texHeight I
40 84 14 minSize I
43 84 15 pool Lcom/sun/prism/es2/ES2VramPool;
44 84 16 size J
50 52 18 contentW I
55 84 18 contentW I
51 52 19 contentH I
56 84 19 contentH I
48 52 20 maxContentW I
53 84 20 maxContentW I
49 52 21 maxContentH I
54 84 21 maxContentH I
58 84 22 savedFBO I
59 84 23 savedTex I
60 84 24 nativeTexID I
63 84 25 nativeFBOID I
72 84 26 texData Lcom/sun/prism/es2/ES2RTTextureData;
73 84 27 texRes Lcom/sun/prism/es2/ES2TextureResource<Lcom/sun/prism/es2/ES2RTTextureData;>;
79 84 28 es2RTT Lcom/sun/prism/es2/ES2RTTexture;
MethodParameters:
Name Flags
context
w
h
wrapMode
msaa
public com.sun.prism.Texture getBackBuffer();
descriptor: ()Lcom/sun/prism/Texture;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/prism/es2/ES2RTTexture;
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 0: aload 0
getfield com.sun.prism.es2.ES2RTTexture.context:Lcom/sun/prism/es2/ES2Context;
aload 0
invokestatic com.sun.prism.es2.ES2Graphics.create:(Lcom/sun/prism/es2/ES2Context;Lcom/sun/prism/RenderTarget;)Lcom/sun/prism/es2/ES2Graphics;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/prism/es2/ES2RTTexture;
public int[] getPixels();
descriptor: ()[I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/prism/es2/ES2RTTexture;
public boolean readPixels(java.nio.Buffer, int, int, int, int);
descriptor: (Ljava/nio/Buffer;IIII)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=11, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
getfield com.sun.prism.es2.ES2RTTexture.context:Lcom/sun/prism/es2/ES2Context;
invokevirtual com.sun.prism.es2.ES2Context.flushVertexBuffer:()V
1: aload 0
getfield com.sun.prism.es2.ES2RTTexture.context:Lcom/sun/prism/es2/ES2Context;
invokevirtual com.sun.prism.es2.ES2Context.getGLContext:()Lcom/sun/prism/es2/GLContext;
astore 6
start local 6 2: aload 6
invokevirtual com.sun.prism.es2.GLContext.getBoundFBO:()I
istore 7
start local 7 3: aload 0
invokevirtual com.sun.prism.es2.ES2RTTexture.getFboID:()I
istore 8
start local 8 4: iload 7
iload 8
if_icmpeq 5
iconst_1
goto 6
StackMap locals: com.sun.prism.es2.GLContext int int
StackMap stack:
5: iconst_0
StackMap locals:
StackMap stack: int
6: istore 9
start local 9 7: iload 9
ifeq 9
8: aload 6
iload 8
invokevirtual com.sun.prism.es2.GLContext.bindFBO:(I)V
9: StackMap locals: int
StackMap stack:
aload 6
aload 1
iload 2
iload 3
iload 4
iload 5
invokevirtual com.sun.prism.es2.GLContext.readPixels:(Ljava/nio/Buffer;IIII)Z
istore 10
start local 10 10: iload 9
ifeq 12
11: aload 6
iload 7
invokevirtual com.sun.prism.es2.GLContext.bindFBO:(I)V
12: StackMap locals: int
StackMap stack:
iload 10
ireturn
end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lcom/sun/prism/es2/ES2RTTexture;
0 13 1 pixels Ljava/nio/Buffer;
0 13 2 x I
0 13 3 y I
0 13 4 width I
0 13 5 height I
2 13 6 glContext Lcom/sun/prism/es2/GLContext;
3 13 7 id I
4 13 8 fboID I
7 13 9 changeBoundFBO Z
10 13 10 result Z
MethodParameters:
Name Flags
pixels
x
y
width
height
public boolean readPixels(java.nio.Buffer);
descriptor: (Ljava/nio/Buffer;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
aload 0
invokevirtual com.sun.prism.es2.ES2RTTexture.getContentX:()I
aload 0
invokevirtual com.sun.prism.es2.ES2RTTexture.getContentY:()I
1: aload 0
invokevirtual com.sun.prism.es2.ES2RTTexture.getContentWidth:()I
aload 0
invokevirtual com.sun.prism.es2.ES2RTTexture.getContentHeight:()I
2: invokevirtual com.sun.prism.es2.ES2RTTexture.readPixels:(Ljava/nio/Buffer;IIII)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/prism/es2/ES2RTTexture;
0 3 1 pixels Ljava/nio/Buffer;
MethodParameters:
Name Flags
pixels
public int getFboID();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.prism.es2.ES2RTTexture.resource:Lcom/sun/prism/impl/ManagedResource;
checkcast com.sun.prism.es2.ES2TextureResource
invokevirtual com.sun.prism.es2.ES2TextureResource.getResource:()Ljava/lang/Object;
checkcast com.sun.prism.es2.ES2RTTextureData
invokevirtual com.sun.prism.es2.ES2RTTextureData.getFboID:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/prism/es2/ES2RTTexture;
public com.sun.glass.ui.Screen getAssociatedScreen();
descriptor: ()Lcom/sun/glass/ui/Screen;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.prism.es2.ES2RTTexture.context:Lcom/sun/prism/es2/ES2Context;
invokevirtual com.sun.prism.es2.ES2Context.getAssociatedScreen:()Lcom/sun/glass/ui/Screen;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/prism/es2/ES2RTTexture;
public void update(com.sun.prism.Image);
descriptor: (Lcom/sun/prism/Image;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: new java.lang.UnsupportedOperationException
dup
ldc "update() not supported for RTTextures"
invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/prism/es2/ES2RTTexture;
0 1 1 img Lcom/sun/prism/Image;
MethodParameters:
Name Flags
img
public void update(com.sun.prism.Image, int, int);
descriptor: (Lcom/sun/prism/Image;II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new java.lang.UnsupportedOperationException
dup
ldc "update() not supported for RTTextures"
invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/prism/es2/ES2RTTexture;
0 1 1 img Lcom/sun/prism/Image;
0 1 2 dstx I
0 1 3 dsty I
MethodParameters:
Name Flags
img
dstx
dsty
public void update(com.sun.prism.Image, int, int, int, int);
descriptor: (Lcom/sun/prism/Image;IIII)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: new java.lang.UnsupportedOperationException
dup
ldc "update() not supported for RTTextures"
invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
athrow
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/prism/es2/ES2RTTexture;
0 1 1 img Lcom/sun/prism/Image;
0 1 2 dstx I
0 1 3 dsty I
0 1 4 w I
0 1 5 h I
MethodParameters:
Name Flags
img
dstx
dsty
w
h
public void update(com.sun.prism.Image, int, int, int, int, boolean);
descriptor: (Lcom/sun/prism/Image;IIIIZ)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=7, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: new java.lang.UnsupportedOperationException
dup
ldc "update() not supported for RTTextures"
invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
athrow
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/prism/es2/ES2RTTexture;
0 1 1 img Lcom/sun/prism/Image;
0 1 2 dstx I
0 1 3 dsty I
0 1 4 w I
0 1 5 h I
0 1 6 skipFlush Z
MethodParameters:
Name Flags
img
dstx
dsty
w
h
skipFlush
public void update(java.nio.Buffer, com.sun.prism.PixelFormat, int, int, int, int, int, int, int, boolean);
descriptor: (Ljava/nio/Buffer;Lcom/sun/prism/PixelFormat;IIIIIIIZ)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=11, args_size=11
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 start local 9 start local 10 0: new java.lang.UnsupportedOperationException
dup
ldc "update() not supported for RTTextures"
invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
athrow
end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/prism/es2/ES2RTTexture;
0 1 1 pixels Ljava/nio/Buffer;
0 1 2 format Lcom/sun/prism/PixelFormat;
0 1 3 dstx I
0 1 4 dsty I
0 1 5 srcx I
0 1 6 srcy I
0 1 7 srcw I
0 1 8 srch I
0 1 9 srcscan I
0 1 10 skipFlush Z
MethodParameters:
Name Flags
pixels
format
dstx
dsty
srcx
srcy
srcw
srch
srcscan
skipFlush
public boolean isOpaque();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.prism.es2.ES2RTTexture.opaque:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/prism/es2/ES2RTTexture;
public void setOpaque(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield com.sun.prism.es2.ES2RTTexture.opaque:Z
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/prism/es2/ES2RTTexture;
0 2 1 opaque Z
MethodParameters:
Name Flags
opaque
public boolean isVolatile();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/prism/es2/ES2RTTexture;
public boolean isMSAA();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.prism.es2.ES2RTTexture.resource:Lcom/sun/prism/impl/ManagedResource;
checkcast com.sun.prism.es2.ES2TextureResource
invokevirtual com.sun.prism.es2.ES2TextureResource.getResource:()Ljava/lang/Object;
checkcast com.sun.prism.es2.ES2RTTextureData
invokevirtual com.sun.prism.es2.ES2RTTextureData.getMSAARenderBufferID:()I
ifeq 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/prism/es2/ES2RTTexture;
static int[] $SWITCH_TABLE$com$sun$prism$Texture$WrapMode();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic com.sun.prism.es2.ES2RTTexture.$SWITCH_TABLE$com$sun$prism$Texture$WrapMode:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic com.sun.prism.Texture$WrapMode.values:()[Lcom/sun/prism/Texture$WrapMode;
arraylength
newarray 10
astore 0
2: aload 0
getstatic com.sun.prism.Texture$WrapMode.CLAMP_NOT_NEEDED:Lcom/sun/prism/Texture$WrapMode;
invokevirtual com.sun.prism.Texture$WrapMode.ordinal:()I
iconst_1
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.Texture$WrapMode.CLAMP_TO_EDGE:Lcom/sun/prism/Texture$WrapMode;
invokevirtual com.sun.prism.Texture$WrapMode.ordinal:()I
iconst_3
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic com.sun.prism.Texture$WrapMode.CLAMP_TO_EDGE_SIMULATED:Lcom/sun/prism/Texture$WrapMode;
invokevirtual com.sun.prism.Texture$WrapMode.ordinal:()I
bipush 6
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic com.sun.prism.Texture$WrapMode.CLAMP_TO_ZERO:Lcom/sun/prism/Texture$WrapMode;
invokevirtual com.sun.prism.Texture$WrapMode.ordinal:()I
iconst_2
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
getstatic com.sun.prism.Texture$WrapMode.CLAMP_TO_ZERO_SIMULATED:Lcom/sun/prism/Texture$WrapMode;
invokevirtual com.sun.prism.Texture$WrapMode.ordinal:()I
iconst_5
iastore
15: goto 17
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
16: pop
StackMap locals:
StackMap stack:
17: aload 0
getstatic com.sun.prism.Texture$WrapMode.REPEAT:Lcom/sun/prism/Texture$WrapMode;
invokevirtual com.sun.prism.Texture$WrapMode.ordinal:()I
iconst_4
iastore
18: goto 20
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
19: pop
StackMap locals:
StackMap stack:
20: aload 0
getstatic com.sun.prism.Texture$WrapMode.REPEAT_SIMULATED:Lcom/sun/prism/Texture$WrapMode;
invokevirtual com.sun.prism.Texture$WrapMode.ordinal:()I
bipush 7
iastore
21: goto 23
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
22: pop
StackMap locals:
StackMap stack:
23: aload 0
dup
putstatic com.sun.prism.es2.ES2RTTexture.$SWITCH_TABLE$com$sun$prism$Texture$WrapMode:[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
}
Signature: Lcom/sun/prism/es2/ES2Texture<Lcom/sun/prism/es2/ES2RTTextureData;>;Lcom/sun/prism/es2/ES2RenderTarget;Lcom/sun/prism/RTTexture;Lcom/sun/prism/ReadbackRenderTarget;
SourceFile: "ES2RTTexture.java"
InnerClasses:
public final WrapMode = com.sun.prism.Texture$WrapMode of com.sun.prism.Texture