public abstract class com.sun.prism.impl.BaseResourceFactory implements com.sun.prism.ResourceFactory
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: com.sun.prism.impl.BaseResourceFactory
super_class: java.lang.Object
{
private final java.util.Map<com.sun.prism.Image, com.sun.prism.Texture> clampTexCache;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<Lcom/sun/prism/Image;Lcom/sun/prism/Texture;>;
private final java.util.Map<com.sun.prism.Image, com.sun.prism.Texture> repeatTexCache;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<Lcom/sun/prism/Image;Lcom/sun/prism/Texture;>;
private final java.util.Map<com.sun.prism.Image, com.sun.prism.Texture> mipmapTexCache;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<Lcom/sun/prism/Image;Lcom/sun/prism/Texture;>;
private final java.util.WeakHashMap<com.sun.prism.ResourceFactoryListener, java.lang.Boolean> listenerMap;
descriptor: Ljava/util/WeakHashMap;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/WeakHashMap<Lcom/sun/prism/ResourceFactoryListener;Ljava/lang/Boolean;>;
private com.sun.prism.Texture regionTexture;
descriptor: Lcom/sun/prism/Texture;
flags: (0x0002) ACC_PRIVATE
private com.sun.prism.Texture glyphTexture;
descriptor: Lcom/sun/prism/Texture;
flags: (0x0002) ACC_PRIVATE
private boolean superShaderAllowed;
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
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
new java.util.WeakHashMap
dup
invokespecial java.util.WeakHashMap.<init>:()V
1: new java.util.WeakHashMap
dup
invokespecial java.util.WeakHashMap.<init>:()V
2: new java.util.WeakHashMap
dup
invokespecial java.util.WeakHashMap.<init>:()V
invokespecial com.sun.prism.impl.BaseResourceFactory.<init>:(Ljava/util/Map;Ljava/util/Map;Ljava/util/Map;)V
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/prism/impl/BaseResourceFactory;
public void <init>(java.util.Map<com.sun.prism.Image, com.sun.prism.Texture>, java.util.Map<com.sun.prism.Image, com.sun.prism.Texture>, java.util.Map<com.sun.prism.Image, com.sun.prism.Texture>);
descriptor: (Ljava/util/Map;Ljava/util/Map;Ljava/util/Map;)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: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
2: new java.util.WeakHashMap
dup
invokespecial java.util.WeakHashMap.<init>:()V
putfield com.sun.prism.impl.BaseResourceFactory.listenerMap:Ljava/util/WeakHashMap;
3: aload 0
aload 1
putfield com.sun.prism.impl.BaseResourceFactory.clampTexCache:Ljava/util/Map;
4: aload 0
aload 2
putfield com.sun.prism.impl.BaseResourceFactory.repeatTexCache:Ljava/util/Map;
5: aload 0
aload 3
putfield com.sun.prism.impl.BaseResourceFactory.mipmapTexCache:Ljava/util/Map;
6: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/prism/impl/BaseResourceFactory;
0 7 1 clampTexCache Ljava/util/Map<Lcom/sun/prism/Image;Lcom/sun/prism/Texture;>;
0 7 2 repeatTexCache Ljava/util/Map<Lcom/sun/prism/Image;Lcom/sun/prism/Texture;>;
0 7 3 mipmapTexCache Ljava/util/Map<Lcom/sun/prism/Image;Lcom/sun/prism/Texture;>;
Signature: (Ljava/util/Map<Lcom/sun/prism/Image;Lcom/sun/prism/Texture;>;Ljava/util/Map<Lcom/sun/prism/Image;Lcom/sun/prism/Texture;>;Ljava/util/Map<Lcom/sun/prism/Image;Lcom/sun/prism/Texture;>;)V
MethodParameters:
Name Flags
clampTexCache
repeatTexCache
mipmapTexCache
public void addFactoryListener(com.sun.prism.ResourceFactoryListener);
descriptor: (Lcom/sun/prism/ResourceFactoryListener;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.prism.impl.BaseResourceFactory.listenerMap:Ljava/util/WeakHashMap;
aload 1
getstatic java.lang.Boolean.TRUE:Ljava/lang/Boolean;
invokevirtual java.util.WeakHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/prism/impl/BaseResourceFactory;
0 2 1 l Lcom/sun/prism/ResourceFactoryListener;
MethodParameters:
Name Flags
l
public void removeFactoryListener(com.sun.prism.ResourceFactoryListener);
descriptor: (Lcom/sun/prism/ResourceFactoryListener;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.prism.impl.BaseResourceFactory.listenerMap:Ljava/util/WeakHashMap;
aload 1
invokevirtual java.util.WeakHashMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/prism/impl/BaseResourceFactory;
0 2 1 l Lcom/sun/prism/ResourceFactoryListener;
MethodParameters:
Name Flags
l
public boolean isDeviceReady();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/prism/impl/BaseResourceFactory;
protected void clearTextureCache();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
aload 0
getfield com.sun.prism.impl.BaseResourceFactory.clampTexCache:Ljava/util/Map;
invokevirtual com.sun.prism.impl.BaseResourceFactory.clearTextureCache:(Ljava/util/Map;)V
1: aload 0
aload 0
getfield com.sun.prism.impl.BaseResourceFactory.repeatTexCache:Ljava/util/Map;
invokevirtual com.sun.prism.impl.BaseResourceFactory.clearTextureCache:(Ljava/util/Map;)V
2: aload 0
aload 0
getfield com.sun.prism.impl.BaseResourceFactory.mipmapTexCache:Ljava/util/Map;
invokevirtual com.sun.prism.impl.BaseResourceFactory.clearTextureCache:(Ljava/util/Map;)V
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/prism/impl/BaseResourceFactory;
protected void clearTextureCache(java.util.Map<com.sun.prism.Image, com.sun.prism.Texture>);
descriptor: (Ljava/util/Map;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=5, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface java.util.Map.values:()Ljava/util/Collection;
astore 2
start local 2 1: aload 2
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 4
goto 4
StackMap locals: com.sun.prism.impl.BaseResourceFactory java.util.Map java.util.Collection top java.util.Iterator
StackMap stack:
2: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.prism.Texture
astore 3
start local 3 3: aload 3
invokeinterface com.sun.prism.Texture.dispose:()V
end local 3 4: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
5: aload 1
invokeinterface java.util.Map.clear:()V
6: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/prism/impl/BaseResourceFactory;
0 7 1 texCache Ljava/util/Map<Lcom/sun/prism/Image;Lcom/sun/prism/Texture;>;
1 7 2 texAll Ljava/util/Collection<Lcom/sun/prism/Texture;>;
3 4 3 i Lcom/sun/prism/Texture;
Signature: (Ljava/util/Map<Lcom/sun/prism/Image;Lcom/sun/prism/Texture;>;)V
MethodParameters:
Name Flags
texCache
protected com.sun.prism.ResourceFactoryListener[] getFactoryListeners();
descriptor: ()[Lcom/sun/prism/ResourceFactoryListener;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.prism.impl.BaseResourceFactory.listenerMap:Ljava/util/WeakHashMap;
invokevirtual java.util.WeakHashMap.keySet:()Ljava/util/Set;
iconst_0
anewarray com.sun.prism.ResourceFactoryListener
invokeinterface java.util.Set.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast com.sun.prism.ResourceFactoryListener[]
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/prism/impl/BaseResourceFactory;
protected void notifyReset();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=6, args_size=1
start local 0 0: aload 0
getfield com.sun.prism.impl.BaseResourceFactory.clampTexCache:Ljava/util/Map;
invokeinterface java.util.Map.clear:()V
1: aload 0
getfield com.sun.prism.impl.BaseResourceFactory.repeatTexCache:Ljava/util/Map;
invokeinterface java.util.Map.clear:()V
2: aload 0
getfield com.sun.prism.impl.BaseResourceFactory.mipmapTexCache:Ljava/util/Map;
invokeinterface java.util.Map.clear:()V
3: aload 0
invokevirtual com.sun.prism.impl.BaseResourceFactory.getFactoryListeners:()[Lcom/sun/prism/ResourceFactoryListener;
astore 1
start local 1 4: aload 1
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 9
StackMap locals: com.sun.prism.impl.BaseResourceFactory com.sun.prism.ResourceFactoryListener[] top int int com.sun.prism.ResourceFactoryListener[]
StackMap stack:
5: aload 5
iload 3
aaload
astore 2
start local 2 6: aload 2
ifnull 8
7: aload 2
invokeinterface com.sun.prism.ResourceFactoryListener.factoryReset:()V
end local 2 8: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
9: iload 3
iload 4
if_icmplt 5
10: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/sun/prism/impl/BaseResourceFactory;
4 11 1 notifyList [Lcom/sun/prism/ResourceFactoryListener;
6 8 2 listener Lcom/sun/prism/ResourceFactoryListener;
protected void notifyReleased();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=6, args_size=1
start local 0 0: aload 0
getfield com.sun.prism.impl.BaseResourceFactory.clampTexCache:Ljava/util/Map;
invokeinterface java.util.Map.clear:()V
1: aload 0
getfield com.sun.prism.impl.BaseResourceFactory.repeatTexCache:Ljava/util/Map;
invokeinterface java.util.Map.clear:()V
2: aload 0
getfield com.sun.prism.impl.BaseResourceFactory.mipmapTexCache:Ljava/util/Map;
invokeinterface java.util.Map.clear:()V
3: aload 0
invokevirtual com.sun.prism.impl.BaseResourceFactory.getFactoryListeners:()[Lcom/sun/prism/ResourceFactoryListener;
astore 1
start local 1 4: aload 1
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 9
StackMap locals: com.sun.prism.impl.BaseResourceFactory com.sun.prism.ResourceFactoryListener[] top int int com.sun.prism.ResourceFactoryListener[]
StackMap stack:
5: aload 5
iload 3
aaload
astore 2
start local 2 6: aload 2
ifnull 8
7: aload 2
invokeinterface com.sun.prism.ResourceFactoryListener.factoryReleased:()V
end local 2 8: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
9: iload 3
iload 4
if_icmplt 5
10: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/sun/prism/impl/BaseResourceFactory;
4 11 1 notifyList [Lcom/sun/prism/ResourceFactoryListener;
6 8 2 listener Lcom/sun/prism/ResourceFactoryListener;
static long sizeWithMipMap(int, int, com.sun.prism.PixelFormat);
descriptor: (IILcom/sun/prism/PixelFormat;)J
flags: (0x0008) ACC_STATIC
Code:
stack=6, locals=6, args_size=3
start local 0 start local 1 start local 2 0: lconst_0
lstore 3
start local 3 1: aload 2
invokevirtual com.sun.prism.PixelFormat.getBytesPerPixelUnit:()I
istore 5
start local 5 2: goto 6
3: StackMap locals: long int
StackMap stack:
lload 3
iload 0
i2l
iload 1
i2l
lmul
ladd
lstore 3
4: iload 0
iconst_1
iadd
iconst_1
ishr
istore 0
5: iload 1
iconst_1
iadd
iconst_1
ishr
istore 1
6: StackMap locals:
StackMap stack:
iload 0
iconst_1
if_icmple 7
iload 1
iconst_1
if_icmpgt 3
7: StackMap locals:
StackMap stack:
lload 3
lconst_1
ladd
lstore 3
8: lload 3
iload 5
i2l
lmul
lreturn
end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 w I
0 9 1 h I
0 9 2 format Lcom/sun/prism/PixelFormat;
1 9 3 size J
2 9 5 bytesPerPixel I
MethodParameters:
Name Flags
w
h
format
public com.sun.prism.Texture getCachedTexture(com.sun.prism.Image, com.sun.prism.Texture$WrapMode);
descriptor: (Lcom/sun/prism/Image;Lcom/sun/prism/Texture$WrapMode;)Lcom/sun/prism/Texture;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
iconst_0
invokevirtual com.sun.prism.impl.BaseResourceFactory.getCachedTexture:(Lcom/sun/prism/Image;Lcom/sun/prism/Texture$WrapMode;Z)Lcom/sun/prism/Texture;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/prism/impl/BaseResourceFactory;
0 1 1 image Lcom/sun/prism/Image;
0 1 2 wrapMode Lcom/sun/prism/Texture$WrapMode;
MethodParameters:
Name Flags
image
wrapMode
public com.sun.prism.Texture getCachedTexture(com.sun.prism.Image, com.sun.prism.Texture$WrapMode, boolean);
descriptor: (Lcom/sun/prism/Image;Lcom/sun/prism/Texture$WrapMode;Z)Lcom/sun/prism/Texture;
flags: (0x0001) ACC_PUBLIC
Code:
stack=11, locals=12, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
ifnonnull 2
1: new java.lang.IllegalArgumentException
dup
ldc "Image must be non-null"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 2
getstatic com.sun.prism.Texture$WrapMode.CLAMP_TO_EDGE:Lcom/sun/prism/Texture$WrapMode;
if_acmpne 9
3: iload 3
ifeq 7
4: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Mipmap not supported with CLAMP mode: useMipmap = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
5: iload 3
invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
ldc ", wrapMode = "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
6: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
7: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.prism.impl.BaseResourceFactory.clampTexCache:Ljava/util/Map;
astore 4
start local 4 8: goto 15
end local 4 StackMap locals:
StackMap stack:
9: aload 2
getstatic com.sun.prism.Texture$WrapMode.REPEAT:Lcom/sun/prism/Texture$WrapMode;
if_acmpne 14
10: iload 3
ifeq 11
aload 0
getfield com.sun.prism.impl.BaseResourceFactory.mipmapTexCache:Ljava/util/Map;
goto 12
StackMap locals:
StackMap stack:
11: aload 0
getfield com.sun.prism.impl.BaseResourceFactory.repeatTexCache:Ljava/util/Map;
StackMap locals:
StackMap stack: java.util.Map
12: astore 4
start local 4 13: goto 15
end local 4 14: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "no caching for "
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 15: StackMap locals: java.util.Map
StackMap stack:
aload 4
aload 1
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.sun.prism.Texture
astore 5
start local 5 16: aload 5
ifnull 21
17: aload 5
invokeinterface com.sun.prism.Texture.lock:()V
18: aload 5
invokeinterface com.sun.prism.Texture.isSurfaceLost:()Z
ifeq 21
19: aload 4
aload 1
invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
20: aconst_null
astore 5
21: StackMap locals: com.sun.prism.Texture
StackMap stack:
iload 3
ifne 35
aload 5
ifnonnull 35
22: aload 2
getstatic com.sun.prism.Texture$WrapMode.REPEAT:Lcom/sun/prism/Texture$WrapMode;
if_acmpne 24
23: aload 0
getfield com.sun.prism.impl.BaseResourceFactory.clampTexCache:Ljava/util/Map;
goto 25
24: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.prism.impl.BaseResourceFactory.repeatTexCache:Ljava/util/Map;
StackMap locals:
StackMap stack: java.util.Map
25: aload 1
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.sun.prism.Texture
26: astore 6
start local 6 27: aload 6
ifnull 35
28: aload 6
invokeinterface com.sun.prism.Texture.lock:()V
29: aload 6
invokeinterface com.sun.prism.Texture.isSurfaceLost:()Z
ifne 34
30: aload 6
aload 2
invokeinterface com.sun.prism.Texture.getSharedTexture:(Lcom/sun/prism/Texture$WrapMode;)Lcom/sun/prism/Texture;
astore 5
31: aload 5
ifnull 34
32: aload 5
invokeinterface com.sun.prism.Texture.contentsUseful:()V
33: aload 4
aload 1
aload 5
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
34: StackMap locals: com.sun.prism.Texture
StackMap stack:
aload 6
invokeinterface com.sun.prism.Texture.unlock:()V
end local 6 35: StackMap locals:
StackMap stack:
aload 1
invokevirtual com.sun.prism.Image.getSerial:()Lcom/sun/prism/Image$Serial;
invokevirtual com.sun.prism.Image$Serial.getIdRect:()Ljavafx/util/Pair;
astore 6
start local 6 36: aload 5
ifnonnull 50
37: aload 1
invokevirtual com.sun.prism.Image.getWidth:()I
istore 7
start local 7 38: aload 1
invokevirtual com.sun.prism.Image.getHeight:()I
istore 8
start local 8 39: aload 0
invokevirtual com.sun.prism.impl.BaseResourceFactory.getTextureResourcePool:()Lcom/sun/prism/impl/TextureResourcePool;
astore 9
start local 9 40: iload 3
ifeq 41
iload 7
iload 8
aload 1
invokevirtual com.sun.prism.Image.getPixelFormat:()Lcom/sun/prism/PixelFormat;
invokestatic com.sun.prism.impl.BaseResourceFactory.sizeWithMipMap:(IILcom/sun/prism/PixelFormat;)J
goto 42
41: StackMap locals: com.sun.prism.impl.BaseResourceFactory com.sun.prism.Image com.sun.prism.Texture$WrapMode int java.util.Map com.sun.prism.Texture javafx.util.Pair int int com.sun.prism.impl.TextureResourcePool
StackMap stack:
aload 9
iload 7
iload 8
aload 1
invokevirtual com.sun.prism.Image.getPixelFormat:()Lcom/sun/prism/PixelFormat;
invokeinterface com.sun.prism.impl.TextureResourcePool.estimateTextureSize:(IILcom/sun/prism/PixelFormat;)J
42: StackMap locals:
StackMap stack: long
lstore 10
start local 10 43: aload 9
lload 10
invokeinterface com.sun.prism.impl.TextureResourcePool.prepareForAllocation:(J)Z
ifne 45
44: aconst_null
areturn
45: StackMap locals: long
StackMap stack:
aload 0
aload 1
getstatic com.sun.prism.Texture$Usage.DEFAULT:Lcom/sun/prism/Texture$Usage;
aload 2
iload 3
invokevirtual com.sun.prism.impl.BaseResourceFactory.createTexture:(Lcom/sun/prism/Image;Lcom/sun/prism/Texture$Usage;Lcom/sun/prism/Texture$WrapMode;Z)Lcom/sun/prism/Texture;
astore 5
46: aload 5
ifnull 61
47: aload 5
aload 6
invokevirtual javafx.util.Pair.getKey:()Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
invokeinterface com.sun.prism.Texture.setLastImageSerial:(I)V
48: aload 4
aload 1
aload 5
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 10 end local 9 end local 8 end local 7 49: goto 61
StackMap locals: com.sun.prism.impl.BaseResourceFactory com.sun.prism.Image com.sun.prism.Texture$WrapMode int java.util.Map com.sun.prism.Texture javafx.util.Pair
StackMap stack:
50: aload 5
invokeinterface com.sun.prism.Texture.getLastImageSerial:()I
aload 6
invokevirtual javafx.util.Pair.getKey:()Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
if_icmpeq 61
51: aload 6
invokevirtual javafx.util.Pair.getKey:()Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
aload 5
invokeinterface com.sun.prism.Texture.getLastImageSerial:()I
isub
iconst_1
if_icmpne 59
aload 6
invokevirtual javafx.util.Pair.getValue:()Ljava/lang/Object;
ifnull 59
52: aload 6
invokevirtual javafx.util.Pair.getValue:()Ljava/lang/Object;
checkcast com.sun.javafx.geom.Rectangle
astore 7
start local 7 53: aload 5
aload 1
invokevirtual com.sun.prism.Image.getPixelBuffer:()Ljava/nio/Buffer;
aload 1
invokevirtual com.sun.prism.Image.getPixelFormat:()Lcom/sun/prism/PixelFormat;
54: aload 7
getfield com.sun.javafx.geom.Rectangle.x:I
aload 7
getfield com.sun.javafx.geom.Rectangle.y:I
aload 7
getfield com.sun.javafx.geom.Rectangle.x:I
aload 7
getfield com.sun.javafx.geom.Rectangle.y:I
55: aload 7
getfield com.sun.javafx.geom.Rectangle.width:I
aload 7
getfield com.sun.javafx.geom.Rectangle.height:I
56: aload 1
invokevirtual com.sun.prism.Image.getScanlineStride:()I
iconst_0
57: invokeinterface com.sun.prism.Texture.update:(Ljava/nio/Buffer;Lcom/sun/prism/PixelFormat;IIIIIIIZ)V
end local 7 58: goto 60
59: StackMap locals:
StackMap stack:
aload 5
aload 1
iconst_0
iconst_0
aload 1
invokevirtual com.sun.prism.Image.getWidth:()I
aload 1
invokevirtual com.sun.prism.Image.getHeight:()I
iconst_0
invokeinterface com.sun.prism.Texture.update:(Lcom/sun/prism/Image;IIIIZ)V
60: StackMap locals:
StackMap stack:
aload 5
aload 6
invokevirtual javafx.util.Pair.getKey:()Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
invokeinterface com.sun.prism.Texture.setLastImageSerial:(I)V
61: StackMap locals:
StackMap stack:
aload 5
areturn
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 62 0 this Lcom/sun/prism/impl/BaseResourceFactory;
0 62 1 image Lcom/sun/prism/Image;
0 62 2 wrapMode Lcom/sun/prism/Texture$WrapMode;
0 62 3 useMipmap Z
8 9 4 texCache Ljava/util/Map<Lcom/sun/prism/Image;Lcom/sun/prism/Texture;>;
13 14 4 texCache Ljava/util/Map<Lcom/sun/prism/Image;Lcom/sun/prism/Texture;>;
15 62 4 texCache Ljava/util/Map<Lcom/sun/prism/Image;Lcom/sun/prism/Texture;>;
16 62 5 tex Lcom/sun/prism/Texture;
27 35 6 othertex Lcom/sun/prism/Texture;
36 62 6 idRect Ljavafx/util/Pair<Ljava/lang/Integer;Lcom/sun/javafx/geom/Rectangle;>;
38 49 7 w I
39 49 8 h I
40 49 9 pool Lcom/sun/prism/impl/TextureResourcePool;
43 49 10 size J
53 58 7 dirtyRect Lcom/sun/javafx/geom/Rectangle;
MethodParameters:
Name Flags
image
wrapMode
useMipmap
public com.sun.prism.Texture createTexture(com.sun.prism.Image, com.sun.prism.Texture$Usage, com.sun.prism.Texture$WrapMode);
descriptor: (Lcom/sun/prism/Image;Lcom/sun/prism/Texture$Usage;Lcom/sun/prism/Texture$WrapMode;)Lcom/sun/prism/Texture;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
aload 2
aload 3
iconst_0
invokevirtual com.sun.prism.impl.BaseResourceFactory.createTexture:(Lcom/sun/prism/Image;Lcom/sun/prism/Texture$Usage;Lcom/sun/prism/Texture$WrapMode;Z)Lcom/sun/prism/Texture;
areturn
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/impl/BaseResourceFactory;
0 1 1 image Lcom/sun/prism/Image;
0 1 2 usageHint Lcom/sun/prism/Texture$Usage;
0 1 3 wrapMode Lcom/sun/prism/Texture$WrapMode;
MethodParameters:
Name Flags
image
usageHint
wrapMode
public com.sun.prism.Texture createTexture(com.sun.prism.Image, com.sun.prism.Texture$Usage, com.sun.prism.Texture$WrapMode, boolean);
descriptor: (Lcom/sun/prism/Image;Lcom/sun/prism/Texture$Usage;Lcom/sun/prism/Texture$WrapMode;Z)Lcom/sun/prism/Texture;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 1
invokevirtual com.sun.prism.Image.getPixelFormat:()Lcom/sun/prism/PixelFormat;
astore 5
start local 5 1: aload 1
invokevirtual com.sun.prism.Image.getWidth:()I
istore 6
start local 6 2: aload 1
invokevirtual com.sun.prism.Image.getHeight:()I
istore 7
start local 7 3: aload 0
aload 5
aload 2
aload 3
iload 6
iload 7
iload 4
invokevirtual com.sun.prism.impl.BaseResourceFactory.createTexture:(Lcom/sun/prism/PixelFormat;Lcom/sun/prism/Texture$Usage;Lcom/sun/prism/Texture$WrapMode;IIZ)Lcom/sun/prism/Texture;
astore 8
start local 8 4: aload 8
ifnull 7
5: aload 8
aload 1
iconst_0
iconst_0
iload 6
iload 7
iconst_1
invokeinterface com.sun.prism.Texture.update:(Lcom/sun/prism/Image;IIIIZ)V
6: aload 8
invokeinterface com.sun.prism.Texture.contentsUseful:()V
7: StackMap locals: com.sun.prism.impl.BaseResourceFactory com.sun.prism.Image com.sun.prism.Texture$Usage com.sun.prism.Texture$WrapMode int com.sun.prism.PixelFormat int int com.sun.prism.Texture
StackMap stack:
aload 8
areturn
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 8 0 this Lcom/sun/prism/impl/BaseResourceFactory;
0 8 1 image Lcom/sun/prism/Image;
0 8 2 usageHint Lcom/sun/prism/Texture$Usage;
0 8 3 wrapMode Lcom/sun/prism/Texture$WrapMode;
0 8 4 useMipmap Z
1 8 5 format Lcom/sun/prism/PixelFormat;
2 8 6 w I
3 8 7 h I
4 8 8 tex Lcom/sun/prism/Texture;
MethodParameters:
Name Flags
image
usageHint
wrapMode
useMipmap
public com.sun.prism.Texture createMaskTexture(int, int, com.sun.prism.Texture$WrapMode);
descriptor: (IILcom/sun/prism/Texture$WrapMode;)Lcom/sun/prism/Texture;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getstatic com.sun.prism.PixelFormat.BYTE_ALPHA:Lcom/sun/prism/PixelFormat;
1: getstatic com.sun.prism.Texture$Usage.DEFAULT:Lcom/sun/prism/Texture$Usage;
aload 3
2: iload 1
iload 2
3: invokevirtual com.sun.prism.impl.BaseResourceFactory.createTexture:(Lcom/sun/prism/PixelFormat;Lcom/sun/prism/Texture$Usage;Lcom/sun/prism/Texture$WrapMode;II)Lcom/sun/prism/Texture;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/prism/impl/BaseResourceFactory;
0 4 1 width I
0 4 2 height I
0 4 3 wrapMode Lcom/sun/prism/Texture$WrapMode;
MethodParameters:
Name Flags
width
height
wrapMode
public com.sun.prism.Texture createFloatTexture(int, int);
descriptor: (II)Lcom/sun/prism/Texture;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getstatic com.sun.prism.PixelFormat.FLOAT_XYZW:Lcom/sun/prism/PixelFormat;
1: getstatic com.sun.prism.Texture$Usage.DEFAULT:Lcom/sun/prism/Texture$Usage;
getstatic com.sun.prism.Texture$WrapMode.CLAMP_TO_ZERO:Lcom/sun/prism/Texture$WrapMode;
2: iload 1
iload 2
3: invokevirtual com.sun.prism.impl.BaseResourceFactory.createTexture:(Lcom/sun/prism/PixelFormat;Lcom/sun/prism/Texture$Usage;Lcom/sun/prism/Texture$WrapMode;II)Lcom/sun/prism/Texture;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/prism/impl/BaseResourceFactory;
0 4 1 width I
0 4 2 height I
MethodParameters:
Name Flags
width
height
public void setRegionTexture(com.sun.prism.Texture);
descriptor: (Lcom/sun/prism/Texture;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield com.sun.prism.impl.BaseResourceFactory.regionTexture:Lcom/sun/prism/Texture;
1: aload 0
getstatic com.sun.prism.impl.PrismSettings.superShader:Z
ifeq 4
2: aload 0
getfield com.sun.prism.impl.BaseResourceFactory.regionTexture:Lcom/sun/prism/Texture;
ifnull 4
3: aload 0
getfield com.sun.prism.impl.BaseResourceFactory.glyphTexture:Lcom/sun/prism/Texture;
ifnull 4
iconst_1
goto 5
StackMap locals:
StackMap stack: com.sun.prism.impl.BaseResourceFactory
4: iconst_0
5: StackMap locals: com.sun.prism.impl.BaseResourceFactory com.sun.prism.Texture
StackMap stack: com.sun.prism.impl.BaseResourceFactory int
putfield com.sun.prism.impl.BaseResourceFactory.superShaderAllowed:Z
6: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/prism/impl/BaseResourceFactory;
0 7 1 texture Lcom/sun/prism/Texture;
MethodParameters:
Name Flags
texture
public com.sun.prism.Texture getRegionTexture();
descriptor: ()Lcom/sun/prism/Texture;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.prism.impl.BaseResourceFactory.regionTexture:Lcom/sun/prism/Texture;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/prism/impl/BaseResourceFactory;
public void setGlyphTexture(com.sun.prism.Texture);
descriptor: (Lcom/sun/prism/Texture;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield com.sun.prism.impl.BaseResourceFactory.glyphTexture:Lcom/sun/prism/Texture;
1: aload 0
getstatic com.sun.prism.impl.PrismSettings.superShader:Z
ifeq 4
2: aload 0
getfield com.sun.prism.impl.BaseResourceFactory.regionTexture:Lcom/sun/prism/Texture;
ifnull 4
3: aload 0
getfield com.sun.prism.impl.BaseResourceFactory.glyphTexture:Lcom/sun/prism/Texture;
ifnull 4
iconst_1
goto 5
StackMap locals:
StackMap stack: com.sun.prism.impl.BaseResourceFactory
4: iconst_0
5: StackMap locals: com.sun.prism.impl.BaseResourceFactory com.sun.prism.Texture
StackMap stack: com.sun.prism.impl.BaseResourceFactory int
putfield com.sun.prism.impl.BaseResourceFactory.superShaderAllowed:Z
6: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/prism/impl/BaseResourceFactory;
0 7 1 texture Lcom/sun/prism/Texture;
MethodParameters:
Name Flags
texture
public com.sun.prism.Texture getGlyphTexture();
descriptor: ()Lcom/sun/prism/Texture;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.prism.impl.BaseResourceFactory.glyphTexture:Lcom/sun/prism/Texture;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/prism/impl/BaseResourceFactory;
public boolean isSuperShaderAllowed();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.prism.impl.BaseResourceFactory.superShaderAllowed:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/prism/impl/BaseResourceFactory;
protected boolean canClampToZero();
descriptor: ()Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/prism/impl/BaseResourceFactory;
protected boolean canClampToEdge();
descriptor: ()Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/prism/impl/BaseResourceFactory;
protected boolean canRepeat();
descriptor: ()Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/prism/impl/BaseResourceFactory;
public boolean isWrapModeSupported(com.sun.prism.Texture$WrapMode);
descriptor: (Lcom/sun/prism/Texture$WrapMode;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: invokestatic com.sun.prism.impl.BaseResourceFactory.$SWITCH_TABLE$com$sun$prism$Texture$WrapMode:()[I
aload 1
invokevirtual com.sun.prism.Texture$WrapMode.ordinal:()I
iaload
tableswitch { // 1 - 7
1: 1
2: 4
3: 2
4: 3
5: 5
6: 5
7: 5
default: 6
}
1: StackMap locals:
StackMap stack:
iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.prism.impl.BaseResourceFactory.canClampToEdge:()Z
ireturn
3: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.prism.impl.BaseResourceFactory.canRepeat:()Z
ireturn
4: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.prism.impl.BaseResourceFactory.canClampToZero:()Z
ireturn
5: StackMap locals:
StackMap stack:
new java.lang.InternalError
dup
ldc "Cannot test support for simulated wrap modes"
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
6: StackMap locals:
StackMap stack:
new java.lang.InternalError
dup
new java.lang.StringBuilder
dup
ldc "Unrecognized wrap mode: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/prism/impl/BaseResourceFactory;
0 7 1 mode Lcom/sun/prism/Texture$WrapMode;
MethodParameters:
Name Flags
mode
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.impl.BaseResourceFactory.$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.impl.BaseResourceFactory.$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
}
SourceFile: "BaseResourceFactory.java"
InnerClasses:
public Serial = com.sun.prism.Image$Serial of com.sun.prism.Image
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