final class com.sun.media.sound.SoftReverb$Comb
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: com.sun.media.sound.SoftReverb$Comb
super_class: java.lang.Object
{
private final float[] delaybuffer;
descriptor: [F
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int delaybuffersize;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private int rovepos;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private float feedback;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private float filtertemp;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private float filtercoeff1;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private float filtercoeff2;
descriptor: F
flags: (0x0002) ACC_PRIVATE
void <init>(int);
descriptor: (I)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 // com.sun.media.sound.SoftReverb$Comb this
start local 1 // int size
0: .line 130
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 124
aload 0 /* this */
iconst_0
putfield com.sun.media.sound.SoftReverb$Comb.rovepos:I
2: .line 126
aload 0 /* this */
fconst_0
putfield com.sun.media.sound.SoftReverb$Comb.filtertemp:F
3: .line 127
aload 0 /* this */
fconst_0
putfield com.sun.media.sound.SoftReverb$Comb.filtercoeff1:F
4: .line 128
aload 0 /* this */
fconst_1
putfield com.sun.media.sound.SoftReverb$Comb.filtercoeff2:F
5: .line 131
aload 0 /* this */
iload 1 /* size */
newarray 6
putfield com.sun.media.sound.SoftReverb$Comb.delaybuffer:[F
6: .line 132
aload 0 /* this */
iload 1 /* size */
putfield com.sun.media.sound.SoftReverb$Comb.delaybuffersize:I
7: .line 133
return
end local 1 // int size
end local 0 // com.sun.media.sound.SoftReverb$Comb this
LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/media/sound/SoftReverb$Comb;
0 8 1 size I
MethodParameters:
Name Flags
size
public void setFeedBack(float);
descriptor: (F)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 // com.sun.media.sound.SoftReverb$Comb this
start local 1 // float feedback
0: .line 136
aload 0 /* this */
fload 1 /* feedback */
putfield com.sun.media.sound.SoftReverb$Comb.feedback:F
1: .line 137
aload 0 /* this */
fconst_1
aload 0 /* this */
getfield com.sun.media.sound.SoftReverb$Comb.filtercoeff1:F
fsub
fload 1 /* feedback */
fmul
putfield com.sun.media.sound.SoftReverb$Comb.filtercoeff2:F
2: .line 138
return
end local 1 // float feedback
end local 0 // com.sun.media.sound.SoftReverb$Comb this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/media/sound/SoftReverb$Comb;
0 3 1 feedback F
MethodParameters:
Name Flags
feedback
public void processMix(float[], float[]);
descriptor: ([F[F)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=11, args_size=3
start local 0 // com.sun.media.sound.SoftReverb$Comb this
start local 1 // float[] in
start local 2 // float[] out
0: .line 141
aload 1 /* in */
arraylength
istore 3 /* len */
start local 3 // int len
1: .line 142
aload 0 /* this */
getfield com.sun.media.sound.SoftReverb$Comb.delaybuffersize:I
istore 4 /* delaybuffersize */
start local 4 // int delaybuffersize
2: .line 143
aload 0 /* this */
getfield com.sun.media.sound.SoftReverb$Comb.rovepos:I
istore 5 /* rovepos */
start local 5 // int rovepos
3: .line 144
aload 0 /* this */
getfield com.sun.media.sound.SoftReverb$Comb.filtertemp:F
fstore 6 /* filtertemp */
start local 6 // float filtertemp
4: .line 145
aload 0 /* this */
getfield com.sun.media.sound.SoftReverb$Comb.filtercoeff1:F
fstore 7 /* filtercoeff1 */
start local 7 // float filtercoeff1
5: .line 146
aload 0 /* this */
getfield com.sun.media.sound.SoftReverb$Comb.filtercoeff2:F
fstore 8 /* filtercoeff2 */
start local 8 // float filtercoeff2
6: .line 147
iconst_0
istore 9 /* i */
start local 9 // int i
7: goto 17
8: .line 148
StackMap locals: com.sun.media.sound.SoftReverb$Comb float[] float[] int int int float float float int
StackMap stack:
aload 0 /* this */
getfield com.sun.media.sound.SoftReverb$Comb.delaybuffer:[F
iload 5 /* rovepos */
faload
fstore 10 /* delayout */
start local 10 // float delayout
9: .line 150
fload 10 /* delayout */
fload 8 /* filtercoeff2 */
fmul
10: .line 151
fload 6 /* filtertemp */
fload 7 /* filtercoeff1 */
fmul
11: .line 150
fadd
fstore 6 /* filtertemp */
12: .line 152
aload 2 /* out */
iload 9 /* i */
dup2
faload
fload 10 /* delayout */
fadd
fastore
13: .line 153
aload 0 /* this */
getfield com.sun.media.sound.SoftReverb$Comb.delaybuffer:[F
iload 5 /* rovepos */
aload 1 /* in */
iload 9 /* i */
faload
fload 6 /* filtertemp */
fadd
fastore
14: .line 154
iinc 5 /* rovepos */ 1
iload 5 /* rovepos */
iload 4 /* delaybuffersize */
if_icmpne 16
15: .line 155
iconst_0
istore 5 /* rovepos */
end local 10 // float delayout
16: .line 147
StackMap locals:
StackMap stack:
iinc 9 /* i */ 1
StackMap locals:
StackMap stack:
17: iload 9 /* i */
iload 3 /* len */
if_icmplt 8
end local 9 // int i
18: .line 157
aload 0 /* this */
fload 6 /* filtertemp */
putfield com.sun.media.sound.SoftReverb$Comb.filtertemp:F
19: .line 158
aload 0 /* this */
iload 5 /* rovepos */
putfield com.sun.media.sound.SoftReverb$Comb.rovepos:I
20: .line 159
return
end local 8 // float filtercoeff2
end local 7 // float filtercoeff1
end local 6 // float filtertemp
end local 5 // int rovepos
end local 4 // int delaybuffersize
end local 3 // int len
end local 2 // float[] out
end local 1 // float[] in
end local 0 // com.sun.media.sound.SoftReverb$Comb this
LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lcom/sun/media/sound/SoftReverb$Comb;
0 21 1 in [F
0 21 2 out [F
1 21 3 len I
2 21 4 delaybuffersize I
3 21 5 rovepos I
4 21 6 filtertemp F
5 21 7 filtercoeff1 F
6 21 8 filtercoeff2 F
7 18 9 i I
9 16 10 delayout F
MethodParameters:
Name Flags
in
out
public void processReplace(float[], float[]);
descriptor: ([F[F)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=11, args_size=3
start local 0 // com.sun.media.sound.SoftReverb$Comb this
start local 1 // float[] in
start local 2 // float[] out
0: .line 162
aload 1 /* in */
arraylength
istore 3 /* len */
start local 3 // int len
1: .line 163
aload 0 /* this */
getfield com.sun.media.sound.SoftReverb$Comb.delaybuffersize:I
istore 4 /* delaybuffersize */
start local 4 // int delaybuffersize
2: .line 164
aload 0 /* this */
getfield com.sun.media.sound.SoftReverb$Comb.rovepos:I
istore 5 /* rovepos */
start local 5 // int rovepos
3: .line 165
aload 0 /* this */
getfield com.sun.media.sound.SoftReverb$Comb.filtertemp:F
fstore 6 /* filtertemp */
start local 6 // float filtertemp
4: .line 166
aload 0 /* this */
getfield com.sun.media.sound.SoftReverb$Comb.filtercoeff1:F
fstore 7 /* filtercoeff1 */
start local 7 // float filtercoeff1
5: .line 167
aload 0 /* this */
getfield com.sun.media.sound.SoftReverb$Comb.filtercoeff2:F
fstore 8 /* filtercoeff2 */
start local 8 // float filtercoeff2
6: .line 168
iconst_0
istore 9 /* i */
start local 9 // int i
7: goto 17
8: .line 169
StackMap locals: com.sun.media.sound.SoftReverb$Comb float[] float[] int int int float float float int
StackMap stack:
aload 0 /* this */
getfield com.sun.media.sound.SoftReverb$Comb.delaybuffer:[F
iload 5 /* rovepos */
faload
fstore 10 /* delayout */
start local 10 // float delayout
9: .line 171
fload 10 /* delayout */
fload 8 /* filtercoeff2 */
fmul
10: .line 172
fload 6 /* filtertemp */
fload 7 /* filtercoeff1 */
fmul
11: .line 171
fadd
fstore 6 /* filtertemp */
12: .line 173
aload 2 /* out */
iload 9 /* i */
fload 10 /* delayout */
fastore
13: .line 174
aload 0 /* this */
getfield com.sun.media.sound.SoftReverb$Comb.delaybuffer:[F
iload 5 /* rovepos */
aload 1 /* in */
iload 9 /* i */
faload
fload 6 /* filtertemp */
fadd
fastore
14: .line 175
iinc 5 /* rovepos */ 1
iload 5 /* rovepos */
iload 4 /* delaybuffersize */
if_icmpne 16
15: .line 176
iconst_0
istore 5 /* rovepos */
end local 10 // float delayout
16: .line 168
StackMap locals:
StackMap stack:
iinc 9 /* i */ 1
StackMap locals:
StackMap stack:
17: iload 9 /* i */
iload 3 /* len */
if_icmplt 8
end local 9 // int i
18: .line 178
aload 0 /* this */
fload 6 /* filtertemp */
putfield com.sun.media.sound.SoftReverb$Comb.filtertemp:F
19: .line 179
aload 0 /* this */
iload 5 /* rovepos */
putfield com.sun.media.sound.SoftReverb$Comb.rovepos:I
20: .line 180
return
end local 8 // float filtercoeff2
end local 7 // float filtercoeff1
end local 6 // float filtertemp
end local 5 // int rovepos
end local 4 // int delaybuffersize
end local 3 // int len
end local 2 // float[] out
end local 1 // float[] in
end local 0 // com.sun.media.sound.SoftReverb$Comb this
LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lcom/sun/media/sound/SoftReverb$Comb;
0 21 1 in [F
0 21 2 out [F
1 21 3 len I
2 21 4 delaybuffersize I
3 21 5 rovepos I
4 21 6 filtertemp F
5 21 7 filtercoeff1 F
6 21 8 filtercoeff2 F
7 18 9 i I
9 16 10 delayout F
MethodParameters:
Name Flags
in
out
public void setDamp(float);
descriptor: (F)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 // com.sun.media.sound.SoftReverb$Comb this
start local 1 // float val
0: .line 183
aload 0 /* this */
fload 1 /* val */
putfield com.sun.media.sound.SoftReverb$Comb.filtercoeff1:F
1: .line 184
aload 0 /* this */
fconst_1
aload 0 /* this */
getfield com.sun.media.sound.SoftReverb$Comb.filtercoeff1:F
fsub
aload 0 /* this */
getfield com.sun.media.sound.SoftReverb$Comb.feedback:F
fmul
putfield com.sun.media.sound.SoftReverb$Comb.filtercoeff2:F
2: .line 185
return
end local 1 // float val
end local 0 // com.sun.media.sound.SoftReverb$Comb this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/media/sound/SoftReverb$Comb;
0 3 1 val F
MethodParameters:
Name Flags
val
}
SourceFile: "SoftReverb.java"
NestHost: com.sun.media.sound.SoftReverb
InnerClasses:
private final Comb = com.sun.media.sound.SoftReverb$Comb of com.sun.media.sound.SoftReverb