/[xmltv_parser]/trunk/libxmltv/Interfaces/Interfaces.cs
ViewVC logotype

Diff of /trunk/libxmltv/Interfaces/Interfaces.cs

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

--- trunk/libxmltv/Interfaces/Interfaces.cs	2013/03/07 11:36:00	25
+++ trunk/libxmltv/Interfaces/Interfaces.cs	2013/03/08 06:15:44	50
@@ -4,19 +4,22 @@
 using System.Text;
 using System.IO;
 using System.Xml.Linq;
+using libxmltv.Core;
 
 namespace libxmltv.Interfaces
 {
-    public interface IXMLTV_LOADER
+    public interface IXMLTVLoader
     {
         FileInfo XmlFile { get; }
-        XDocument XmlDoc { get; }
+        string XmlDoc { get; }
     }
-    public interface IXMLTV_PARSER
+    public interface IXMLTVParser
     {
-        IXMLTV_LOADER XMLTV_LOADER { get; }
-        void TestParse();
+        //IXMLTV_LOADER XMLTV_LOADER { get; }
+        //void TestParse();
         IXMLTVSource Source { get; }
+        Dictionary<string, IXMLTVChannel> Channels { get; }
+        Dictionary<int, IXMLTVProgram> Programs { get; }
     }
 
     public interface IXMLTVSource
@@ -26,4 +29,44 @@
         string GeneratorUrl { get; }
         string ToString();
     }
-}
+    public interface IXMLTVChannel
+    {
+        string Id { get; }
+        int Number { get; }
+        string CallSign { get; }
+        string Name { get; }
+        string ToString();
+    }    
+    public interface IXMLTVProgram
+    {
+        int Id { get; }
+        DateTime Start { get; }
+        DateTime Stop { get; }
+        IXMLTVChannel Channel { get; }
+        string Title { get; }
+        string SubTitle { get; }
+        string Description { get; }
+        string ToString();
+    }
+    public interface IXMLTVRuntimeInstance : IXMLTVLoader, IXMLTVParser 
+    {
+        //bool IsDisposing { get; }
+        //IXMLTVSerializer<IXMLTVRuntimeInstance> Serializer { get; }
+    }
+
+    public interface IXMLTVSerializer<T>
+    {
+        bool Serialize(string file);
+        bool Serialize(Stream stream);
+        T DeSerialize(string file, out bool status);
+        T DeSerialize(Stream stream, out bool status);
+    }
+
+    public interface IXMLTV<INTERFACE, CLASS> : IXMLTVSerializer<INTERFACE>
+        where CLASS : class,INTERFACE
+    {
+        //IXMLTVSerializer<CLASS> CreateSerializer();
+        INTERFACE GetInstance();
+        //CLASS GetInternalInstance();
+    }
+}
\ No newline at end of file

 

  ViewVC Help
Powered by ViewVC 1.1.22