vdr-plugin-iptv/streamer.h

40 lines
902 B
C
Raw Normal View History

2007-09-12 19:28:59 +02:00
/*
* streamer.h: IPTV plugin for the Video Disk Recorder
*
* See the README file for copyright information and how to reach the author.
*
*/
#ifndef __IPTV_STREAMER_H
#define __IPTV_STREAMER_H
#include <arpa/inet.h>
#include <vdr/thread.h>
#include <vdr/ringbuffer.h>
2007-09-14 17:44:25 +02:00
#include "protocolif.h"
2007-10-05 21:00:44 +02:00
#include "statistics.h"
2007-09-14 17:44:25 +02:00
2007-10-10 00:12:17 +02:00
class cIptvStreamer : public cThread, public cIptvStreamerStatistics {
2007-09-12 19:28:59 +02:00
private:
2007-09-14 17:44:25 +02:00
cRingBufferLinear* ringBuffer;
2008-09-10 16:22:36 +02:00
cCondWait sleep;
2009-02-26 15:04:12 +01:00
unsigned char* packetBuffer;
unsigned int packetBufferLen;
2007-09-14 17:44:25 +02:00
cIptvProtocolIf* protocol;
2009-03-20 23:56:37 +01:00
protected:
virtual void Action(void);
2007-09-12 19:28:59 +02:00
public:
2009-02-26 15:04:12 +01:00
cIptvStreamer(cRingBufferLinear* RingBuffer, unsigned int PacketLen);
2007-09-12 19:28:59 +02:00
virtual ~cIptvStreamer();
bool Set(const char* Location, const int Parameter, const int Index, cIptvProtocolIf* Protocol);
2007-09-14 17:44:25 +02:00
bool Open(void);
bool Close(void);
2007-10-08 00:54:09 +02:00
cString GetInformation(void);
2007-09-12 19:28:59 +02:00
};
#endif // __IPTV_STREAMER_H