/[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

revision 50 by william, Fri Mar 8 06:15:44 2013 UTC revision 64 by william, Sat Mar 9 00:59:05 2013 UTC
# Line 5  using System.Text; Line 5  using System.Text;
5  using System.IO;  using System.IO;
6  using System.Xml.Linq;  using System.Xml.Linq;
7  using libxmltv.Core;  using libxmltv.Core;
8    using System.ComponentModel;
9    
10  namespace libxmltv.Interfaces  namespace libxmltv.Interfaces
11  {  {
# Line 15  namespace libxmltv.Interfaces Line 16  namespace libxmltv.Interfaces
16      }      }
17      public interface IXMLTVParser      public interface IXMLTVParser
18      {      {
         //IXMLTV_LOADER XMLTV_LOADER { get; }  
         //void TestParse();  
19          IXMLTVSource Source { get; }          IXMLTVSource Source { get; }
20          Dictionary<string, IXMLTVChannel> Channels { get; }          Dictionary<string, IXMLTVChannel> Channels { get; }
21          Dictionary<int, IXMLTVProgram> Programs { get; }          Dictionary<int, IXMLTVProgram> Programs { get; }
# Line 36  namespace libxmltv.Interfaces Line 35  namespace libxmltv.Interfaces
35          string CallSign { get; }          string CallSign { get; }
36          string Name { get; }          string Name { get; }
37          string ToString();          string ToString();
38      }          }
39      public interface IXMLTVProgram      public interface IXMLTVProgram
40      {      {
41          int Id { get; }          int Id { get; }
# Line 48  namespace libxmltv.Interfaces Line 47  namespace libxmltv.Interfaces
47          string Description { get; }          string Description { get; }
48          string ToString();          string ToString();
49      }      }
50      public interface IXMLTVRuntimeInstance : IXMLTVLoader, IXMLTVParser      public interface IXMLTVRuntimeInstance : IXMLTVLoader, IXMLTVParser { }
51      {      public interface IXMLTVSerializer : IXMLTVSerializer<object> { }
         //bool IsDisposing { get; }  
         //IXMLTVSerializer<IXMLTVRuntimeInstance> Serializer { get; }  
     }  
   
52      public interface IXMLTVSerializer<T>      public interface IXMLTVSerializer<T>
53      {      {
54          bool Serialize(string file);          bool Serialize(string file);
# Line 61  namespace libxmltv.Interfaces Line 56  namespace libxmltv.Interfaces
56          T DeSerialize(string file, out bool status);          T DeSerialize(string file, out bool status);
57          T DeSerialize(Stream stream, out bool status);          T DeSerialize(Stream stream, out bool status);
58      }      }
59        public interface IXMLTV<INTERFACE, CLASS> : IXMLTV<INTERFACE, CLASS, EventArgs> where CLASS : class,INTERFACE { }
60      public interface IXMLTV<INTERFACE, CLASS> : IXMLTVSerializer<INTERFACE>      public interface IXMLTV<INTERFACE, CLASS, INSTANCECREATED_EVENTAGS> : IXMLTVSerializer<INTERFACE>, IDestroyInstance, IOnInstanceCreated, IGetInstance<INTERFACE>
61          where CLASS : class,INTERFACE          where CLASS : class,INTERFACE
62      {          where INSTANCECREATED_EVENTAGS : EventArgs { }
63          //IXMLTVSerializer<CLASS> CreateSerializer();      public interface ICreateSerializer : ICreateSerializer<object> { }
64          INTERFACE GetInstance();      public interface ICreateSerializer<CLASS> { IXMLTVSerializer<CLASS> CreateSerializer(); }
65          //CLASS GetInternalInstance();      public interface IGetInstance : IGetInstance<object> { }
66      }      public interface IGetInstance<T> { T GetInstance();    }
67        public interface IOnInstanceCreated : IOnInstanceCreated<EventArgs> { }
68        public interface IOnInstanceCreated<T> where T : EventArgs { EventHandler<T> OnInstanceCreated { get; set; } }
69        public interface ISerializer<T> { IXMLTVSerializer<T> Serializer { get; } }
70        public interface IDestroyInstance { void DestroyInstance();    }
71        public interface IGetCreatedInstanceEvent : IGetCreatedInstanceEvent<EventArgs> { }
72        public interface IGetCreatedInstanceEvent<T> where T : EventArgs { EventHandler<T> GetOnInstanceCreated();    }
73        public interface ISetCreatedInstanceEvent : ISetCreatedInstanceEvent<EventArgs> { }
74        public interface ISetCreatedInstanceEvent<T> where T : EventArgs { void SetOnInstanceCreated(EventHandler<T> event_instance);    }
75        public interface IRuntimeInstanceLoader : IRuntimeInstanceLoader<object> { }
76        public interface IRuntimeInstanceLoader<T> { T LoadFromInstance(T instance);    }
77  }  }

Legend:
Removed from v.50  
changed lines
  Added in v.64

  ViewVC Help
Powered by ViewVC 1.1.22