/** Saves all graphs and also user connections, but does not close, nor opens the stream */
public void SerializeGraphsPart(AstarSerializer serializer)
{
//AstarSerializer serializer = new AstarSerializer ();
//serializer.OpenSerializeSettings ();
SizeProfiler.Initialize();
SizeProfiler.Begin("File", serializer.writerStream, false);
SizeProfiler.Begin("Graphs init", serializer.writerStream);
serializer.writerStream.Write(graphs.Length);
serializer.writerStream.Write(graphs.Length);
SizeProfiler.End("Graphs init", serializer.writerStream);
int[] masks = new int[graphs.Length];
for (int i = 0; i < graphs.Length; i++)
{
NavGraph graph = graphs[i];
int tmpMask = serializer.mask;
SizeProfiler.Begin("Graphs type " + i, serializer.writerStream);
serializer.AddAnchor("Graph" + i);
serializer.writerStream.Write(graph.GetType().Name);
serializer.writerStream.Write(graph.guid.ToString());
SizeProfiler.Begin("Graphs settings " + i, serializer.writerStream);
//Set an unique prefix for all variables in this graph
serializer.sPrefix = i.ToString();
serializer.SerializeSettings(graph, active);
serializer.sPrefix = "";
masks[i] = serializer.mask;
serializer.mask = tmpMask;
SizeProfiler.End("Graphs settings " + i, serializer.writerStream);
}
SizeProfiler.Begin("User Connections", serializer.writerStream);
serializer.SerializeUserConnections(userConnections);
SizeProfiler.End("User Connections", serializer.writerStream);
//data = (serializer.writerStream.BaseStream as System.IO.MemoryStream).ToArray ();
//serializer.Close ();
SizeProfiler.End("File", serializer.writerStream);
SizeProfiler.Log();
}