public class android.renderscript.Mesh$Builder
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: android.renderscript.Mesh$Builder
super_class: java.lang.Object
{
android.renderscript.RenderScript mRS;
descriptor: Landroid/renderscript/RenderScript;
flags: (0x0000)
int mUsage;
descriptor: I
flags: (0x0000)
int mVertexTypeCount;
descriptor: I
flags: (0x0000)
android.renderscript.Mesh$Builder$Entry[] mVertexTypes;
descriptor: [Landroid/renderscript/Mesh$Builder$Entry;
flags: (0x0000)
java.util.Vector mIndexTypes;
descriptor: Ljava/util/Vector;
flags: (0x0000)
public void <init>(android.renderscript.RenderScript, int);
descriptor: (Landroid/renderscript/RenderScript;I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield android.renderscript.Mesh$Builder.mRS:Landroid/renderscript/RenderScript;
2: aload 0
iload 2
putfield android.renderscript.Mesh$Builder.mUsage:I
3: aload 0
iconst_0
putfield android.renderscript.Mesh$Builder.mVertexTypeCount:I
4: aload 0
bipush 16
anewarray android.renderscript.Mesh$Builder$Entry
putfield android.renderscript.Mesh$Builder.mVertexTypes:[Landroid/renderscript/Mesh$Builder$Entry;
5: aload 0
new java.util.Vector
dup
invokespecial java.util.Vector.<init>:()V
putfield android.renderscript.Mesh$Builder.mIndexTypes:Ljava/util/Vector;
6: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Landroid/renderscript/Mesh$Builder;
0 7 1 rs Landroid/renderscript/RenderScript;
0 7 2 usage I
MethodParameters:
Name Flags
rs
usage
public int getCurrentVertexTypeIndex();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield android.renderscript.Mesh$Builder.mVertexTypeCount:I
iconst_1
isub
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/renderscript/Mesh$Builder;
public int getCurrentIndexSetIndex();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield android.renderscript.Mesh$Builder.mIndexTypes:Ljava/util/Vector;
invokevirtual java.util.Vector.size:()I
iconst_1
isub
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/renderscript/Mesh$Builder;
public android.renderscript.Mesh$Builder addVertexType(android.renderscript.Type);
descriptor: (Landroid/renderscript/Type;)Landroid/renderscript/Mesh$Builder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield android.renderscript.Mesh$Builder.mVertexTypeCount:I
aload 0
getfield android.renderscript.Mesh$Builder.mVertexTypes:[Landroid/renderscript/Mesh$Builder$Entry;
arraylength
if_icmplt 2
1: new java.lang.IllegalStateException
dup
ldc "Max vertex types exceeded."
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield android.renderscript.Mesh$Builder.mVertexTypes:[Landroid/renderscript/Mesh$Builder$Entry;
aload 0
getfield android.renderscript.Mesh$Builder.mVertexTypeCount:I
new android.renderscript.Mesh$Builder$Entry
dup
aload 0
invokespecial android.renderscript.Mesh$Builder$Entry.<init>:(Landroid/renderscript/Mesh$Builder;)V
aastore
3: aload 0
getfield android.renderscript.Mesh$Builder.mVertexTypes:[Landroid/renderscript/Mesh$Builder$Entry;
aload 0
getfield android.renderscript.Mesh$Builder.mVertexTypeCount:I
aaload
aload 1
putfield android.renderscript.Mesh$Builder$Entry.t:Landroid/renderscript/Type;
4: aload 0
getfield android.renderscript.Mesh$Builder.mVertexTypes:[Landroid/renderscript/Mesh$Builder$Entry;
aload 0
getfield android.renderscript.Mesh$Builder.mVertexTypeCount:I
aaload
aconst_null
putfield android.renderscript.Mesh$Builder$Entry.e:Landroid/renderscript/Element;
5: aload 0
dup
getfield android.renderscript.Mesh$Builder.mVertexTypeCount:I
iconst_1
iadd
putfield android.renderscript.Mesh$Builder.mVertexTypeCount:I
6: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Landroid/renderscript/Mesh$Builder;
0 7 1 t Landroid/renderscript/Type;
Exceptions:
throws java.lang.IllegalStateException
MethodParameters:
Name Flags
t
public android.renderscript.Mesh$Builder addVertexType(android.renderscript.Element, int);
descriptor: (Landroid/renderscript/Element;I)Landroid/renderscript/Mesh$Builder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield android.renderscript.Mesh$Builder.mVertexTypeCount:I
aload 0
getfield android.renderscript.Mesh$Builder.mVertexTypes:[Landroid/renderscript/Mesh$Builder$Entry;
arraylength
if_icmplt 2
1: new java.lang.IllegalStateException
dup
ldc "Max vertex types exceeded."
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield android.renderscript.Mesh$Builder.mVertexTypes:[Landroid/renderscript/Mesh$Builder$Entry;
aload 0
getfield android.renderscript.Mesh$Builder.mVertexTypeCount:I
new android.renderscript.Mesh$Builder$Entry
dup
aload 0
invokespecial android.renderscript.Mesh$Builder$Entry.<init>:(Landroid/renderscript/Mesh$Builder;)V
aastore
3: aload 0
getfield android.renderscript.Mesh$Builder.mVertexTypes:[Landroid/renderscript/Mesh$Builder$Entry;
aload 0
getfield android.renderscript.Mesh$Builder.mVertexTypeCount:I
aaload
aconst_null
putfield android.renderscript.Mesh$Builder$Entry.t:Landroid/renderscript/Type;
4: aload 0
getfield android.renderscript.Mesh$Builder.mVertexTypes:[Landroid/renderscript/Mesh$Builder$Entry;
aload 0
getfield android.renderscript.Mesh$Builder.mVertexTypeCount:I
aaload
aload 1
putfield android.renderscript.Mesh$Builder$Entry.e:Landroid/renderscript/Element;
5: aload 0
getfield android.renderscript.Mesh$Builder.mVertexTypes:[Landroid/renderscript/Mesh$Builder$Entry;
aload 0
getfield android.renderscript.Mesh$Builder.mVertexTypeCount:I
aaload
iload 2
putfield android.renderscript.Mesh$Builder$Entry.size:I
6: aload 0
dup
getfield android.renderscript.Mesh$Builder.mVertexTypeCount:I
iconst_1
iadd
putfield android.renderscript.Mesh$Builder.mVertexTypeCount:I
7: aload 0
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Landroid/renderscript/Mesh$Builder;
0 8 1 e Landroid/renderscript/Element;
0 8 2 size I
Exceptions:
throws java.lang.IllegalStateException
MethodParameters:
Name Flags
e
size
public android.renderscript.Mesh$Builder addIndexSetType(android.renderscript.Type, android.renderscript.Mesh$Primitive);
descriptor: (Landroid/renderscript/Type;Landroid/renderscript/Mesh$Primitive;)Landroid/renderscript/Mesh$Builder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: new android.renderscript.Mesh$Builder$Entry
dup
aload 0
invokespecial android.renderscript.Mesh$Builder$Entry.<init>:(Landroid/renderscript/Mesh$Builder;)V
astore 3
start local 3 1: aload 3
aload 1
putfield android.renderscript.Mesh$Builder$Entry.t:Landroid/renderscript/Type;
2: aload 3
aconst_null
putfield android.renderscript.Mesh$Builder$Entry.e:Landroid/renderscript/Element;
3: aload 3
iconst_0
putfield android.renderscript.Mesh$Builder$Entry.size:I
4: aload 3
aload 2
putfield android.renderscript.Mesh$Builder$Entry.prim:Landroid/renderscript/Mesh$Primitive;
5: aload 0
getfield android.renderscript.Mesh$Builder.mIndexTypes:Ljava/util/Vector;
aload 3
invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
6: aload 0
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Landroid/renderscript/Mesh$Builder;
0 7 1 t Landroid/renderscript/Type;
0 7 2 p Landroid/renderscript/Mesh$Primitive;
1 7 3 indexType Landroid/renderscript/Mesh$Builder$Entry;
MethodParameters:
Name Flags
t
p
public android.renderscript.Mesh$Builder addIndexSetType(android.renderscript.Mesh$Primitive);
descriptor: (Landroid/renderscript/Mesh$Primitive;)Landroid/renderscript/Mesh$Builder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: new android.renderscript.Mesh$Builder$Entry
dup
aload 0
invokespecial android.renderscript.Mesh$Builder$Entry.<init>:(Landroid/renderscript/Mesh$Builder;)V
astore 2
start local 2 1: aload 2
aconst_null
putfield android.renderscript.Mesh$Builder$Entry.t:Landroid/renderscript/Type;
2: aload 2
aconst_null
putfield android.renderscript.Mesh$Builder$Entry.e:Landroid/renderscript/Element;
3: aload 2
iconst_0
putfield android.renderscript.Mesh$Builder$Entry.size:I
4: aload 2
aload 1
putfield android.renderscript.Mesh$Builder$Entry.prim:Landroid/renderscript/Mesh$Primitive;
5: aload 0
getfield android.renderscript.Mesh$Builder.mIndexTypes:Ljava/util/Vector;
aload 2
invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
6: aload 0
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Landroid/renderscript/Mesh$Builder;
0 7 1 p Landroid/renderscript/Mesh$Primitive;
1 7 2 indexType Landroid/renderscript/Mesh$Builder$Entry;
MethodParameters:
Name Flags
p
public android.renderscript.Mesh$Builder addIndexSetType(android.renderscript.Element, int, android.renderscript.Mesh$Primitive);
descriptor: (Landroid/renderscript/Element;ILandroid/renderscript/Mesh$Primitive;)Landroid/renderscript/Mesh$Builder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new android.renderscript.Mesh$Builder$Entry
dup
aload 0
invokespecial android.renderscript.Mesh$Builder$Entry.<init>:(Landroid/renderscript/Mesh$Builder;)V
astore 4
start local 4 1: aload 4
aconst_null
putfield android.renderscript.Mesh$Builder$Entry.t:Landroid/renderscript/Type;
2: aload 4
aload 1
putfield android.renderscript.Mesh$Builder$Entry.e:Landroid/renderscript/Element;
3: aload 4
iload 2
putfield android.renderscript.Mesh$Builder$Entry.size:I
4: aload 4
aload 3
putfield android.renderscript.Mesh$Builder$Entry.prim:Landroid/renderscript/Mesh$Primitive;
5: aload 0
getfield android.renderscript.Mesh$Builder.mIndexTypes:Ljava/util/Vector;
aload 4
invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
6: aload 0
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Landroid/renderscript/Mesh$Builder;
0 7 1 e Landroid/renderscript/Element;
0 7 2 size I
0 7 3 p Landroid/renderscript/Mesh$Primitive;
1 7 4 indexType Landroid/renderscript/Mesh$Builder$Entry;
MethodParameters:
Name Flags
e
size
p
android.renderscript.Type newType(android.renderscript.Element, int);
descriptor: (Landroid/renderscript/Element;I)Landroid/renderscript/Type;
flags: (0x0000)
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: new android.renderscript.Type$Builder
dup
aload 0
getfield android.renderscript.Mesh$Builder.mRS:Landroid/renderscript/RenderScript;
aload 1
invokespecial android.renderscript.Type$Builder.<init>:(Landroid/renderscript/RenderScript;Landroid/renderscript/Element;)V
astore 3
start local 3 1: aload 3
iload 2
invokevirtual android.renderscript.Type$Builder.setX:(I)Landroid/renderscript/Type$Builder;
pop
2: aload 3
invokevirtual android.renderscript.Type$Builder.create:()Landroid/renderscript/Type;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Landroid/renderscript/Mesh$Builder;
0 3 1 e Landroid/renderscript/Element;
0 3 2 size I
1 3 3 tb Landroid/renderscript/Type$Builder;
MethodParameters:
Name Flags
e
size
public android.renderscript.Mesh create();
descriptor: ()Landroid/renderscript/Mesh;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=12, args_size=1
start local 0 0: aload 0
getfield android.renderscript.Mesh$Builder.mRS:Landroid/renderscript/RenderScript;
invokevirtual android.renderscript.RenderScript.validate:()V
1: aload 0
getfield android.renderscript.Mesh$Builder.mVertexTypeCount:I
newarray 11
astore 1
start local 1 2: aload 0
getfield android.renderscript.Mesh$Builder.mIndexTypes:Ljava/util/Vector;
invokevirtual java.util.Vector.size:()I
newarray 11
astore 2
start local 2 3: aload 0
getfield android.renderscript.Mesh$Builder.mIndexTypes:Ljava/util/Vector;
invokevirtual java.util.Vector.size:()I
newarray 10
astore 3
start local 3 4: aload 0
getfield android.renderscript.Mesh$Builder.mVertexTypeCount:I
anewarray android.renderscript.Allocation
astore 4
start local 4 5: aload 0
getfield android.renderscript.Mesh$Builder.mIndexTypes:Ljava/util/Vector;
invokevirtual java.util.Vector.size:()I
anewarray android.renderscript.Allocation
astore 5
start local 5 6: aload 0
getfield android.renderscript.Mesh$Builder.mIndexTypes:Ljava/util/Vector;
invokevirtual java.util.Vector.size:()I
anewarray android.renderscript.Mesh$Primitive
astore 6
start local 6 7: iconst_0
istore 7
start local 7 8: goto 21
9: StackMap locals: android.renderscript.Mesh$Builder long[] long[] int[] android.renderscript.Allocation[] android.renderscript.Allocation[] android.renderscript.Mesh$Primitive[] int
StackMap stack:
aconst_null
astore 8
start local 8 10: aload 0
getfield android.renderscript.Mesh$Builder.mVertexTypes:[Landroid/renderscript/Mesh$Builder$Entry;
iload 7
aaload
astore 9
start local 9 11: aload 9
getfield android.renderscript.Mesh$Builder$Entry.t:Landroid/renderscript/Type;
ifnull 14
12: aload 0
getfield android.renderscript.Mesh$Builder.mRS:Landroid/renderscript/RenderScript;
aload 9
getfield android.renderscript.Mesh$Builder$Entry.t:Landroid/renderscript/Type;
aload 0
getfield android.renderscript.Mesh$Builder.mUsage:I
invokestatic android.renderscript.Allocation.createTyped:(Landroid/renderscript/RenderScript;Landroid/renderscript/Type;I)Landroid/renderscript/Allocation;
astore 8
13: goto 18
StackMap locals: android.renderscript.Allocation android.renderscript.Mesh$Builder$Entry
StackMap stack:
14: aload 9
getfield android.renderscript.Mesh$Builder$Entry.e:Landroid/renderscript/Element;
ifnull 17
15: aload 0
getfield android.renderscript.Mesh$Builder.mRS:Landroid/renderscript/RenderScript;
aload 9
getfield android.renderscript.Mesh$Builder$Entry.e:Landroid/renderscript/Element;
aload 9
getfield android.renderscript.Mesh$Builder$Entry.size:I
aload 0
getfield android.renderscript.Mesh$Builder.mUsage:I
invokestatic android.renderscript.Allocation.createSized:(Landroid/renderscript/RenderScript;Landroid/renderscript/Element;II)Landroid/renderscript/Allocation;
astore 8
16: goto 18
17: StackMap locals:
StackMap stack:
new java.lang.IllegalStateException
dup
ldc "Builder corrupt, no valid element in entry."
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
18: StackMap locals:
StackMap stack:
aload 4
iload 7
aload 8
aastore
19: aload 1
iload 7
aload 8
aload 0
getfield android.renderscript.Mesh$Builder.mRS:Landroid/renderscript/RenderScript;
invokevirtual android.renderscript.Allocation.getID:(Landroid/renderscript/RenderScript;)J
lastore
end local 9 end local 8 20: iinc 7 1
StackMap locals:
StackMap stack:
21: iload 7
aload 0
getfield android.renderscript.Mesh$Builder.mVertexTypeCount:I
if_icmplt 9
end local 7 22: iconst_0
istore 7
start local 7 23: goto 41
24: StackMap locals:
StackMap stack:
aconst_null
astore 8
start local 8 25: aload 0
getfield android.renderscript.Mesh$Builder.mIndexTypes:Ljava/util/Vector;
iload 7
invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
checkcast android.renderscript.Mesh$Builder$Entry
astore 9
start local 9 26: aload 9
getfield android.renderscript.Mesh$Builder$Entry.t:Landroid/renderscript/Type;
ifnull 29
27: aload 0
getfield android.renderscript.Mesh$Builder.mRS:Landroid/renderscript/RenderScript;
aload 9
getfield android.renderscript.Mesh$Builder$Entry.t:Landroid/renderscript/Type;
aload 0
getfield android.renderscript.Mesh$Builder.mUsage:I
invokestatic android.renderscript.Allocation.createTyped:(Landroid/renderscript/RenderScript;Landroid/renderscript/Type;I)Landroid/renderscript/Allocation;
astore 8
28: goto 33
StackMap locals: android.renderscript.Allocation android.renderscript.Mesh$Builder$Entry
StackMap stack:
29: aload 9
getfield android.renderscript.Mesh$Builder$Entry.e:Landroid/renderscript/Element;
ifnull 32
30: aload 0
getfield android.renderscript.Mesh$Builder.mRS:Landroid/renderscript/RenderScript;
aload 9
getfield android.renderscript.Mesh$Builder$Entry.e:Landroid/renderscript/Element;
aload 9
getfield android.renderscript.Mesh$Builder$Entry.size:I
aload 0
getfield android.renderscript.Mesh$Builder.mUsage:I
invokestatic android.renderscript.Allocation.createSized:(Landroid/renderscript/RenderScript;Landroid/renderscript/Element;II)Landroid/renderscript/Allocation;
astore 8
31: goto 33
32: StackMap locals:
StackMap stack:
new java.lang.IllegalStateException
dup
ldc "Builder corrupt, no valid element in entry."
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
33: StackMap locals:
StackMap stack:
aload 8
ifnonnull 34
lconst_0
goto 35
StackMap locals:
StackMap stack:
34: aload 8
aload 0
getfield android.renderscript.Mesh$Builder.mRS:Landroid/renderscript/RenderScript;
invokevirtual android.renderscript.Allocation.getID:(Landroid/renderscript/RenderScript;)J
StackMap locals:
StackMap stack: long
35: lstore 10
start local 10 36: aload 5
iload 7
aload 8
aastore
37: aload 6
iload 7
aload 9
getfield android.renderscript.Mesh$Builder$Entry.prim:Landroid/renderscript/Mesh$Primitive;
aastore
38: aload 2
iload 7
lload 10
lastore
39: aload 3
iload 7
aload 9
getfield android.renderscript.Mesh$Builder$Entry.prim:Landroid/renderscript/Mesh$Primitive;
getfield android.renderscript.Mesh$Primitive.mID:I
iastore
end local 10 end local 9 end local 8 40: iinc 7 1
StackMap locals:
StackMap stack:
41: iload 7
aload 0
getfield android.renderscript.Mesh$Builder.mIndexTypes:Ljava/util/Vector;
invokevirtual java.util.Vector.size:()I
if_icmplt 24
end local 7 42: aload 0
getfield android.renderscript.Mesh$Builder.mRS:Landroid/renderscript/RenderScript;
aload 1
aload 2
aload 3
invokevirtual android.renderscript.RenderScript.nMeshCreate:([J[J[I)J
lstore 7
start local 7 43: new android.renderscript.Mesh
dup
lload 7
aload 0
getfield android.renderscript.Mesh$Builder.mRS:Landroid/renderscript/RenderScript;
invokespecial android.renderscript.Mesh.<init>:(JLandroid/renderscript/RenderScript;)V
astore 9
start local 9 44: aload 9
aload 4
putfield android.renderscript.Mesh.mVertexBuffers:[Landroid/renderscript/Allocation;
45: aload 9
aload 5
putfield android.renderscript.Mesh.mIndexBuffers:[Landroid/renderscript/Allocation;
46: aload 9
aload 6
putfield android.renderscript.Mesh.mPrimitives:[Landroid/renderscript/Mesh$Primitive;
47: aload 9
areturn
end local 9 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 48 0 this Landroid/renderscript/Mesh$Builder;
2 48 1 vtx [J
3 48 2 idx [J
4 48 3 prim [I
5 48 4 vertexBuffers [Landroid/renderscript/Allocation;
6 48 5 indexBuffers [Landroid/renderscript/Allocation;
7 48 6 primitives [Landroid/renderscript/Mesh$Primitive;
8 22 7 ct I
10 20 8 alloc Landroid/renderscript/Allocation;
11 20 9 entry Landroid/renderscript/Mesh$Builder$Entry;
23 42 7 ct I
25 40 8 alloc Landroid/renderscript/Allocation;
26 40 9 entry Landroid/renderscript/Mesh$Builder$Entry;
36 40 10 allocID J
43 48 7 id J
44 48 9 newMesh Landroid/renderscript/Mesh;
}
SourceFile: "Mesh.java"
NestHost: android.renderscript.Mesh
InnerClasses:
public Builder = android.renderscript.Mesh$Builder of android.renderscript.Mesh
Entry = android.renderscript.Mesh$Builder$Entry of android.renderscript.Mesh$Builder
public final Primitive = android.renderscript.Mesh$Primitive of android.renderscript.Mesh
public Builder = android.renderscript.Type$Builder of android.renderscript.Type