Esempio n. 1
0
        private static frame_s read_frame(StreamReader file)
        {
            frame_s fr = new frame_s();
            fr.buoys = new List<buoy_s>();

            // name
            string line = file.ReadLine();
            string[] tokens = line.Split(stringSeparators, StringSplitOptions.RemoveEmptyEntries);
            fr.name = tokens[1];

            // id
            line = file.ReadLine();
            tokens = line.Split(stringSeparators, StringSplitOptions.RemoveEmptyEntries);
            if (!int.TryParse(tokens[1], out fr.id))
            {
                throw new Exception("Error parsing frame id");
            }

            // buoys
            while (!file.EndOfStream)
            {
                line = file.ReadLine();
                if (line.Contains("<buoy>"))
                {
                    fr.buoys.Add(read_buoy(file));
                }
                if (line.Contains("<end_frame>"))
                {
                    return fr;
                }
            }
            throw new Exception("Error reading frame");
        }
Esempio n. 2
0
 private static void write_frame(StreamWriter file, frame_s frame, int prev)
 {
     string pre = "";
     for (int i = 0; i < prev; i++)
     {
         pre += " ";
     }
     file.WriteLine(pre + "<frame>");
     file.WriteLine(pre + "name: " + frame.name);
     file.WriteLine(pre + "id: " + frame.id.ToString());
     foreach (buoy_s buoy in frame.buoys)
     {
         write_buoy(file, buoy, prev + 2);
     }
     file.WriteLine(pre + "<end_frame>");
 }