using System.IO;
using System.Runtime.Serialization;
namespace Netron.Diagramming.Core {
///
/// Generic implementation of the interface.
///
///
public class GenericFormatter : IGenericFormatter where F : IFormatter, new() {
IFormatter m_Formatter = new F();
///
/// Deserializes the specified serialization stream.
///
/// The serialization stream.
///
public T Deserialize(Stream serializationStream) {
return (T)m_Formatter.Deserialize(serializationStream);
}
///
/// Serializes the specified serialization stream.
///
/// The serialization stream.
/// A parameter of the generics Type T
public void Serialize(Stream serializationStream, T graph) {
m_Formatter.Serialize(serializationStream, graph);
}
}
}