diff options
Diffstat (limited to 'server/setup.c')
-rw-r--r-- | server/setup.c | 46 |
1 files changed, 18 insertions, 28 deletions
diff --git a/server/setup.c b/server/setup.c index 381b8d8..862c917 100644 --- a/server/setup.c +++ b/server/setup.c @@ -14,14 +14,16 @@ cStreamdevServerSetup::cStreamdevServerSetup(void) { MaxClients = 5; StartVTPServer = true; VTPServerPort = 2004; + VTPPriority = 0; LoopPrevention = false; StartHTTPServer = true; HTTPServerPort = 3000; + HTTPPriority = 0; HTTPStreamType = stTS; StartIGMPServer = false; IGMPClientPort = 1234; + IGMPPriority = 0; IGMPStreamType = stTS; - SuspendMode = smAlways; AllowSuspend = false; strcpy(VTPBindIP, "0.0.0.0"); strcpy(HTTPBindIP, "0.0.0.0"); @@ -33,17 +35,19 @@ bool cStreamdevServerSetup::SetupParse(const char *Name, const char *Value) { else if (strcmp(Name, "MaxClients") == 0) MaxClients = atoi(Value); else if (strcmp(Name, "StartServer") == 0) StartVTPServer = atoi(Value); else if (strcmp(Name, "ServerPort") == 0) VTPServerPort = atoi(Value); + else if (strcmp(Name, "VTPPriority") == 0) VTPPriority = atoi(Value); else if (strcmp(Name, "VTPBindIP") == 0) strcpy(VTPBindIP, Value); else if (strcmp(Name, "LoopPrevention") == 0) LoopPrevention = atoi(Value); else if (strcmp(Name, "StartHTTPServer") == 0) StartHTTPServer = atoi(Value); else if (strcmp(Name, "HTTPServerPort") == 0) HTTPServerPort = atoi(Value); + else if (strcmp(Name, "HTTPPriority") == 0) HTTPPriority = atoi(Value); else if (strcmp(Name, "HTTPStreamType") == 0) HTTPStreamType = atoi(Value); else if (strcmp(Name, "HTTPBindIP") == 0) strcpy(HTTPBindIP, Value); else if (strcmp(Name, "StartIGMPServer") == 0) StartIGMPServer = atoi(Value); else if (strcmp(Name, "IGMPClientPort") == 0) IGMPClientPort = atoi(Value); + else if (strcmp(Name, "IGMPPriority") == 0) IGMPPriority = atoi(Value); else if (strcmp(Name, "IGMPStreamType") == 0) IGMPStreamType = atoi(Value); else if (strcmp(Name, "IGMPBindIP") == 0) strcpy(IGMPBindIP, Value); - else if (strcmp(Name, "SuspendMode") == 0) SuspendMode = atoi(Value); else if (strcmp(Name, "AllowSuspend") == 0) AllowSuspend = atoi(Value); else return false; return true; @@ -57,12 +61,6 @@ const char* cStreamdevServerMenuSetupPage::StreamTypes[st_Count - 1] = { "EXT" }; -const char* cStreamdevServerMenuSetupPage::SuspendModes[sm_Count] = { - trNOOP("Offer suspend mode"), - trNOOP("Always suspended"), - trNOOP("Never suspended") -}; - cStreamdevServerMenuSetupPage::cStreamdevServerMenuSetupPage(void) { m_NewSetup = StreamdevServerSetup; @@ -73,37 +71,35 @@ cStreamdevServerMenuSetupPage::~cStreamdevServerMenuSetupPage() { } void cStreamdevServerMenuSetupPage::Set(void) { - static const char* modes[sm_Count]; - for (int i = 0; i < sm_Count; i++) - modes[i] = tr(SuspendModes[i]); - int current = Current(); Clear(); AddCategory (tr("Common Settings")); Add(new cMenuEditBoolItem(tr("Hide Mainmenu Entry"), &m_NewSetup.HideMenuEntry)); Add(new cMenuEditIntItem (tr("Maximum Number of Clients"), &m_NewSetup.MaxClients, 0, 100)); - Add(new cMenuEditStraItem(tr("Suspend behaviour"), &m_NewSetup.SuspendMode, sm_Count, modes)); - if (m_NewSetup.SuspendMode == smOffer) - Add(new cMenuEditBoolItem(tr("Client may suspend"), &m_NewSetup.AllowSuspend)); AddCategory (tr("VDR-to-VDR Server")); Add(new cMenuEditBoolItem(tr("Start VDR-to-VDR Server"), &m_NewSetup.StartVTPServer)); Add(new cMenuEditIntItem (tr("VDR-to-VDR Server Port"), &m_NewSetup.VTPServerPort, 0, 65535)); Add(new cMenuEditIpItem (tr("Bind to IP"), m_NewSetup.VTPBindIP)); + Add(new cMenuEditIntItem (tr("Legacy Client Priority"), &m_NewSetup.VTPPriority, MINPRIORITY, MAXPRIORITY)); + Add(new cMenuEditBoolItem(tr("Client may suspend"), &m_NewSetup.AllowSuspend)); if (cPluginManager::CallFirstService(LOOP_PREVENTION_SERVICE)) Add(new cMenuEditBoolItem(tr("Loop Prevention"), &m_NewSetup.LoopPrevention)); AddCategory (tr("HTTP Server")); Add(new cMenuEditBoolItem(tr("Start HTTP Server"), &m_NewSetup.StartHTTPServer)); Add(new cMenuEditIntItem (tr("HTTP Server Port"), &m_NewSetup.HTTPServerPort, 0, 65535)); - Add(new cMenuEditStraItem(tr("HTTP Streamtype"), &m_NewSetup.HTTPStreamType, st_Count - 1, StreamTypes)); Add(new cMenuEditIpItem (tr("Bind to IP"), m_NewSetup.HTTPBindIP)); + Add(new cMenuEditIntItem (tr("Priority"), &m_NewSetup.HTTPPriority, MINPRIORITY, MAXPRIORITY)); + Add(new cMenuEditStraItem(tr("HTTP Streamtype"), &m_NewSetup.HTTPStreamType, st_Count - 1, StreamTypes)); + AddCategory (tr("Multicast Streaming Server")); Add(new cMenuEditBoolItem(tr("Start IGMP Server"), &m_NewSetup.StartIGMPServer)); Add(new cMenuEditIntItem (tr("Multicast Client Port"), &m_NewSetup.IGMPClientPort, 0, 65535)); - Add(new cMenuEditStraItem(tr("Multicast Streamtype"), &m_NewSetup.IGMPStreamType, st_Count - 1, StreamTypes)); Add(new cMenuEditIpItem (tr("Bind to IP"), m_NewSetup.IGMPBindIP)); + Add(new cMenuEditIntItem (tr("Priority"), &m_NewSetup.IGMPPriority, MINPRIORITY, MAXPRIORITY)); + Add(new cMenuEditStraItem(tr("Multicast Streamtype"), &m_NewSetup.IGMPStreamType, st_Count - 1, StreamTypes)); SetCurrent(Get(current)); Display(); } @@ -138,16 +134,18 @@ void cStreamdevServerMenuSetupPage::Store(void) { SetupStore("StartServer", m_NewSetup.StartVTPServer); SetupStore("ServerPort", m_NewSetup.VTPServerPort); SetupStore("VTPBindIP", m_NewSetup.VTPBindIP); + SetupStore("VTPPriority", m_NewSetup.VTPPriority); SetupStore("LoopPrevention", m_NewSetup.LoopPrevention); SetupStore("StartHTTPServer", m_NewSetup.StartHTTPServer); SetupStore("HTTPServerPort", m_NewSetup.HTTPServerPort); - SetupStore("HTTPStreamType", m_NewSetup.HTTPStreamType); SetupStore("HTTPBindIP", m_NewSetup.HTTPBindIP); + SetupStore("HTTPPriority", m_NewSetup.HTTPPriority); + SetupStore("HTTPStreamType", m_NewSetup.HTTPStreamType); SetupStore("StartIGMPServer", m_NewSetup.StartIGMPServer); SetupStore("IGMPClientPort", m_NewSetup.IGMPClientPort); - SetupStore("IGMPStreamType", m_NewSetup.IGMPStreamType); SetupStore("IGMPBindIP", m_NewSetup.IGMPBindIP); - SetupStore("SuspendMode", m_NewSetup.SuspendMode); + SetupStore("IGMPPriority", m_NewSetup.IGMPPriority); + SetupStore("IGMPStreamType", m_NewSetup.IGMPStreamType); SetupStore("AllowSuspend", m_NewSetup.AllowSuspend); StreamdevServerSetup = m_NewSetup; @@ -155,11 +153,3 @@ void cStreamdevServerMenuSetupPage::Store(void) { if (restart) cStreamdevServer::Initialize(); } - -eOSState cStreamdevServerMenuSetupPage::ProcessKey(eKeys Key) { - int oldMode = m_NewSetup.SuspendMode; - eOSState state = cMenuSetupPage::ProcessKey(Key); - if (oldMode != m_NewSetup.SuspendMode) - Set(); - return state; -} |