Base class for UDP and RTSP data sources for IPTVRecorder. More...
#include <iptvfeeder.h>
Public Member Functions | |
| IPTVFeeder () | |
| virtual | ~IPTVFeeder () |
| virtual bool | CanHandle (const QString &url) const =0 |
| Returns true iff the data feed can handle URL. | |
| virtual bool | IsOpen (void) const =0 |
| Returns true if the feeder is currently open. | |
| virtual bool | Open (const QString &url)=0 |
| Inits the feeder and opens the stream identified by url. | |
| virtual void | Close (void)=0 |
| Closes the stream and frees resources allocated in Open(). | |
| virtual void | Run (void)=0 |
| Reads the stream and sends data to its TSDataListener. | |
| virtual void | Stop (void)=0 |
| Tells Run(void) function that it should stop and exit cleanly. | |
| virtual void | AddListener (TSDataListener *)=0 |
| virtual void | RemoveListener (TSDataListener *)=0 |
Base class for UDP and RTSP data sources for IPTVRecorder.
This is the interface that needs to be implemented to support new protocols in the IPTVRecorder.
To register a new implementation, it must be instanciated in IPTVFeederWrapper::NewFeeder().
Definition at line 25 of file iptvfeeder.h.
| IPTVFeeder::IPTVFeeder | ( | ) | [inline] |
Definition at line 28 of file iptvfeeder.h.
| virtual IPTVFeeder::~IPTVFeeder | ( | ) | [inline, virtual] |
Definition at line 29 of file iptvfeeder.h.
| virtual bool IPTVFeeder::CanHandle | ( | const QString & | url | ) | const [pure virtual] |
Returns true iff the data feed can handle URL.
Implemented in IPTVFeederFile, IPTVFeederHLS, IPTVFeederRTP, IPTVFeederRTSP, and IPTVFeederUDP.
Referenced by IPTVFeederWrapper::InitFeeder().
| virtual bool IPTVFeeder::IsOpen | ( | void | ) | const [pure virtual] |
Returns true if the feeder is currently open.
Implemented in IPTVFeederFile, IPTVFeederHLS, IPTVFeederRTP, IPTVFeederRTSP, and IPTVFeederUDP.
Referenced by IPTVFeederWrapper::IsOpen().
| virtual bool IPTVFeeder::Open | ( | const QString & | url | ) | [pure virtual] |
Inits the feeder and opens the stream identified by url.
Implemented in IPTVFeederFile, IPTVFeederHLS, IPTVFeederRTP, IPTVFeederRTSP, and IPTVFeederUDP.
Referenced by IPTVFeederWrapper::Open().
| virtual void IPTVFeeder::Close | ( | void | ) | [pure virtual] |
Closes the stream and frees resources allocated in Open().
Implemented in IPTVFeederFile, IPTVFeederHLS, IPTVFeederRTP, IPTVFeederRTSP, and IPTVFeederUDP.
Referenced by IPTVFeederWrapper::Close(), and IPTVFeederWrapper::~IPTVFeederWrapper().
| virtual void IPTVFeeder::Run | ( | void | ) | [pure virtual] |
Reads the stream and sends data to its TSDataListener.
This is a blocking call : it should not exit until Stop() is called.
Implemented in IPTVFeederHLS, and IPTVFeederLive.
Referenced by IPTVFeederWrapper::Run().
| virtual void IPTVFeeder::Stop | ( | void | ) | [pure virtual] |
Tells Run(void) function that it should stop and exit cleanly.
This function blocks until Run(void) has finished up.
Implemented in IPTVFeederHLS, and IPTVFeederLive.
Referenced by IPTVFeederWrapper::Stop(), and IPTVFeederWrapper::~IPTVFeederWrapper().
| virtual void IPTVFeeder::AddListener | ( | TSDataListener * | ) | [pure virtual] |
Implemented in IPTVFeederFile, IPTVFeederLive, IPTVFeederRTP, IPTVFeederRTSP, and IPTVFeederUDP.
Referenced by IPTVFeederWrapper::AddListener(), and IPTVFeederWrapper::InitFeeder().
| virtual void IPTVFeeder::RemoveListener | ( | TSDataListener * | ) | [pure virtual] |
Implemented in IPTVFeederFile, IPTVFeederLive, IPTVFeederRTP, IPTVFeederRTSP, and IPTVFeederUDP.
Referenced by IPTVFeederWrapper::RemoveListener().
1.6.3