IPTVFeeder Class Reference

Base class for UDP and RTSP data sources for IPTVRecorder. More...

#include <iptvfeeder.h>

Inheritance diagram for IPTVFeeder:
IPTVFeederLive IPTVFeederFile IPTVFeederHLS IPTVFeederRTP IPTVFeederRTSP IPTVFeederUDP

List of all members.

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

Detailed Description

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().

See also:
IPTVFeederWrapper

Definition at line 25 of file iptvfeeder.h.


Constructor & Destructor Documentation

IPTVFeeder::IPTVFeeder (  )  [inline]

Definition at line 28 of file iptvfeeder.h.

virtual IPTVFeeder::~IPTVFeeder (  )  [inline, virtual]

Definition at line 29 of file iptvfeeder.h.


Member Function Documentation

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.

See also:
Stop(void)

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.

See also:
Run(void)

Implemented in IPTVFeederHLS, and IPTVFeederLive.

Referenced by IPTVFeederWrapper::Stop(), and IPTVFeederWrapper::~IPTVFeederWrapper().

virtual void IPTVFeeder::AddListener ( TSDataListener  )  [pure virtual]
virtual void IPTVFeeder::RemoveListener ( TSDataListener  )  [pure virtual]

The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends
Generated on Mon May 28 06:42:07 2012 for MythTV by  doxygen 1.6.3