public abstract class sun.java2d.pipe.BufferedTextPipe extends sun.java2d.pipe.GlyphListPipe
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: sun.java2d.pipe.BufferedTextPipe
super_class: sun.java2d.pipe.GlyphListPipe
{
private static final int BYTES_PER_GLYPH_IMAGE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 8
private static final int BYTES_PER_GLYPH_POSITION;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 8
private static final int OFFSET_CONTRAST;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 8
private static final int OFFSET_RGBORDER;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2
private static final int OFFSET_SUBPIXPOS;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final int OFFSET_POSITIONS;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
protected final sun.java2d.pipe.RenderQueue rq;
descriptor: Lsun/java2d/pipe/RenderQueue;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
private static int createPackedParams(sun.java2d.SunGraphics2D, sun.font.GlyphList);
descriptor: (Lsun/java2d/SunGraphics2D;Lsun/font/GlyphList;)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual sun.font.GlyphList.usePositions:()Z
ifeq 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: iconst_0
ishl
3: aload 1
invokevirtual sun.font.GlyphList.isSubPixPos:()Z
ifeq 4
iconst_1
goto 5
StackMap locals:
StackMap stack: int
4: iconst_0
StackMap locals: sun.java2d.SunGraphics2D sun.font.GlyphList
StackMap stack: int int
5: iconst_1
ishl
6: ior
7: aload 1
invokevirtual sun.font.GlyphList.isRGBOrder:()Z
ifeq 8
iconst_1
goto 9
StackMap locals:
StackMap stack: int
8: iconst_0
StackMap locals: sun.java2d.SunGraphics2D sun.font.GlyphList
StackMap stack: int int
9: iconst_2
ishl
10: ior
11: aload 0
getfield sun.java2d.SunGraphics2D.lcdTextContrast:I
sipush 255
iand
bipush 8
ishl
12: ior
13: ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 sg2d Lsun/java2d/SunGraphics2D;
0 14 1 gl Lsun/font/GlyphList;
MethodParameters:
Name Flags
sg2d
gl
protected void <init>(sun.java2d.pipe.RenderQueue);
descriptor: (Lsun/java2d/pipe/RenderQueue;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial sun.java2d.pipe.GlyphListPipe.<init>:()V
1: aload 0
aload 1
putfield sun.java2d.pipe.BufferedTextPipe.rq:Lsun/java2d/pipe/RenderQueue;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/java2d/pipe/BufferedTextPipe;
0 3 1 rq Lsun/java2d/pipe/RenderQueue;
MethodParameters:
Name Flags
rq
protected void drawGlyphList(sun.java2d.SunGraphics2D, sun.font.GlyphList);
descriptor: (Lsun/java2d/SunGraphics2D;Lsun/font/GlyphList;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 1
getfield sun.java2d.SunGraphics2D.composite:Ljava/awt/Composite;
astore 3
start local 3 1: aload 3
getstatic java.awt.AlphaComposite.Src:Ljava/awt/AlphaComposite;
if_acmpne 3
2: getstatic java.awt.AlphaComposite.SrcOver:Ljava/awt/AlphaComposite;
astore 3
3: StackMap locals: java.awt.Composite
StackMap stack:
aload 0
getfield sun.java2d.pipe.BufferedTextPipe.rq:Lsun/java2d/pipe/RenderQueue;
invokevirtual sun.java2d.pipe.RenderQueue.lock:()V
4: aload 0
aload 1
aload 3
invokevirtual sun.java2d.pipe.BufferedTextPipe.validateContext:(Lsun/java2d/SunGraphics2D;Ljava/awt/Composite;)V
5: aload 0
aload 1
aload 2
invokevirtual sun.java2d.pipe.BufferedTextPipe.enqueueGlyphList:(Lsun/java2d/SunGraphics2D;Lsun/font/GlyphList;)V
6: goto 10
StackMap locals:
StackMap stack: java.lang.Throwable
7: astore 4
8: aload 0
getfield sun.java2d.pipe.BufferedTextPipe.rq:Lsun/java2d/pipe/RenderQueue;
invokevirtual sun.java2d.pipe.RenderQueue.unlock:()V
9: aload 4
athrow
10: StackMap locals:
StackMap stack:
aload 0
getfield sun.java2d.pipe.BufferedTextPipe.rq:Lsun/java2d/pipe/RenderQueue;
invokevirtual sun.java2d.pipe.RenderQueue.unlock:()V
11: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lsun/java2d/pipe/BufferedTextPipe;
0 12 1 sg2d Lsun/java2d/SunGraphics2D;
0 12 2 gl Lsun/font/GlyphList;
1 12 3 comp Ljava/awt/Composite;
Exception table:
from to target type
4 7 7 any
MethodParameters:
Name Flags
sg2d
gl
private void enqueueGlyphList(sun.java2d.SunGraphics2D, sun.font.GlyphList);
descriptor: (Lsun/java2d/SunGraphics2D;Lsun/font/GlyphList;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=10, locals=12, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield sun.java2d.pipe.BufferedTextPipe.rq:Lsun/java2d/pipe/RenderQueue;
invokevirtual sun.java2d.pipe.RenderQueue.getBuffer:()Lsun/java2d/pipe/RenderBuffer;
astore 3
start local 3 1: aload 2
invokevirtual sun.font.GlyphList.getNumGlyphs:()I
istore 4
start local 4 2: iload 4
bipush 8
imul
istore 5
start local 5 3: aload 2
invokevirtual sun.font.GlyphList.usePositions:()Z
ifeq 4
iload 4
bipush 8
imul
goto 5
StackMap locals: sun.java2d.pipe.RenderBuffer int int
StackMap stack:
4: iconst_0
5: StackMap locals:
StackMap stack: int
istore 6
start local 6 6: bipush 24
iload 5
iadd
iload 6
iadd
istore 7
start local 7 7: aload 2
invokevirtual sun.font.GlyphList.getImages:()[J
astore 8
start local 8 8: aload 2
invokevirtual sun.font.GlyphList.getX:()F
ldc 0.5
fadd
fstore 9
start local 9 9: aload 2
invokevirtual sun.font.GlyphList.getY:()F
ldc 0.5
fadd
fstore 10
start local 10 10: aload 0
getfield sun.java2d.pipe.BufferedTextPipe.rq:Lsun/java2d/pipe/RenderQueue;
aload 2
invokevirtual sun.font.GlyphList.getStrike:()Ljava/lang/Object;
invokevirtual sun.java2d.pipe.RenderQueue.addReference:(Ljava/lang/Object;)V
11: iload 7
aload 3
invokevirtual sun.java2d.pipe.RenderBuffer.capacity:()I
if_icmpgt 25
12: iload 7
aload 3
invokevirtual sun.java2d.pipe.RenderBuffer.remaining:()I
if_icmple 14
13: aload 0
getfield sun.java2d.pipe.BufferedTextPipe.rq:Lsun/java2d/pipe/RenderQueue;
invokevirtual sun.java2d.pipe.RenderQueue.flushNow:()V
14: StackMap locals: sun.java2d.pipe.BufferedTextPipe sun.java2d.SunGraphics2D sun.font.GlyphList sun.java2d.pipe.RenderBuffer int int int int long[] float float
StackMap stack:
aload 0
getfield sun.java2d.pipe.BufferedTextPipe.rq:Lsun/java2d/pipe/RenderQueue;
bipush 20
invokevirtual sun.java2d.pipe.RenderQueue.ensureAlignment:(I)V
15: aload 3
bipush 40
invokevirtual sun.java2d.pipe.RenderBuffer.putInt:(I)Lsun/java2d/pipe/RenderBuffer;
pop
16: aload 3
iload 4
invokevirtual sun.java2d.pipe.RenderBuffer.putInt:(I)Lsun/java2d/pipe/RenderBuffer;
pop
17: aload 3
aload 1
aload 2
invokestatic sun.java2d.pipe.BufferedTextPipe.createPackedParams:(Lsun/java2d/SunGraphics2D;Lsun/font/GlyphList;)I
invokevirtual sun.java2d.pipe.RenderBuffer.putInt:(I)Lsun/java2d/pipe/RenderBuffer;
pop
18: aload 3
fload 9
invokevirtual sun.java2d.pipe.RenderBuffer.putFloat:(F)Lsun/java2d/pipe/RenderBuffer;
pop
19: aload 3
fload 10
invokevirtual sun.java2d.pipe.RenderBuffer.putFloat:(F)Lsun/java2d/pipe/RenderBuffer;
pop
20: aload 3
aload 8
iconst_0
iload 4
invokevirtual sun.java2d.pipe.RenderBuffer.put:([JII)Lsun/java2d/pipe/RenderBuffer;
pop
21: aload 2
invokevirtual sun.font.GlyphList.usePositions:()Z
ifeq 26
22: aload 2
invokevirtual sun.font.GlyphList.getPositions:()[F
astore 11
start local 11 23: aload 3
aload 11
iconst_0
iconst_2
iload 4
imul
invokevirtual sun.java2d.pipe.RenderBuffer.put:([FII)Lsun/java2d/pipe/RenderBuffer;
pop
end local 11 24: goto 26
25: StackMap locals:
StackMap stack:
aload 0
getfield sun.java2d.pipe.BufferedTextPipe.rq:Lsun/java2d/pipe/RenderQueue;
new sun.java2d.pipe.BufferedTextPipe$1
dup
aload 0
iload 4
aload 2
aload 1
fload 9
fload 10
aload 8
invokespecial sun.java2d.pipe.BufferedTextPipe$1.<init>:(Lsun/java2d/pipe/BufferedTextPipe;ILsun/font/GlyphList;Lsun/java2d/SunGraphics2D;FF[J)V
invokevirtual sun.java2d.pipe.RenderQueue.flushAndInvokeNow:(Ljava/lang/Runnable;)V
26: StackMap locals:
StackMap stack:
return
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 27 0 this Lsun/java2d/pipe/BufferedTextPipe;
0 27 1 sg2d Lsun/java2d/SunGraphics2D;
0 27 2 gl Lsun/font/GlyphList;
1 27 3 buf Lsun/java2d/pipe/RenderBuffer;
2 27 4 totalGlyphs I
3 27 5 glyphBytesRequired I
6 27 6 posBytesRequired I
7 27 7 totalBytesRequired I
8 27 8 images [J
9 27 9 glyphListOrigX F
10 27 10 glyphListOrigY F
23 24 11 positions [F
MethodParameters:
Name Flags
sg2d final
gl final
protected abstract void drawGlyphList(int, boolean, boolean, boolean, int, float, float, long[], float[]);
descriptor: (IZZZIFF[J[F)V
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
MethodParameters:
Name Flags
numGlyphs
usePositions
subPixPos
rgbOrder
lcdContrast
glOrigX
glOrigY
images
positions
protected abstract void validateContext(sun.java2d.SunGraphics2D, java.awt.Composite);
descriptor: (Lsun/java2d/SunGraphics2D;Ljava/awt/Composite;)V
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
MethodParameters:
Name Flags
sg2d
comp
}
SourceFile: "BufferedTextPipe.java"
NestMembers:
sun.java2d.pipe.BufferedTextPipe$1
InnerClasses:
sun.java2d.pipe.BufferedTextPipe$1