| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 | using System;using System.IO;namespace MediaBrowser.Model.Serialization{    public interface IProtobufSerializer    {        /// <summary>        /// Serializes to stream.        /// </summary>        /// <param name="obj">The obj.</param>        /// <param name="stream">The stream.</param>        /// <exception cref="System.ArgumentNullException">obj</exception>        void SerializeToStream(object obj, Stream stream);        /// <summary>        /// Deserializes from stream.        /// </summary>        /// <param name="stream">The stream.</param>        /// <param name="type">The type.</param>        /// <returns>System.Object.</returns>        /// <exception cref="System.ArgumentNullException">stream</exception>        object DeserializeFromStream(Stream stream, Type type);        /// <summary>        /// Deserializes from stream.        /// </summary>        /// <typeparam name="T"></typeparam>        /// <param name="stream">The stream.</param>        /// <returns>``0.</returns>        T DeserializeFromStream<T>(Stream stream)            where T : class;        /// <summary>        /// Serializes to file.        /// </summary>        /// <typeparam name="T"></typeparam>        /// <param name="obj">The obj.</param>        /// <param name="file">The file.</param>        /// <exception cref="System.ArgumentNullException">file</exception>        void SerializeToFile<T>(T obj, string file);        /// <summary>        /// Deserializes from file.        /// </summary>        /// <typeparam name="T"></typeparam>        /// <param name="file">The file.</param>        /// <returns>``0.</returns>        /// <exception cref="System.ArgumentNullException">file</exception>        T DeserializeFromFile<T>(string file)            where T : class;        /// <summary>        /// Serializes to bytes.        /// </summary>        /// <typeparam name="T"></typeparam>        /// <param name="obj">The obj.</param>        /// <returns>System.Byte[][].</returns>        /// <exception cref="System.ArgumentNullException">obj</exception>        byte[] SerializeToBytes<T>(T obj)            where T : class;    }}
 |