68 lines
No EOL
1.9 KiB
C#
68 lines
No EOL
1.9 KiB
C#
#region --- License ---
|
|
/* Licensed under the MIT/X11 license.
|
|
* Copyright (c) 2006-2008 the OpenTK team.
|
|
* This notice may not be removed.
|
|
* See license.txt for licensing detailed licensing details.
|
|
*/
|
|
#endregion
|
|
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Text;
|
|
using System.IO;
|
|
using System.Xml;
|
|
|
|
#if false
|
|
|
|
using System.Xml.Serialization;
|
|
|
|
|
|
namespace Examples.Tests
|
|
{
|
|
[Example("Serialization", ExampleCategory.Test)]
|
|
public class MathSerialization
|
|
{
|
|
public static void Main()
|
|
{
|
|
using (MemoryStream stream = new MemoryStream())
|
|
{
|
|
XmlSerializer xs = new XmlSerializer(typeof(Matrix4));
|
|
|
|
{
|
|
XmlWriterSettings settings = new XmlWriterSettings();
|
|
settings.NewLineHandling = NewLineHandling.Entitize;
|
|
settings.Indent = true;
|
|
XmlWriter xw = XmlTextWriter.Create(stream, settings);
|
|
|
|
xs.Serialize(xw, Matrix4.Identity);
|
|
|
|
xw.Close();
|
|
}
|
|
|
|
stream.Position = 0;
|
|
byte[] text = new byte[stream.Length];
|
|
int pos = 0;
|
|
do
|
|
{
|
|
pos += stream.Read(text, pos, (int)stream.Length);
|
|
}
|
|
while (pos != stream.Length);
|
|
|
|
Console.WriteLine(System.Text.Encoding.Default.GetChars(text));
|
|
|
|
stream.Position = 0;
|
|
Matrix4 matrix = (Matrix4)xs.Deserialize(stream);
|
|
|
|
if (Matrix4.Identity == matrix)
|
|
Console.WriteLine("Matrix deserialized correctly.");
|
|
else
|
|
Console.WriteLine("Error deserializing matrix.");
|
|
|
|
Console.WriteLine("Press any key to continue...");
|
|
Console.ReadKey(false);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
#endif |