public class java.awt.image.ConvolveOp implements java.awt.image.BufferedImageOp, java.awt.image.RasterOp
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: java.awt.image.ConvolveOp
super_class: java.lang.Object
{
java.awt.image.Kernel kernel;
descriptor: Ljava/awt/image/Kernel;
flags: (0x0000)
int edgeHint;
descriptor: I
flags: (0x0000)
java.awt.RenderingHints hints;
descriptor: Ljava/awt/RenderingHints;
flags: (0x0000)
public static final int EDGE_ZERO_FILL;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 0
public static final int EDGE_NO_OP;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
public void <init>(java.awt.image.Kernel, int, java.awt.RenderingHints);
descriptor: (Ljava/awt/image/Kernel;ILjava/awt/RenderingHints;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, 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
aload 1
putfield java.awt.image.ConvolveOp.kernel:Ljava/awt/image/Kernel;
2: aload 0
iload 2
putfield java.awt.image.ConvolveOp.edgeHint:I
3: aload 0
aload 3
putfield java.awt.image.ConvolveOp.hints:Ljava/awt/RenderingHints;
4: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljava/awt/image/ConvolveOp;
0 5 1 kernel Ljava/awt/image/Kernel;
0 5 2 edgeCondition I
0 5 3 hints Ljava/awt/RenderingHints;
MethodParameters:
Name Flags
kernel
edgeCondition
hints
public void <init>(java.awt.image.Kernel);
descriptor: (Ljava/awt/image/Kernel;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield java.awt.image.ConvolveOp.kernel:Ljava/awt/image/Kernel;
2: aload 0
iconst_0
putfield java.awt.image.ConvolveOp.edgeHint:I
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/awt/image/ConvolveOp;
0 4 1 kernel Ljava/awt/image/Kernel;
MethodParameters:
Name Flags
kernel
public int getEdgeCondition();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.awt.image.ConvolveOp.edgeHint:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/awt/image/ConvolveOp;
public final java.awt.image.Kernel getKernel();
descriptor: ()Ljava/awt/image/Kernel;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.awt.image.ConvolveOp.kernel:Ljava/awt/image/Kernel;
invokevirtual java.awt.image.Kernel.clone:()Ljava/lang/Object;
checkcast java.awt.image.Kernel
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/awt/image/ConvolveOp;
public final java.awt.image.BufferedImage filter(java.awt.image.BufferedImage, java.awt.image.BufferedImage);
descriptor: (Ljava/awt/image/BufferedImage;Ljava/awt/image/BufferedImage;)Ljava/awt/image/BufferedImage;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=5, locals=9, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ifnonnull 2
1: new java.lang.NullPointerException
dup
ldc "src image is null"
invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 1
aload 2
if_acmpne 4
3: new java.lang.IllegalArgumentException
dup
ldc "src image cannot be the same as the dst image"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
iconst_0
istore 3
start local 3 5: aload 1
invokevirtual java.awt.image.BufferedImage.getColorModel:()Ljava/awt/image/ColorModel;
astore 4
start local 4 6: aload 2
astore 6
start local 6 7: aload 4
instanceof java.awt.image.IndexColorModel
ifeq 11
8: aload 4
checkcast java.awt.image.IndexColorModel
astore 7
start local 7 9: aload 7
aload 1
invokevirtual java.awt.image.BufferedImage.getRaster:()Ljava/awt/image/WritableRaster;
iconst_0
invokevirtual java.awt.image.IndexColorModel.convertToIntDiscrete:(Ljava/awt/image/Raster;Z)Ljava/awt/image/BufferedImage;
astore 1
10: aload 1
invokevirtual java.awt.image.BufferedImage.getColorModel:()Ljava/awt/image/ColorModel;
astore 4
end local 7 11: StackMap locals: java.awt.image.ConvolveOp java.awt.image.BufferedImage java.awt.image.BufferedImage int java.awt.image.ColorModel top java.awt.image.BufferedImage
StackMap stack:
aload 2
ifnonnull 16
12: aload 0
aload 1
aconst_null
invokevirtual java.awt.image.ConvolveOp.createCompatibleDestImage:(Ljava/awt/image/BufferedImage;Ljava/awt/image/ColorModel;)Ljava/awt/image/BufferedImage;
astore 2
13: aload 4
astore 5
start local 5 14: aload 2
astore 6
15: goto 27
end local 5 16: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.awt.image.BufferedImage.getColorModel:()Ljava/awt/image/ColorModel;
astore 5
start local 5 17: aload 4
invokevirtual java.awt.image.ColorModel.getColorSpace:()Ljava/awt/color/ColorSpace;
invokevirtual java.awt.color.ColorSpace.getType:()I
18: aload 5
invokevirtual java.awt.image.ColorModel.getColorSpace:()Ljava/awt/color/ColorSpace;
invokevirtual java.awt.color.ColorSpace.getType:()I
19: if_icmpeq 24
20: iconst_1
istore 3
21: aload 0
aload 1
aconst_null
invokevirtual java.awt.image.ConvolveOp.createCompatibleDestImage:(Ljava/awt/image/BufferedImage;Ljava/awt/image/ColorModel;)Ljava/awt/image/BufferedImage;
astore 2
22: aload 2
invokevirtual java.awt.image.BufferedImage.getColorModel:()Ljava/awt/image/ColorModel;
astore 5
23: goto 27
24: StackMap locals: java.awt.image.ConvolveOp java.awt.image.BufferedImage java.awt.image.BufferedImage int java.awt.image.ColorModel java.awt.image.ColorModel java.awt.image.BufferedImage
StackMap stack:
aload 5
instanceof java.awt.image.IndexColorModel
ifeq 27
25: aload 0
aload 1
aconst_null
invokevirtual java.awt.image.ConvolveOp.createCompatibleDestImage:(Ljava/awt/image/BufferedImage;Ljava/awt/image/ColorModel;)Ljava/awt/image/BufferedImage;
astore 2
26: aload 2
invokevirtual java.awt.image.BufferedImage.getColorModel:()Ljava/awt/image/ColorModel;
astore 5
27: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokestatic sun.awt.image.ImagingLib.filter:(Ljava/awt/image/BufferedImageOp;Ljava/awt/image/BufferedImage;Ljava/awt/image/BufferedImage;)Ljava/awt/image/BufferedImage;
ifnonnull 29
28: new java.awt.image.ImagingOpException
dup
ldc "Unable to convolve src image"
invokespecial java.awt.image.ImagingOpException.<init>:(Ljava/lang/String;)V
athrow
29: StackMap locals:
StackMap stack:
iload 3
ifeq 33
30: new java.awt.image.ColorConvertOp
dup
aload 0
getfield java.awt.image.ConvolveOp.hints:Ljava/awt/RenderingHints;
invokespecial java.awt.image.ColorConvertOp.<init>:(Ljava/awt/RenderingHints;)V
astore 7
start local 7 31: aload 7
aload 2
aload 6
invokevirtual java.awt.image.ColorConvertOp.filter:(Ljava/awt/image/BufferedImage;Ljava/awt/image/BufferedImage;)Ljava/awt/image/BufferedImage;
pop
end local 7 32: goto 41
33: StackMap locals:
StackMap stack:
aload 6
aload 2
if_acmpeq 41
34: aload 6
invokevirtual java.awt.image.BufferedImage.createGraphics:()Ljava/awt/Graphics2D;
astore 7
start local 7 35: aload 7
aload 2
iconst_0
iconst_0
aconst_null
invokevirtual java.awt.Graphics2D.drawImage:(Ljava/awt/Image;IILjava/awt/image/ImageObserver;)Z
pop
36: goto 40
StackMap locals: java.awt.image.ConvolveOp java.awt.image.BufferedImage java.awt.image.BufferedImage int java.awt.image.ColorModel java.awt.image.ColorModel java.awt.image.BufferedImage java.awt.Graphics2D
StackMap stack: java.lang.Throwable
37: astore 8
38: aload 7
invokevirtual java.awt.Graphics2D.dispose:()V
39: aload 8
athrow
40: StackMap locals:
StackMap stack:
aload 7
invokevirtual java.awt.Graphics2D.dispose:()V
end local 7 41: StackMap locals:
StackMap stack:
aload 6
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 42 0 this Ljava/awt/image/ConvolveOp;
0 42 1 src Ljava/awt/image/BufferedImage;
0 42 2 dst Ljava/awt/image/BufferedImage;
5 42 3 needToConvert Z
6 42 4 srcCM Ljava/awt/image/ColorModel;
14 16 5 dstCM Ljava/awt/image/ColorModel;
17 42 5 dstCM Ljava/awt/image/ColorModel;
7 42 6 origDst Ljava/awt/image/BufferedImage;
9 11 7 icm Ljava/awt/image/IndexColorModel;
31 32 7 ccop Ljava/awt/image/ColorConvertOp;
35 41 7 g Ljava/awt/Graphics2D;
Exception table:
from to target type
35 37 37 any
MethodParameters:
Name Flags
src
dst
public final java.awt.image.WritableRaster filter(java.awt.image.Raster, java.awt.image.WritableRaster);
descriptor: (Ljava/awt/image/Raster;Ljava/awt/image/WritableRaster;)Ljava/awt/image/WritableRaster;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
ifnonnull 3
1: aload 0
aload 1
invokevirtual java.awt.image.ConvolveOp.createCompatibleDestRaster:(Ljava/awt/image/Raster;)Ljava/awt/image/WritableRaster;
astore 2
2: goto 7
3: StackMap locals:
StackMap stack:
aload 1
aload 2
if_acmpne 5
4: new java.lang.IllegalArgumentException
dup
ldc "src image cannot be the same as the dst image"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.awt.image.Raster.getNumBands:()I
aload 2
invokevirtual java.awt.image.WritableRaster.getNumBands:()I
if_icmpeq 7
6: new java.awt.image.ImagingOpException
dup
ldc "Different number of bands in src and dst Rasters"
invokespecial java.awt.image.ImagingOpException.<init>:(Ljava/lang/String;)V
athrow
7: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokestatic sun.awt.image.ImagingLib.filter:(Ljava/awt/image/RasterOp;Ljava/awt/image/Raster;Ljava/awt/image/WritableRaster;)Ljava/awt/image/WritableRaster;
ifnonnull 9
8: new java.awt.image.ImagingOpException
dup
ldc "Unable to convolve src image"
invokespecial java.awt.image.ImagingOpException.<init>:(Ljava/lang/String;)V
athrow
9: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Ljava/awt/image/ConvolveOp;
0 10 1 src Ljava/awt/image/Raster;
0 10 2 dst Ljava/awt/image/WritableRaster;
MethodParameters:
Name Flags
src
dst
public java.awt.image.BufferedImage createCompatibleDestImage(java.awt.image.BufferedImage, java.awt.image.ColorModel);
descriptor: (Ljava/awt/image/BufferedImage;Ljava/awt/image/ColorModel;)Ljava/awt/image/BufferedImage;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual java.awt.image.BufferedImage.getWidth:()I
istore 4
start local 4 1: aload 1
invokevirtual java.awt.image.BufferedImage.getHeight:()I
istore 5
start local 5 2: aconst_null
astore 6
start local 6 3: aload 2
ifnonnull 9
4: aload 1
invokevirtual java.awt.image.BufferedImage.getColorModel:()Ljava/awt/image/ColorModel;
astore 2
5: aload 2
instanceof java.awt.image.IndexColorModel
ifeq 8
6: invokestatic java.awt.image.ColorModel.getRGBdefault:()Ljava/awt/image/ColorModel;
astore 2
7: goto 9
8: StackMap locals: java.awt.image.ConvolveOp java.awt.image.BufferedImage java.awt.image.ColorModel top int int java.awt.image.WritableRaster
StackMap stack:
aload 1
invokevirtual java.awt.image.BufferedImage.getData:()Ljava/awt/image/Raster;
iload 4
iload 5
invokevirtual java.awt.image.Raster.createCompatibleWritableRaster:(II)Ljava/awt/image/WritableRaster;
astore 6
9: StackMap locals:
StackMap stack:
aload 6
ifnonnull 11
10: aload 2
iload 4
iload 5
invokevirtual java.awt.image.ColorModel.createCompatibleWritableRaster:(II)Ljava/awt/image/WritableRaster;
astore 6
11: StackMap locals:
StackMap stack:
new java.awt.image.BufferedImage
dup
aload 2
aload 6
12: aload 2
invokevirtual java.awt.image.ColorModel.isAlphaPremultiplied:()Z
aconst_null
13: invokespecial java.awt.image.BufferedImage.<init>:(Ljava/awt/image/ColorModel;Ljava/awt/image/WritableRaster;ZLjava/util/Hashtable;)V
astore 3
start local 3 14: aload 3
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 15 0 this Ljava/awt/image/ConvolveOp;
0 15 1 src Ljava/awt/image/BufferedImage;
0 15 2 destCM Ljava/awt/image/ColorModel;
14 15 3 image Ljava/awt/image/BufferedImage;
1 15 4 w I
2 15 5 h I
3 15 6 wr Ljava/awt/image/WritableRaster;
MethodParameters:
Name Flags
src
destCM
public java.awt.image.WritableRaster createCompatibleDestRaster(java.awt.image.Raster);
descriptor: (Ljava/awt/image/Raster;)Ljava/awt/image/WritableRaster;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.awt.image.Raster.createCompatibleWritableRaster:()Ljava/awt/image/WritableRaster;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/awt/image/ConvolveOp;
0 1 1 src Ljava/awt/image/Raster;
MethodParameters:
Name Flags
src
public final java.awt.geom.Rectangle2D getBounds2D(java.awt.image.BufferedImage);
descriptor: (Ljava/awt/image/BufferedImage;)Ljava/awt/geom/Rectangle2D;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual java.awt.image.BufferedImage.getRaster:()Ljava/awt/image/WritableRaster;
invokevirtual java.awt.image.ConvolveOp.getBounds2D:(Ljava/awt/image/Raster;)Ljava/awt/geom/Rectangle2D;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/awt/image/ConvolveOp;
0 1 1 src Ljava/awt/image/BufferedImage;
MethodParameters:
Name Flags
src
public final java.awt.geom.Rectangle2D getBounds2D(java.awt.image.Raster);
descriptor: (Ljava/awt/image/Raster;)Ljava/awt/geom/Rectangle2D;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.awt.image.Raster.getBounds:()Ljava/awt/Rectangle;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/awt/image/ConvolveOp;
0 1 1 src Ljava/awt/image/Raster;
MethodParameters:
Name Flags
src
public final java.awt.geom.Point2D getPoint2D(java.awt.geom.Point2D, java.awt.geom.Point2D);
descriptor: (Ljava/awt/geom/Point2D;Ljava/awt/geom/Point2D;)Ljava/awt/geom/Point2D;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
ifnonnull 2
1: new java.awt.geom.Point2D$Float
dup
invokespecial java.awt.geom.Point2D$Float.<init>:()V
astore 2
2: StackMap locals:
StackMap stack:
aload 2
aload 1
invokevirtual java.awt.geom.Point2D.getX:()D
aload 1
invokevirtual java.awt.geom.Point2D.getY:()D
invokevirtual java.awt.geom.Point2D.setLocation:(DD)V
3: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/awt/image/ConvolveOp;
0 4 1 srcPt Ljava/awt/geom/Point2D;
0 4 2 dstPt Ljava/awt/geom/Point2D;
MethodParameters:
Name Flags
srcPt
dstPt
public final java.awt.RenderingHints getRenderingHints();
descriptor: ()Ljava/awt/RenderingHints;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.awt.image.ConvolveOp.hints:Ljava/awt/RenderingHints;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/awt/image/ConvolveOp;
}
SourceFile: "ConvolveOp.java"
InnerClasses:
public Float = java.awt.geom.Point2D$Float of java.awt.geom.Point2D