1 package org.lcsim.lcio;
2
3 import hep.io.sio.SIOInputStream;
4
5 import hep.io.sio.SIOOutputStream;
6 import java.io.IOException;
7 import org.lcsim.event.FloatVec;
8 import org.lcsim.event.base.BaseFloatVec;
9
10
11
12
13
14 class SIOFloatVec extends BaseFloatVec
15 {
16 SIOFloatVec(SIOInputStream in, int flag, int version) throws IOException
17 {
18 int size = in.readInt();
19 float[] data = new float[size];
20 for (int i = 0; i < size; i++)
21 data[i] = in.readFloat();
22 if(version>1002) in.readPTag(this);
23 setVec(data);
24 }
25
26 static void write(FloatVec vec, SIOOutputStream out, int flags) throws IOException
27 {
28 float[] data = vec.toFloatArray();
29 out.writeInt(data.length);
30 for (int i = 0; i < data.length; i++)
31 out.writeFloat(data[i]);
32 out.writePTag(vec) ;
33 }
34 }