return 0;
}
+RESULT eNavigation::recordService(const eServiceReference &service)
+{
+ if (m_recordingService)
+ endRecording();
+
+ assert(m_servicehandler);
+ RESULT res = m_servicehandler->record(service, m_recordingService);
+ if (m_recordingService)
+ {
+ res = m_recordingService->start();
+ }
+ if (res)
+ m_recordingService = 0;
+ return res;
+}
+
+RESULT eNavigation::endRecording()
+{
+ if (!m_recordingService)
+ return -1;
+ m_recordingService->stop();
+ m_recordingService = 0;
+ return 0;
+}
+
RESULT eNavigation::pause(int dop)
{
if (!m_runningService)
DECLARE_REF(eNavigation);
private:
ePtr<iPlayableService> m_runningService;
+
+ ePtr<iRecordableService> m_recordingService;
+
ePtr<iServiceHandler> m_servicehandler;
Signal2<void,eNavigation*,int> m_event;
ePtr<eConnection> m_service_event_conn;
RESULT getPlaylist(ePtr<ePlaylist> &playlist);
RESULT stopService(void);
+ RESULT recordService(const eServiceReference &service);
+ RESULT endRecording();
+
RESULT pause(int p);
eNavigation(iServiceHandler *serviceHandler);
virtual ~eNavigation();
return m_core->playService(service);
}
+RESULT pNavigation::recordService(const eServiceReference &service)
+{
+ return m_core->recordService(service);
+}
+
+RESULT pNavigation::endRecording()
+{
+ return m_core->endRecording();
+}
+
RESULT pNavigation::enqueueService(const eServiceReference &service)
{
return m_core->enqueueService(service);
pNavigation();
RESULT playService(const eServiceReference &service);
+ RESULT recordService(const eServiceReference &service);
+ RESULT endRecording();
+
RESULT enqueueService(const eServiceReference &service);
RESULT getCurrentService(ePtr<iPlayableService> &service);
RESULT getPlaylist(ePtr<ePlaylist> &playlist);