public abstract class sun.awt.image.VolatileSurfaceManager extends sun.awt.image.SurfaceManager implements sun.awt.DisplayChangedListener
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: sun.awt.image.VolatileSurfaceManager
super_class: sun.awt.image.SurfaceManager
{
protected sun.awt.image.SunVolatileImage vImg;
descriptor: Lsun/awt/image/SunVolatileImage;
flags: (0x0004) ACC_PROTECTED
protected sun.java2d.SurfaceData sdAccel;
descriptor: Lsun/java2d/SurfaceData;
flags: (0x0004) ACC_PROTECTED
protected sun.java2d.SurfaceData sdBackup;
descriptor: Lsun/java2d/SurfaceData;
flags: (0x0004) ACC_PROTECTED
protected sun.java2d.SurfaceData sdCurrent;
descriptor: Lsun/java2d/SurfaceData;
flags: (0x0004) ACC_PROTECTED
protected sun.java2d.SurfaceData sdPrevious;
descriptor: Lsun/java2d/SurfaceData;
flags: (0x0004) ACC_PROTECTED
protected boolean lostSurface;
descriptor: Z
flags: (0x0004) ACC_PROTECTED
protected java.lang.Object context;
descriptor: Ljava/lang/Object;
flags: (0x0004) ACC_PROTECTED
protected void <init>(sun.awt.image.SunVolatileImage, java.lang.Object);
descriptor: (Lsun/awt/image/SunVolatileImage;Ljava/lang/Object;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial sun.awt.image.SurfaceManager.<init>:()V
1: aload 0
aload 1
putfield sun.awt.image.VolatileSurfaceManager.vImg:Lsun/awt/image/SunVolatileImage;
2: aload 0
aload 2
putfield sun.awt.image.VolatileSurfaceManager.context:Ljava/lang/Object;
3: invokestatic java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment:()Ljava/awt/GraphicsEnvironment;
4: astore 3
start local 3 5: aload 3
instanceof sun.java2d.SunGraphicsEnvironment
ifeq 7
6: aload 3
checkcast sun.java2d.SunGraphicsEnvironment
aload 0
invokevirtual sun.java2d.SunGraphicsEnvironment.addDisplayChangedListener:(Lsun/awt/DisplayChangedListener;)V
7: StackMap locals: sun.awt.image.VolatileSurfaceManager sun.awt.image.SunVolatileImage java.lang.Object java.awt.GraphicsEnvironment
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lsun/awt/image/VolatileSurfaceManager;
0 8 1 vImg Lsun/awt/image/SunVolatileImage;
0 8 2 context Ljava/lang/Object;
5 8 3 ge Ljava/awt/GraphicsEnvironment;
MethodParameters:
Name Flags
vImg
context
public void initialize();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual sun.awt.image.VolatileSurfaceManager.isAccelerationEnabled:()Z
ifeq 4
1: aload 0
aload 0
invokevirtual sun.awt.image.VolatileSurfaceManager.initAcceleratedSurface:()Lsun/java2d/SurfaceData;
putfield sun.awt.image.VolatileSurfaceManager.sdAccel:Lsun/java2d/SurfaceData;
2: aload 0
getfield sun.awt.image.VolatileSurfaceManager.sdAccel:Lsun/java2d/SurfaceData;
ifnull 4
3: aload 0
aload 0
getfield sun.awt.image.VolatileSurfaceManager.sdAccel:Lsun/java2d/SurfaceData;
putfield sun.awt.image.VolatileSurfaceManager.sdCurrent:Lsun/java2d/SurfaceData;
4: StackMap locals:
StackMap stack:
aload 0
getfield sun.awt.image.VolatileSurfaceManager.sdCurrent:Lsun/java2d/SurfaceData;
ifnonnull 7
5: aload 0
getfield sun.awt.image.VolatileSurfaceManager.vImg:Lsun/awt/image/SunVolatileImage;
invokevirtual sun.awt.image.SunVolatileImage.getForcedAccelSurfaceType:()I
ifne 7
6: aload 0
aload 0
invokevirtual sun.awt.image.VolatileSurfaceManager.getBackupSurface:()Lsun/java2d/SurfaceData;
putfield sun.awt.image.VolatileSurfaceManager.sdCurrent:Lsun/java2d/SurfaceData;
7: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lsun/awt/image/VolatileSurfaceManager;
public sun.java2d.SurfaceData getPrimarySurfaceData();
descriptor: ()Lsun/java2d/SurfaceData;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.awt.image.VolatileSurfaceManager.sdCurrent:Lsun/java2d/SurfaceData;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/awt/image/VolatileSurfaceManager;
protected abstract boolean isAccelerationEnabled();
descriptor: ()Z
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
public int validate(java.awt.GraphicsConfiguration);
descriptor: (Ljava/awt/GraphicsConfiguration;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: iconst_0
istore 2
start local 2 1: aload 0
getfield sun.awt.image.VolatileSurfaceManager.lostSurface:Z
istore 3
start local 3 2: aload 0
iconst_0
putfield sun.awt.image.VolatileSurfaceManager.lostSurface:Z
3: aload 0
invokevirtual sun.awt.image.VolatileSurfaceManager.isAccelerationEnabled:()Z
ifeq 29
4: aload 0
aload 1
invokevirtual sun.awt.image.VolatileSurfaceManager.isConfigValid:(Ljava/awt/GraphicsConfiguration;)Z
ifne 7
5: iconst_2
istore 2
6: goto 33
StackMap locals: int int
StackMap stack:
7: aload 0
getfield sun.awt.image.VolatileSurfaceManager.sdAccel:Lsun/java2d/SurfaceData;
ifnonnull 16
8: aload 0
aload 0
invokevirtual sun.awt.image.VolatileSurfaceManager.initAcceleratedSurface:()Lsun/java2d/SurfaceData;
putfield sun.awt.image.VolatileSurfaceManager.sdAccel:Lsun/java2d/SurfaceData;
9: aload 0
getfield sun.awt.image.VolatileSurfaceManager.sdAccel:Lsun/java2d/SurfaceData;
ifnull 14
10: aload 0
aload 0
getfield sun.awt.image.VolatileSurfaceManager.sdAccel:Lsun/java2d/SurfaceData;
putfield sun.awt.image.VolatileSurfaceManager.sdCurrent:Lsun/java2d/SurfaceData;
11: aload 0
aconst_null
putfield sun.awt.image.VolatileSurfaceManager.sdBackup:Lsun/java2d/SurfaceData;
12: iconst_1
istore 2
13: goto 33
14: StackMap locals:
StackMap stack:
aload 0
aload 0
invokevirtual sun.awt.image.VolatileSurfaceManager.getBackupSurface:()Lsun/java2d/SurfaceData;
putfield sun.awt.image.VolatileSurfaceManager.sdCurrent:Lsun/java2d/SurfaceData;
15: goto 33
StackMap locals:
StackMap stack:
16: aload 0
getfield sun.awt.image.VolatileSurfaceManager.sdAccel:Lsun/java2d/SurfaceData;
invokevirtual sun.java2d.SurfaceData.isSurfaceLost:()Z
ifeq 26
17: aload 0
invokevirtual sun.awt.image.VolatileSurfaceManager.restoreAcceleratedSurface:()V
18: aload 0
aload 0
getfield sun.awt.image.VolatileSurfaceManager.sdAccel:Lsun/java2d/SurfaceData;
putfield sun.awt.image.VolatileSurfaceManager.sdCurrent:Lsun/java2d/SurfaceData;
19: aload 0
getfield sun.awt.image.VolatileSurfaceManager.sdAccel:Lsun/java2d/SurfaceData;
iconst_0
invokevirtual sun.java2d.SurfaceData.setSurfaceLost:(Z)V
20: aload 0
aconst_null
putfield sun.awt.image.VolatileSurfaceManager.sdBackup:Lsun/java2d/SurfaceData;
21: iconst_1
istore 2
22: goto 33
StackMap locals:
StackMap stack: sun.java2d.InvalidPipeException
23: pop
24: aload 0
aload 0
invokevirtual sun.awt.image.VolatileSurfaceManager.getBackupSurface:()Lsun/java2d/SurfaceData;
putfield sun.awt.image.VolatileSurfaceManager.sdCurrent:Lsun/java2d/SurfaceData;
25: goto 33
StackMap locals:
StackMap stack:
26: iload 3
ifeq 33
27: iconst_1
istore 2
28: goto 33
StackMap locals:
StackMap stack:
29: aload 0
getfield sun.awt.image.VolatileSurfaceManager.sdAccel:Lsun/java2d/SurfaceData;
ifnull 33
30: aload 0
aload 0
invokevirtual sun.awt.image.VolatileSurfaceManager.getBackupSurface:()Lsun/java2d/SurfaceData;
putfield sun.awt.image.VolatileSurfaceManager.sdCurrent:Lsun/java2d/SurfaceData;
31: aload 0
aconst_null
putfield sun.awt.image.VolatileSurfaceManager.sdAccel:Lsun/java2d/SurfaceData;
32: iconst_1
istore 2
33: StackMap locals:
StackMap stack:
iload 2
iconst_2
if_icmpeq 37
34: aload 0
getfield sun.awt.image.VolatileSurfaceManager.sdCurrent:Lsun/java2d/SurfaceData;
aload 0
getfield sun.awt.image.VolatileSurfaceManager.sdPrevious:Lsun/java2d/SurfaceData;
if_acmpeq 37
35: aload 0
aload 0
getfield sun.awt.image.VolatileSurfaceManager.sdCurrent:Lsun/java2d/SurfaceData;
putfield sun.awt.image.VolatileSurfaceManager.sdPrevious:Lsun/java2d/SurfaceData;
36: iconst_1
istore 2
37: StackMap locals:
StackMap stack:
iload 2
iconst_1
if_icmpne 39
38: aload 0
invokevirtual sun.awt.image.VolatileSurfaceManager.initContents:()V
39: StackMap locals:
StackMap stack:
iload 2
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 40 0 this Lsun/awt/image/VolatileSurfaceManager;
0 40 1 gc Ljava/awt/GraphicsConfiguration;
1 40 2 returnCode I
2 40 3 lostSurfaceTmp Z
Exception table:
from to target type
17 22 23 Class sun.java2d.InvalidPipeException
MethodParameters:
Name Flags
gc
public boolean contentsLost();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.awt.image.VolatileSurfaceManager.lostSurface:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/awt/image/VolatileSurfaceManager;
protected abstract sun.java2d.SurfaceData initAcceleratedSurface();
descriptor: ()Lsun/java2d/SurfaceData;
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
protected sun.java2d.SurfaceData getBackupSurface();
descriptor: ()Lsun/java2d/SurfaceData;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield sun.awt.image.VolatileSurfaceManager.sdBackup:Lsun/java2d/SurfaceData;
ifnonnull 8
1: aload 0
getfield sun.awt.image.VolatileSurfaceManager.vImg:Lsun/awt/image/SunVolatileImage;
invokevirtual sun.awt.image.SunVolatileImage.getBackupImage:()Ljava/awt/image/BufferedImage;
astore 1
start local 1 2: aload 1
3: invokevirtual java.awt.image.BufferedImage.getRaster:()Ljava/awt/image/WritableRaster;
4: invokevirtual java.awt.image.WritableRaster.getDataBuffer:()Ljava/awt/image/DataBuffer;
5: invokestatic sun.awt.image.SunWritableRaster.stealTrackable:(Ljava/awt/image/DataBuffer;)Lsun/java2d/StateTrackableDelegate;
6: invokevirtual sun.java2d.StateTrackableDelegate.setUntrackable:()V
7: aload 0
aload 1
invokestatic sun.awt.image.BufImgSurfaceData.createData:(Ljava/awt/image/BufferedImage;)Lsun/java2d/SurfaceData;
putfield sun.awt.image.VolatileSurfaceManager.sdBackup:Lsun/java2d/SurfaceData;
end local 1 8: StackMap locals:
StackMap stack:
aload 0
getfield sun.awt.image.VolatileSurfaceManager.sdBackup:Lsun/java2d/SurfaceData;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/awt/image/VolatileSurfaceManager;
2 8 1 bImg Ljava/awt/image/BufferedImage;
public void initContents();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
getfield sun.awt.image.VolatileSurfaceManager.sdCurrent:Lsun/java2d/SurfaceData;
ifnull 4
1: aload 0
getfield sun.awt.image.VolatileSurfaceManager.vImg:Lsun/awt/image/SunVolatileImage;
invokevirtual sun.awt.image.SunVolatileImage.createGraphics:()Ljava/awt/Graphics2D;
astore 1
start local 1 2: aload 1
iconst_0
iconst_0
aload 0
getfield sun.awt.image.VolatileSurfaceManager.vImg:Lsun/awt/image/SunVolatileImage;
invokevirtual sun.awt.image.SunVolatileImage.getWidth:()I
aload 0
getfield sun.awt.image.VolatileSurfaceManager.vImg:Lsun/awt/image/SunVolatileImage;
invokevirtual sun.awt.image.SunVolatileImage.getHeight:()I
invokevirtual java.awt.Graphics.clearRect:(IIII)V
3: aload 1
invokevirtual java.awt.Graphics.dispose:()V
end local 1 4: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/awt/image/VolatileSurfaceManager;
2 4 1 g Ljava/awt/Graphics;
public sun.java2d.SurfaceData restoreContents();
descriptor: ()Lsun/java2d/SurfaceData;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual sun.awt.image.VolatileSurfaceManager.getBackupSurface:()Lsun/java2d/SurfaceData;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/awt/image/VolatileSurfaceManager;
public void acceleratedSurfaceLost();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual sun.awt.image.VolatileSurfaceManager.isAccelerationEnabled:()Z
ifeq 2
aload 0
getfield sun.awt.image.VolatileSurfaceManager.sdCurrent:Lsun/java2d/SurfaceData;
aload 0
getfield sun.awt.image.VolatileSurfaceManager.sdAccel:Lsun/java2d/SurfaceData;
if_acmpne 2
1: aload 0
iconst_1
putfield sun.awt.image.VolatileSurfaceManager.lostSurface:Z
2: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/awt/image/VolatileSurfaceManager;
protected void restoreAcceleratedSurface();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=0, locals=1, args_size=1
start local 0 0: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/awt/image/VolatileSurfaceManager;
public void displayChanged();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual sun.awt.image.VolatileSurfaceManager.isAccelerationEnabled:()Z
ifne 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield sun.awt.image.VolatileSurfaceManager.lostSurface:Z
3: aload 0
getfield sun.awt.image.VolatileSurfaceManager.sdAccel:Lsun/java2d/SurfaceData;
ifnull 9
4: aload 0
aconst_null
putfield sun.awt.image.VolatileSurfaceManager.sdBackup:Lsun/java2d/SurfaceData;
5: aload 0
getfield sun.awt.image.VolatileSurfaceManager.sdAccel:Lsun/java2d/SurfaceData;
astore 1
start local 1 6: aload 0
aconst_null
putfield sun.awt.image.VolatileSurfaceManager.sdAccel:Lsun/java2d/SurfaceData;
7: aload 1
invokevirtual sun.java2d.SurfaceData.invalidate:()V
8: aload 0
aload 0
invokevirtual sun.awt.image.VolatileSurfaceManager.getBackupSurface:()Lsun/java2d/SurfaceData;
putfield sun.awt.image.VolatileSurfaceManager.sdCurrent:Lsun/java2d/SurfaceData;
end local 1 9: StackMap locals:
StackMap stack:
aload 0
getfield sun.awt.image.VolatileSurfaceManager.vImg:Lsun/awt/image/SunVolatileImage;
invokevirtual sun.awt.image.SunVolatileImage.updateGraphicsConfig:()V
10: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lsun/awt/image/VolatileSurfaceManager;
6 9 1 oldData Lsun/java2d/SurfaceData;
public void paletteChanged();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_1
putfield sun.awt.image.VolatileSurfaceManager.lostSurface:Z
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/awt/image/VolatileSurfaceManager;
protected boolean isConfigValid(java.awt.GraphicsConfiguration);
descriptor: (Ljava/awt/GraphicsConfiguration;)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnull 3
1: aload 1
invokevirtual java.awt.GraphicsConfiguration.getDevice:()Ljava/awt/GraphicsDevice;
aload 0
getfield sun.awt.image.VolatileSurfaceManager.vImg:Lsun/awt/image/SunVolatileImage;
invokevirtual sun.awt.image.SunVolatileImage.getGraphicsConfig:()Ljava/awt/GraphicsConfiguration;
invokevirtual java.awt.GraphicsConfiguration.getDevice:()Ljava/awt/GraphicsDevice;
if_acmpeq 3
2: iconst_0
ireturn
StackMap locals:
StackMap stack:
3: iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/awt/image/VolatileSurfaceManager;
0 4 1 gc Ljava/awt/GraphicsConfiguration;
MethodParameters:
Name Flags
gc
public java.awt.ImageCapabilities getCapabilities(java.awt.GraphicsConfiguration);
descriptor: (Ljava/awt/GraphicsConfiguration;)Ljava/awt/ImageCapabilities;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual sun.awt.image.VolatileSurfaceManager.isConfigValid:(Ljava/awt/GraphicsConfiguration;)Z
ifeq 5
1: aload 0
invokevirtual sun.awt.image.VolatileSurfaceManager.isAccelerationEnabled:()Z
ifeq 3
2: new sun.awt.image.VolatileSurfaceManager$AcceleratedImageCapabilities
dup
aload 0
invokespecial sun.awt.image.VolatileSurfaceManager$AcceleratedImageCapabilities.<init>:(Lsun/awt/image/VolatileSurfaceManager;)V
goto 4
3: StackMap locals:
StackMap stack:
new java.awt.ImageCapabilities
dup
iconst_0
invokespecial java.awt.ImageCapabilities.<init>:(Z)V
4: StackMap locals:
StackMap stack: java.awt.ImageCapabilities
areturn
5: StackMap locals:
StackMap stack:
aload 0
aload 1
invokespecial sun.awt.image.SurfaceManager.getCapabilities:(Ljava/awt/GraphicsConfiguration;)Ljava/awt/ImageCapabilities;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/awt/image/VolatileSurfaceManager;
0 6 1 gc Ljava/awt/GraphicsConfiguration;
MethodParameters:
Name Flags
gc
public void flush();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
iconst_1
putfield sun.awt.image.VolatileSurfaceManager.lostSurface:Z
1: aload 0
getfield sun.awt.image.VolatileSurfaceManager.sdAccel:Lsun/java2d/SurfaceData;
astore 1
start local 1 2: aload 0
aconst_null
putfield sun.awt.image.VolatileSurfaceManager.sdAccel:Lsun/java2d/SurfaceData;
3: aload 1
ifnull 5
4: aload 1
invokevirtual sun.java2d.SurfaceData.flush:()V
5: StackMap locals: sun.java2d.SurfaceData
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/awt/image/VolatileSurfaceManager;
2 6 1 oldSD Lsun/java2d/SurfaceData;
}
SourceFile: "VolatileSurfaceManager.java"
NestMembers:
sun.awt.image.VolatileSurfaceManager$AcceleratedImageCapabilities
InnerClasses:
private AcceleratedImageCapabilities = sun.awt.image.VolatileSurfaceManager$AcceleratedImageCapabilities of sun.awt.image.VolatileSurfaceManager