00001 00007 #ifndef _IPTV_FEEDER_FILE_H_ 00008 #define _IPTV_FEEDER_FILE_H_ 00009 00010 // MythTV headers 00011 #include "iptvfeederlive.h" 00012 00013 class TSDataListener; 00014 class ByteStreamFileSource; 00015 class IPTVMediaSink; 00016 00017 00018 class IPTVFeederFile : public IPTVFeederLive 00019 { 00020 public: 00021 IPTVFeederFile(); 00022 virtual ~IPTVFeederFile(); 00023 00024 bool CanHandle(const QString &url) const { return IsFile(url); } 00025 bool IsOpen(void) const { return _source; } 00026 00027 bool Open(const QString &url); 00028 void Close(void); 00029 00030 void AddListener(TSDataListener*); 00031 void RemoveListener(TSDataListener*); 00032 00033 static bool IsFile(const QString &url); 00034 00035 private: 00036 IPTVFeederFile &operator=(const IPTVFeederFile&); 00037 IPTVFeederFile(const IPTVFeederFile&); 00038 00039 private: 00040 ByteStreamFileSource *_source; 00041 IPTVMediaSink *_sink; 00042 }; 00043 00044 #endif //_IPTV_FEEDER_FILE_H_
1.5.5