1f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross/*
2f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross * Copyright (C) 2011-2014 The Android Open Source Project
3f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross *
4f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross * Licensed under the Apache License, Version 2.0 (the "License");
5f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross * you may not use this file except in compliance with the License.
6f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross * You may obtain a copy of the License at
7f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross *
8f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross *      http://www.apache.org/licenses/LICENSE-2.0
9f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross *
10f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross * Unless required by applicable law or agreed to in writing, software
11f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross * distributed under the License is distributed on an "AS IS" BASIS,
12f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross * See the License for the specific language governing permissions and
14f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross * limitations under the License.
15f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross */
16f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
17f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross/*
18f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross * This file is auto-generated. DO NOT MODIFY!
19f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross * The source Renderscript file: struct_field.rs
20f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross */
21f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
22f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Grosspackage struct_field;
23f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
24f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Grossimport android.renderscript.*;
25f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Grossimport struct_field.struct_fieldBitCode;
26f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
27f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross/**
28f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross * @hide
29f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross */
30f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Grosspublic class ScriptField_Outer extends android.renderscript.Script.FieldBase {
31f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    static public class Item {
32f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
33f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        ScriptField_InnerOne.Item innerOneA;
34f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        long l;
35f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        ScriptField_InnerOne.Item innerOneB;
36f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        ScriptField_InnerTwo.Item[] innerTwo3;
37f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        ScriptField_InnerTwo.Item[] innerTwo2;
38f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        ScriptField_InnerOne.Item[] innerOne4;
39f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        ScriptField_InnerOne.Item innerOneC;
40f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
41f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        Item() {
42f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            innerOneA = new ScriptField_InnerOne.Item();
43f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            innerOneB = new ScriptField_InnerOne.Item();
44f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            innerTwo3 = new ScriptField_InnerTwo.Item[3];
45f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            for (int $ct = 0; $ct < 3; $ct++) {
46f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross                innerTwo3[$ct] = new ScriptField_InnerTwo.Item();
47f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            }
48f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
49f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            innerTwo2 = new ScriptField_InnerTwo.Item[2];
50f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            for (int $ct = 0; $ct < 2; $ct++) {
51f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross                innerTwo2[$ct] = new ScriptField_InnerTwo.Item();
52f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            }
53f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
54f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            innerOne4 = new ScriptField_InnerOne.Item[4];
55f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            for (int $ct = 0; $ct < 4; $ct++) {
56f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross                innerOne4[$ct] = new ScriptField_InnerOne.Item();
57f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            }
58f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
59f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            innerOneC = new ScriptField_InnerOne.Item();
60f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        }
61f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
62f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    }
63f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
64f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    private Item mItemArray[];
65f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    private FieldPacker mIOBuffer;
66f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    private static java.lang.ref.WeakReference<Element> mElementCache = new java.lang.ref.WeakReference<Element>(null);
67f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    public static Element createElement(RenderScript rs) {
68f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        Element.Builder eb = new Element.Builder(rs);
69f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        eb.add(ScriptField_InnerOne.createElement(rs), "innerOneA");
70f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        eb.add(Element.U32(rs), "#rs_padding_1");
71f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        eb.add(Element.I64(rs), "l");
72f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        eb.add(ScriptField_InnerOne.createElement(rs), "innerOneB");
73f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        eb.add(ScriptField_InnerTwo.createElement(rs), "innerTwo3", 3);
74f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        eb.add(ScriptField_InnerTwo.createElement(rs), "innerTwo2", 2);
75f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        eb.add(ScriptField_InnerOne.createElement(rs), "innerOne4", 4);
76f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        eb.add(ScriptField_InnerOne.createElement(rs), "innerOneC");
77f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        return eb.create();
78f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    }
79f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
80f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    private  ScriptField_Outer(RenderScript rs) {
81f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        mItemArray = null;
82f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        mIOBuffer = null;
83f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        mElement = createElement(rs);
84f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    }
85f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
86f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    public  ScriptField_Outer(RenderScript rs, int count) {
87f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        mItemArray = null;
88f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        mIOBuffer = null;
89f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        mElement = createElement(rs);
90f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        init(rs, count);
91f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    }
92f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
93f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    public  ScriptField_Outer(RenderScript rs, int count, int usages) {
94f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        mItemArray = null;
95f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        mIOBuffer = null;
96f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        mElement = createElement(rs);
97f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        init(rs, count, usages);
98f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    }
99f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
100f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    public static ScriptField_Outer create1D(RenderScript rs, int dimX, int usages) {
101f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        ScriptField_Outer obj = new ScriptField_Outer(rs);
102f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        obj.mAllocation = Allocation.createSized(rs, obj.mElement, dimX, usages);
103f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        return obj;
104f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    }
105f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
106f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    public static ScriptField_Outer create1D(RenderScript rs, int dimX) {
107f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        return create1D(rs, dimX, Allocation.USAGE_SCRIPT);
108f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    }
109f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
110f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    public static ScriptField_Outer create2D(RenderScript rs, int dimX, int dimY) {
111f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        return create2D(rs, dimX, dimY, Allocation.USAGE_SCRIPT);
112f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    }
113f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
114f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    public static ScriptField_Outer create2D(RenderScript rs, int dimX, int dimY, int usages) {
115f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        ScriptField_Outer obj = new ScriptField_Outer(rs);
116f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        Type.Builder b = new Type.Builder(rs, obj.mElement);
117f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        b.setX(dimX);
118f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        b.setY(dimY);
119f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        Type t = b.create();
120f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        obj.mAllocation = Allocation.createTyped(rs, t, usages);
121f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        return obj;
122f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    }
123f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
124f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    public static Type.Builder createTypeBuilder(RenderScript rs) {
125f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        Element e = createElement(rs);
126f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        return new Type.Builder(rs, e);
127f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    }
128f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
129f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    public static ScriptField_Outer createCustom(RenderScript rs, Type.Builder tb, int usages) {
130f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        ScriptField_Outer obj = new ScriptField_Outer(rs);
131f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        Type t = tb.create();
132f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (t.getElement() != obj.mElement) {
133f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            throw new RSIllegalArgumentException("Type.Builder did not match expected element type.");
134f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        }
135f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        obj.mAllocation = Allocation.createTyped(rs, t, usages);
136f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        return obj;
137f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    }
138f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
139f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    private void copyToArrayLocal(Item i, FieldPacker fp) {
140f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        fp.addI32(i.innerOneA.x);
141f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        fp.addI32(i.innerOneA.y);
142f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        fp.addF32(i.innerOneA.f);
143f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        fp.skip(4);
144f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        fp.addI64(i.l);
145f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        fp.addI32(i.innerOneB.x);
146f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        fp.addI32(i.innerOneB.y);
147f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        fp.addF32(i.innerOneB.f);
148f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        for (int ct2 = 0; ct2 < 3; ct2++) {
149f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            fp.addI8(i.innerTwo3[ct2].z);
150f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            fp.skip(3);
151f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            fp.addI32(i.innerTwo3[ct2].innerOne.x);
152f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            fp.addI32(i.innerTwo3[ct2].innerOne.y);
153f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            fp.addF32(i.innerTwo3[ct2].innerOne.f);
154f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        }
155f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
156f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        for (int ct2 = 0; ct2 < 2; ct2++) {
157f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            fp.addI8(i.innerTwo2[ct2].z);
158f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            fp.skip(3);
159f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            fp.addI32(i.innerTwo2[ct2].innerOne.x);
160f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            fp.addI32(i.innerTwo2[ct2].innerOne.y);
161f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            fp.addF32(i.innerTwo2[ct2].innerOne.f);
162f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        }
163f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
164f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        for (int ct2 = 0; ct2 < 4; ct2++) {
165f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            fp.addI32(i.innerOne4[ct2].x);
166f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            fp.addI32(i.innerOne4[ct2].y);
167f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            fp.addF32(i.innerOne4[ct2].f);
168f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        }
169f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
170f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        fp.addI32(i.innerOneC.x);
171f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        fp.addI32(i.innerOneC.y);
172f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        fp.addF32(i.innerOneC.f);
173f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    }
174f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
175f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    private void copyToArray(Item i, int index) {
176f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (mIOBuffer == null) mIOBuffer = new FieldPacker(mElement.getBytesSize() * getType().getX()/* count */);
177f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        mIOBuffer.reset(index * mElement.getBytesSize());
178f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        copyToArrayLocal(i, mIOBuffer);
179f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    }
180f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
181f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    public synchronized void set(Item i, int index, boolean copyNow) {
182f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (mItemArray == null) mItemArray = new Item[getType().getX() /* count */];
183f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        mItemArray[index] = i;
184f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (copyNow)  {
185f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            copyToArray(i, index);
186f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            FieldPacker fp = new FieldPacker(mElement.getBytesSize());
187f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            copyToArrayLocal(i, fp);
188f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            mAllocation.setFromFieldPacker(index, fp);
189f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        }
190f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
191f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    }
192f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
193f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    public synchronized Item get(int index) {
194f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (mItemArray == null) return null;
195f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        return mItemArray[index];
196f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    }
197f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
198f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    public synchronized void set_innerOneA(int index, ScriptField_InnerOne.Item v, boolean copyNow) {
199f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (mIOBuffer == null) mIOBuffer = new FieldPacker(mElement.getBytesSize() * getType().getX()/* count */);
200f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (mItemArray == null) mItemArray = new Item[getType().getX() /* count */];
201f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (mItemArray[index] == null) mItemArray[index] = new Item();
202f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        mItemArray[index].innerOneA = v;
203f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (copyNow)  {
204f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            mIOBuffer.reset(index * mElement.getBytesSize());
205f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            mIOBuffer.addI32(v.x);
206f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            mIOBuffer.addI32(v.y);
207f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            mIOBuffer.addF32(v.f);
208f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            FieldPacker fp = new FieldPacker(12);
209f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            fp.addI32(v.x);
210f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            fp.addI32(v.y);
211f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            fp.addF32(v.f);
212f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            mAllocation.setFromFieldPacker(index, 0, fp);
213f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        }
214f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
215f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    }
216f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
217f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    public synchronized void set_l(int index, long v, boolean copyNow) {
218f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (mIOBuffer == null) mIOBuffer = new FieldPacker(mElement.getBytesSize() * getType().getX()/* count */);
219f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (mItemArray == null) mItemArray = new Item[getType().getX() /* count */];
220f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (mItemArray[index] == null) mItemArray[index] = new Item();
221f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        mItemArray[index].l = v;
222f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (copyNow)  {
223f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            mIOBuffer.reset(index * mElement.getBytesSize() + 16);
224f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            mIOBuffer.addI64(v);
225f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            FieldPacker fp = new FieldPacker(8);
226f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            fp.addI64(v);
227f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            mAllocation.setFromFieldPacker(index, 2, fp);
228f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        }
229f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
230f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    }
231f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
232f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    public synchronized void set_innerOneB(int index, ScriptField_InnerOne.Item v, boolean copyNow) {
233f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (mIOBuffer == null) mIOBuffer = new FieldPacker(mElement.getBytesSize() * getType().getX()/* count */);
234f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (mItemArray == null) mItemArray = new Item[getType().getX() /* count */];
235f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (mItemArray[index] == null) mItemArray[index] = new Item();
236f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        mItemArray[index].innerOneB = v;
237f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (copyNow)  {
238f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            mIOBuffer.reset(index * mElement.getBytesSize() + 24);
239f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            mIOBuffer.addI32(v.x);
240f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            mIOBuffer.addI32(v.y);
241f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            mIOBuffer.addF32(v.f);
242f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            FieldPacker fp = new FieldPacker(12);
243f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            fp.addI32(v.x);
244f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            fp.addI32(v.y);
245f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            fp.addF32(v.f);
246f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            mAllocation.setFromFieldPacker(index, 3, fp);
247f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        }
248f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
249f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    }
250f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
251f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    public synchronized void set_innerTwo3(int index, ScriptField_InnerTwo.Item[] v, boolean copyNow) {
252f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (mIOBuffer == null) mIOBuffer = new FieldPacker(mElement.getBytesSize() * getType().getX()/* count */);
253f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (mItemArray == null) mItemArray = new Item[getType().getX() /* count */];
254f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (mItemArray[index] == null) mItemArray[index] = new Item();
255f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        mItemArray[index].innerTwo3 = v;
256f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (copyNow)  {
257f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            mIOBuffer.reset(index * mElement.getBytesSize() + 36);
258f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            for (int ct1 = 0; ct1 < 3; ct1++) {
259f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross                mIOBuffer.addI8(v[ct1].z);
260f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross                mIOBuffer.skip(3);
261f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross                mIOBuffer.addI32(v[ct1].innerOne.x);
262f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross                mIOBuffer.addI32(v[ct1].innerOne.y);
263f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross                mIOBuffer.addF32(v[ct1].innerOne.f);
264f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            }
265f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
266f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            FieldPacker fp = new FieldPacker(48);
267f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            for (int ct1 = 0; ct1 < 3; ct1++) {
268f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross                fp.addI8(v[ct1].z);
269f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross                fp.skip(3);
270f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross                fp.addI32(v[ct1].innerOne.x);
271f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross                fp.addI32(v[ct1].innerOne.y);
272f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross                fp.addF32(v[ct1].innerOne.f);
273f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            }
274f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
275f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            mAllocation.setFromFieldPacker(index, 4, fp);
276f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        }
277f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
278f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    }
279f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
280f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    public synchronized void set_innerTwo2(int index, ScriptField_InnerTwo.Item[] v, boolean copyNow) {
281f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (mIOBuffer == null) mIOBuffer = new FieldPacker(mElement.getBytesSize() * getType().getX()/* count */);
282f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (mItemArray == null) mItemArray = new Item[getType().getX() /* count */];
283f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (mItemArray[index] == null) mItemArray[index] = new Item();
284f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        mItemArray[index].innerTwo2 = v;
285f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (copyNow)  {
286f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            mIOBuffer.reset(index * mElement.getBytesSize() + 84);
287f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            for (int ct1 = 0; ct1 < 2; ct1++) {
288f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross                mIOBuffer.addI8(v[ct1].z);
289f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross                mIOBuffer.skip(3);
290f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross                mIOBuffer.addI32(v[ct1].innerOne.x);
291f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross                mIOBuffer.addI32(v[ct1].innerOne.y);
292f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross                mIOBuffer.addF32(v[ct1].innerOne.f);
293f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            }
294f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
295f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            FieldPacker fp = new FieldPacker(32);
296f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            for (int ct1 = 0; ct1 < 2; ct1++) {
297f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross                fp.addI8(v[ct1].z);
298f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross                fp.skip(3);
299f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross                fp.addI32(v[ct1].innerOne.x);
300f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross                fp.addI32(v[ct1].innerOne.y);
301f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross                fp.addF32(v[ct1].innerOne.f);
302f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            }
303f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
304f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            mAllocation.setFromFieldPacker(index, 5, fp);
305f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        }
306f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
307f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    }
308f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
309f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    public synchronized void set_innerOne4(int index, ScriptField_InnerOne.Item[] v, boolean copyNow) {
310f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (mIOBuffer == null) mIOBuffer = new FieldPacker(mElement.getBytesSize() * getType().getX()/* count */);
311f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (mItemArray == null) mItemArray = new Item[getType().getX() /* count */];
312f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (mItemArray[index] == null) mItemArray[index] = new Item();
313f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        mItemArray[index].innerOne4 = v;
314f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (copyNow)  {
315f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            mIOBuffer.reset(index * mElement.getBytesSize() + 116);
316f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            for (int ct1 = 0; ct1 < 4; ct1++) {
317f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross                mIOBuffer.addI32(v[ct1].x);
318f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross                mIOBuffer.addI32(v[ct1].y);
319f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross                mIOBuffer.addF32(v[ct1].f);
320f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            }
321f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
322f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            FieldPacker fp = new FieldPacker(48);
323f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            for (int ct1 = 0; ct1 < 4; ct1++) {
324f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross                fp.addI32(v[ct1].x);
325f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross                fp.addI32(v[ct1].y);
326f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross                fp.addF32(v[ct1].f);
327f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            }
328f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
329f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            mAllocation.setFromFieldPacker(index, 6, fp);
330f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        }
331f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
332f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    }
333f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
334f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    public synchronized void set_innerOneC(int index, ScriptField_InnerOne.Item v, boolean copyNow) {
335f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (mIOBuffer == null) mIOBuffer = new FieldPacker(mElement.getBytesSize() * getType().getX()/* count */);
336f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (mItemArray == null) mItemArray = new Item[getType().getX() /* count */];
337f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (mItemArray[index] == null) mItemArray[index] = new Item();
338f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        mItemArray[index].innerOneC = v;
339f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (copyNow)  {
340f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            mIOBuffer.reset(index * mElement.getBytesSize() + 164);
341f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            mIOBuffer.addI32(v.x);
342f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            mIOBuffer.addI32(v.y);
343f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            mIOBuffer.addF32(v.f);
344f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            FieldPacker fp = new FieldPacker(12);
345f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            fp.addI32(v.x);
346f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            fp.addI32(v.y);
347f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            fp.addF32(v.f);
348f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            mAllocation.setFromFieldPacker(index, 7, fp);
349f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        }
350f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
351f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    }
352f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
353f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    public synchronized ScriptField_InnerOne.Item get_innerOneA(int index) {
354f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (mItemArray == null) return null;
355f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        return mItemArray[index].innerOneA;
356f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    }
357f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
358f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    public synchronized long get_l(int index) {
359f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (mItemArray == null) return 0;
360f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        return mItemArray[index].l;
361f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    }
362f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
363f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    public synchronized ScriptField_InnerOne.Item get_innerOneB(int index) {
364f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (mItemArray == null) return null;
365f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        return mItemArray[index].innerOneB;
366f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    }
367f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
368f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    public synchronized ScriptField_InnerTwo.Item[] get_innerTwo3(int index) {
369f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (mItemArray == null) return null;
370f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        return mItemArray[index].innerTwo3;
371f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    }
372f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
373f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    public synchronized ScriptField_InnerTwo.Item[] get_innerTwo2(int index) {
374f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (mItemArray == null) return null;
375f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        return mItemArray[index].innerTwo2;
376f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    }
377f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
378f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    public synchronized ScriptField_InnerOne.Item[] get_innerOne4(int index) {
379f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (mItemArray == null) return null;
380f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        return mItemArray[index].innerOne4;
381f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    }
382f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
383f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    public synchronized ScriptField_InnerOne.Item get_innerOneC(int index) {
384f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (mItemArray == null) return null;
385f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        return mItemArray[index].innerOneC;
386f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    }
387f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
388f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    public synchronized void copyAll() {
389f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        for (int ct = 0; ct < mItemArray.length; ct++) copyToArray(mItemArray[ct], ct);
390f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        mAllocation.setFromFieldPacker(0, mIOBuffer);
391f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    }
392f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
393f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    public synchronized void resize(int newSize) {
394f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (mItemArray != null)  {
395f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            int oldSize = mItemArray.length;
396f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            int copySize = Math.min(oldSize, newSize);
397f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            if (newSize == oldSize) return;
398f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            Item ni[] = new Item[newSize];
399f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            System.arraycopy(mItemArray, 0, ni, 0, copySize);
400f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross            mItemArray = ni;
401f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        }
402f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
403f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        mAllocation.resize(newSize);
404f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross        if (mIOBuffer != null) mIOBuffer = new FieldPacker(mElement.getBytesSize() * getType().getX()/* count */);
405f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross    }
406f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
407f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross}
408f3edb0046f0c1389f1318f8e7d4ea3ab9453d599David Gross
409