protected static void write_node(BinaryWriter writer, IGenericFst fst, int index)
{
Intarray inputs = new Intarray();
Intarray targets = new Intarray();
Intarray outputs = new Intarray();
Floatarray costs = new Floatarray();
fst.Arcs(inputs, targets, outputs, costs, index);
int narcs = targets.Length();
write_float(writer, fst.GetAcceptCost(index));
write_int64_LE(writer, narcs);
for (int i = 0; i < narcs; i++)
{
write_int32_LE(writer, inputs[i]);
write_int32_LE(writer, outputs[i]);
write_float(writer, costs[i]);
write_int32_LE(writer, targets[i]);
}
}