2007-09-15 17:38:38 +02:00
|
|
|
/*
|
|
|
|
* setup.h: IPTV plugin for the Video Disk Recorder
|
|
|
|
*
|
|
|
|
* See the README file for copyright information and how to reach the author.
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef __IPTV_SETUP_H
|
|
|
|
#define __IPTV_SETUP_H
|
|
|
|
|
|
|
|
#include <vdr/menuitems.h>
|
2010-03-04 16:34:21 +01:00
|
|
|
#include <vdr/sourceparams.h>
|
2007-10-06 02:02:50 +02:00
|
|
|
#include "common.h"
|
2007-09-15 17:38:38 +02:00
|
|
|
|
2010-03-04 16:34:21 +01:00
|
|
|
class cIptvTransponderParameters
|
|
|
|
{
|
|
|
|
friend class cIptvSourceParam;
|
|
|
|
private:
|
|
|
|
int sidscan;
|
|
|
|
int pidscan;
|
|
|
|
int protocol;
|
|
|
|
char address[MaxFileName];
|
|
|
|
int parameter;
|
|
|
|
public:
|
|
|
|
cIptvTransponderParameters(const char *Parameters = NULL);
|
|
|
|
int SidScan(void) const { return sidscan; }
|
|
|
|
int PidScan(void) const { return pidscan; }
|
|
|
|
int Protocol(void) const { return protocol; }
|
|
|
|
const char *Address(void) const { return address; }
|
|
|
|
int Parameter(void) const { return parameter; }
|
|
|
|
void SetSidScan(int SidScan) { sidscan = SidScan; }
|
|
|
|
void SetPidScan(int PidScan) { pidscan = PidScan; }
|
|
|
|
void SetProtocol(int Protocol) { protocol = Protocol; }
|
|
|
|
void SetAddress(const char *Address) { strncpy(address, Address, sizeof(address)); }
|
|
|
|
void SetParameter(int Parameter) { parameter = Parameter; }
|
|
|
|
cString ToString(char Type) const;
|
|
|
|
bool Parse(const char *s);
|
|
|
|
};
|
|
|
|
|
|
|
|
class cIptvSourceParam : public cSourceParam
|
|
|
|
{
|
|
|
|
private:
|
|
|
|
enum {
|
|
|
|
eProtocolUDP,
|
|
|
|
eProtocolHTTP,
|
|
|
|
eProtocolFILE,
|
|
|
|
eProtocolEXT,
|
|
|
|
eProtocolCount
|
|
|
|
};
|
|
|
|
int param;
|
|
|
|
cChannel data;
|
|
|
|
cIptvTransponderParameters itp;
|
|
|
|
const char *protocols[eProtocolCount];
|
|
|
|
public:
|
|
|
|
cIptvSourceParam(char Source, const char *Description);
|
|
|
|
virtual void SetData(cChannel *Channel);
|
|
|
|
virtual void GetData(cChannel *Channel);
|
|
|
|
virtual cOsdItem *GetOsdItem(void);
|
|
|
|
};
|
|
|
|
|
2007-09-15 17:38:38 +02:00
|
|
|
class cIptvPluginSetup : public cMenuSetupPage
|
|
|
|
{
|
|
|
|
private:
|
2007-09-16 15:38:20 +02:00
|
|
|
int tsBufferSize;
|
|
|
|
int tsBufferPrefill;
|
2007-10-20 19:26:46 +02:00
|
|
|
int extProtocolBasePort;
|
2007-09-30 23:38:31 +02:00
|
|
|
int sectionFiltering;
|
2007-10-06 02:02:50 +02:00
|
|
|
int numDisabledFilters;
|
|
|
|
int disabledFilterIndexes[SECTION_FILTER_TABLE_SIZE];
|
|
|
|
const char *disabledFilterNames[SECTION_FILTER_TABLE_SIZE];
|
2008-01-19 17:24:40 +01:00
|
|
|
cVector<const char*> help;
|
2007-10-06 02:02:50 +02:00
|
|
|
|
2007-10-06 22:57:53 +02:00
|
|
|
eOSState ShowInfo(void);
|
2009-03-20 17:00:17 +01:00
|
|
|
void Setup(void);
|
2007-10-06 02:02:50 +02:00
|
|
|
void StoreFilters(const char *Name, int *Values);
|
2007-09-15 17:38:38 +02:00
|
|
|
|
|
|
|
protected:
|
|
|
|
virtual eOSState ProcessKey(eKeys Key);
|
|
|
|
virtual void Store(void);
|
|
|
|
|
|
|
|
public:
|
|
|
|
cIptvPluginSetup();
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif // __IPTV_SETUP_H
|