public class com.sun.media.sound.SimpleSoundbank implements javax.sound.midi.Soundbank
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.sun.media.sound.SimpleSoundbank
super_class: java.lang.Object
{
java.lang.String name;
descriptor: Ljava/lang/String;
flags: (0x0000)
java.lang.String version;
descriptor: Ljava/lang/String;
flags: (0x0000)
java.lang.String vendor;
descriptor: Ljava/lang/String;
flags: (0x0000)
java.lang.String description;
descriptor: Ljava/lang/String;
flags: (0x0000)
java.util.List<javax.sound.midi.SoundbankResource> resources;
descriptor: Ljava/util/List;
flags: (0x0000)
Signature: Ljava/util/List<Ljavax/sound/midi/SoundbankResource;>;
java.util.List<javax.sound.midi.Instrument> instruments;
descriptor: Ljava/util/List;
flags: (0x0000)
Signature: Ljava/util/List<Ljavax/sound/midi/Instrument;>;
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
ldc ""
putfield com.sun.media.sound.SimpleSoundbank.name:Ljava/lang/String;
2: aload 0
ldc ""
putfield com.sun.media.sound.SimpleSoundbank.version:Ljava/lang/String;
3: aload 0
ldc ""
putfield com.sun.media.sound.SimpleSoundbank.vendor:Ljava/lang/String;
4: aload 0
ldc ""
putfield com.sun.media.sound.SimpleSoundbank.description:Ljava/lang/String;
5: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield com.sun.media.sound.SimpleSoundbank.resources:Ljava/util/List;
6: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield com.sun.media.sound.SimpleSoundbank.instruments:Ljava/util/List;
7: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/media/sound/SimpleSoundbank;
public java.lang.String getName();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.media.sound.SimpleSoundbank.name:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/media/sound/SimpleSoundbank;
public java.lang.String getVersion();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.media.sound.SimpleSoundbank.version:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/media/sound/SimpleSoundbank;
public java.lang.String getVendor();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.media.sound.SimpleSoundbank.vendor:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/media/sound/SimpleSoundbank;
public java.lang.String getDescription();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.media.sound.SimpleSoundbank.description:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/media/sound/SimpleSoundbank;
public void setDescription(java.lang.String);
descriptor: (Ljava/lang/String;)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.media.sound.SimpleSoundbank.description:Ljava/lang/String;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/media/sound/SimpleSoundbank;
0 2 1 description Ljava/lang/String;
MethodParameters:
Name Flags
description
public void setName(java.lang.String);
descriptor: (Ljava/lang/String;)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.media.sound.SimpleSoundbank.name:Ljava/lang/String;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/media/sound/SimpleSoundbank;
0 2 1 name Ljava/lang/String;
MethodParameters:
Name Flags
name
public void setVendor(java.lang.String);
descriptor: (Ljava/lang/String;)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.media.sound.SimpleSoundbank.vendor:Ljava/lang/String;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/media/sound/SimpleSoundbank;
0 2 1 vendor Ljava/lang/String;
MethodParameters:
Name Flags
vendor
public void setVersion(java.lang.String);
descriptor: (Ljava/lang/String;)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.media.sound.SimpleSoundbank.version:Ljava/lang/String;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/media/sound/SimpleSoundbank;
0 2 1 version Ljava/lang/String;
MethodParameters:
Name Flags
version
public javax.sound.midi.SoundbankResource[] getResources();
descriptor: ()[Ljavax/sound/midi/SoundbankResource;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.media.sound.SimpleSoundbank.resources:Ljava/util/List;
aload 0
getfield com.sun.media.sound.SimpleSoundbank.resources:Ljava/util/List;
invokeinterface java.util.List.size:()I
anewarray javax.sound.midi.SoundbankResource
invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast javax.sound.midi.SoundbankResource[]
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/media/sound/SimpleSoundbank;
public javax.sound.midi.Instrument[] getInstruments();
descriptor: ()[Ljavax/sound/midi/Instrument;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield com.sun.media.sound.SimpleSoundbank.instruments:Ljava/util/List;
aload 0
getfield com.sun.media.sound.SimpleSoundbank.resources:Ljava/util/List;
invokeinterface java.util.List.size:()I
anewarray javax.sound.midi.Instrument
invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast javax.sound.midi.Instrument[]
1: astore 1
start local 1 2: aload 1
new com.sun.media.sound.ModelInstrumentComparator
dup
invokespecial com.sun.media.sound.ModelInstrumentComparator.<init>:()V
invokestatic java.util.Arrays.sort:([Ljava/lang/Object;Ljava/util/Comparator;)V
3: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/media/sound/SimpleSoundbank;
2 4 1 inslist_array [Ljavax/sound/midi/Instrument;
public javax.sound.midi.Instrument getInstrument(javax.sound.midi.Patch);
descriptor: (Ljavax/sound/midi/Patch;)Ljavax/sound/midi/Instrument;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=11, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual javax.sound.midi.Patch.getProgram:()I
istore 2
start local 2 1: aload 1
invokevirtual javax.sound.midi.Patch.getBank:()I
istore 3
start local 3 2: iconst_0
istore 4
start local 4 3: aload 1
instanceof com.sun.media.sound.ModelPatch
ifeq 5
4: aload 1
checkcast com.sun.media.sound.ModelPatch
invokevirtual com.sun.media.sound.ModelPatch.isPercussion:()Z
istore 4
5: StackMap locals: int int int
StackMap stack:
aload 0
getfield com.sun.media.sound.SimpleSoundbank.instruments:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 6
goto 16
StackMap locals: com.sun.media.sound.SimpleSoundbank javax.sound.midi.Patch int int int top java.util.Iterator
StackMap stack:
6: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast javax.sound.midi.Instrument
astore 5
start local 5 7: aload 5
invokevirtual javax.sound.midi.Instrument.getPatch:()Ljavax/sound/midi/Patch;
astore 7
start local 7 8: aload 7
invokevirtual javax.sound.midi.Patch.getProgram:()I
istore 8
start local 8 9: aload 7
invokevirtual javax.sound.midi.Patch.getBank:()I
istore 9
start local 9 10: iload 2
iload 8
if_icmpne 16
iload 3
iload 9
if_icmpne 16
11: iconst_0
istore 10
start local 10 12: aload 7
instanceof com.sun.media.sound.ModelPatch
ifeq 14
13: aload 7
checkcast com.sun.media.sound.ModelPatch
invokevirtual com.sun.media.sound.ModelPatch.isPercussion:()Z
istore 10
14: StackMap locals: com.sun.media.sound.SimpleSoundbank javax.sound.midi.Patch int int int javax.sound.midi.Instrument java.util.Iterator javax.sound.midi.Patch int int int
StackMap stack:
iload 4
iload 10
if_icmpne 16
15: aload 5
areturn
end local 10 end local 9 end local 8 end local 7 end local 5 16: StackMap locals: com.sun.media.sound.SimpleSoundbank javax.sound.midi.Patch int int int top java.util.Iterator
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 6
17: aconst_null
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lcom/sun/media/sound/SimpleSoundbank;
0 18 1 patch Ljavax/sound/midi/Patch;
1 18 2 program I
2 18 3 bank I
3 18 4 percussion Z
7 16 5 instrument Ljavax/sound/midi/Instrument;
8 16 7 patch2 Ljavax/sound/midi/Patch;
9 16 8 program2 I
10 16 9 bank2 I
12 16 10 percussion2 Z
MethodParameters:
Name Flags
patch
public void addResource(javax.sound.midi.SoundbankResource);
descriptor: (Ljavax/sound/midi/SoundbankResource;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
instanceof javax.sound.midi.Instrument
ifeq 2
1: aload 0
getfield com.sun.media.sound.SimpleSoundbank.instruments:Ljava/util/List;
aload 1
checkcast javax.sound.midi.Instrument
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
goto 3
2: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.media.sound.SimpleSoundbank.resources:Ljava/util/List;
aload 1
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
3: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/media/sound/SimpleSoundbank;
0 4 1 resource Ljavax/sound/midi/SoundbankResource;
MethodParameters:
Name Flags
resource
public void removeResource(javax.sound.midi.SoundbankResource);
descriptor: (Ljavax/sound/midi/SoundbankResource;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
instanceof javax.sound.midi.Instrument
ifeq 2
1: aload 0
getfield com.sun.media.sound.SimpleSoundbank.instruments:Ljava/util/List;
aload 1
checkcast javax.sound.midi.Instrument
invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
pop
goto 3
2: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.media.sound.SimpleSoundbank.resources:Ljava/util/List;
aload 1
invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
pop
3: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/media/sound/SimpleSoundbank;
0 4 1 resource Ljavax/sound/midi/SoundbankResource;
MethodParameters:
Name Flags
resource
public void addInstrument(javax.sound.midi.Instrument);
descriptor: (Ljavax/sound/midi/Instrument;)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.media.sound.SimpleSoundbank.instruments:Ljava/util/List;
aload 1
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/media/sound/SimpleSoundbank;
0 2 1 resource Ljavax/sound/midi/Instrument;
MethodParameters:
Name Flags
resource
public void removeInstrument(javax.sound.midi.Instrument);
descriptor: (Ljavax/sound/midi/Instrument;)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.media.sound.SimpleSoundbank.instruments:Ljava/util/List;
aload 1
invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/media/sound/SimpleSoundbank;
0 2 1 resource Ljavax/sound/midi/Instrument;
MethodParameters:
Name Flags
resource
public void addAllInstruments(javax.sound.midi.Soundbank);
descriptor: (Ljavax/sound/midi/Soundbank;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=6, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface javax.sound.midi.Soundbank.getInstruments:()[Ljavax/sound/midi/Instrument;
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 4
StackMap locals: com.sun.media.sound.SimpleSoundbank javax.sound.midi.Soundbank top int int javax.sound.midi.Instrument[]
StackMap stack:
1: aload 5
iload 3
aaload
astore 2
start local 2 2: aload 0
aload 2
invokevirtual com.sun.media.sound.SimpleSoundbank.addInstrument:(Ljavax/sound/midi/Instrument;)V
end local 2 3: iinc 3 1
StackMap locals:
StackMap stack:
4: iload 3
iload 4
if_icmplt 1
5: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/media/sound/SimpleSoundbank;
0 6 1 soundbank Ljavax/sound/midi/Soundbank;
2 3 2 ins Ljavax/sound/midi/Instrument;
MethodParameters:
Name Flags
soundbank
public void removeAllInstruments(javax.sound.midi.Soundbank);
descriptor: (Ljavax/sound/midi/Soundbank;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=6, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface javax.sound.midi.Soundbank.getInstruments:()[Ljavax/sound/midi/Instrument;
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 4
StackMap locals: com.sun.media.sound.SimpleSoundbank javax.sound.midi.Soundbank top int int javax.sound.midi.Instrument[]
StackMap stack:
1: aload 5
iload 3
aaload
astore 2
start local 2 2: aload 0
aload 2
invokevirtual com.sun.media.sound.SimpleSoundbank.removeInstrument:(Ljavax/sound/midi/Instrument;)V
end local 2 3: iinc 3 1
StackMap locals:
StackMap stack:
4: iload 3
iload 4
if_icmplt 1
5: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/media/sound/SimpleSoundbank;
0 6 1 soundbank Ljavax/sound/midi/Soundbank;
2 3 2 ins Ljavax/sound/midi/Instrument;
MethodParameters:
Name Flags
soundbank
}
SourceFile: "SimpleSoundbank.java"