using Vellum;
namespace Azimuth.Vellum
{
///
/// Saves a Vector as its two coordinates.
///
public sealed class VectorConverter : SaveConverter
{
public override SaveNode Write(Vector value, SaveSession session)
{
SaveNode returnMe = SaveNode.NewTable();
returnMe.Entries["X"] = session.ToNode(value.X);
returnMe.Entries["Y"] = session.ToNode(value.Y);
return returnMe;
}
public override Vector Read(SaveNode node, SaveSession session)
{
return new Vector(
session.FromNode(node.RequireEntry("X")),
session.FromNode(node.RequireEntry("Y")));
}
}
}