private:
static int nr_clients;
- void incClients();
- void decClients();
-
+ static void incClients();
+ static void decClients();
+
static ULLONG ntohll(ULLONG a);
static ULLONG htonll(ULLONG a);
#include <vdr/plugin.h>
#include <vdr/timers.h>
#include <vdr/menu.h>
+#include <vdr/remote.h>
#include "recplayer.h"
#include "mvpreceiver.h"
#endif
bool ResumeIDLock;
-ULONG VompClientRRProc::VOMP_PROTOCOL_VERSION = 0x00000200;
+ULONG VompClientRRProc::VOMP_PROTOCOL_VERSION = 0x00000301;
// format is aabbccdd
// cc is release protocol version, increase with every release, that changes protocol
// dd is development protocol version, set to zero at every release,
case 23:
result = processDeleteTimer();
break;
-#endif
+ case 666:
+ result = processVDRShutdown();
+ break;
+#endif
case VDR_GETMEDIALIST:
result = processGetMediaList();
break;
return 1;
}
+int VompClientRRProc::processVDRShutdown()
+{
+ log->log("RRProc", Log::DEBUG, "Trying to shutdown VDR");
+ VompClient::decClients(); // Temporarily make this client disappear
+ cRemote::Put(kPower);
+ VompClient::incClients();
+ resp->finalise();
+ x.tcp.sendPacket(resp->getPtr(), resp->getLen());
+ return 1;
+}
+
#endif // !VOMPSTANDALONE
int processGetChannelPids();
int processDeleteTimer();
int processReScanRecording(); // FIXME obselete
+ int processVDRShutdown();
#endif
int processLogin();
int processConfigSave();
int processGetLanguageList();
int processGetLanguageContent();
int processSetCharset();
-
+
void threadMethod();
VompClient& x;