X-Git-Url: http://code.vuplus.com/gitweb/?p=vuplus_dvbapp;a=blobdiff_plain;f=lib%2Fnav%2Fcore.h;h=01efe9af284f62a4d97e52e169c51e0f46b408dd;hp=056c150bfe4de8eb4a3eb2d91963990082008a47;hb=2e0270746af934180499931f95ed91c444c8233e;hpb=c0f5089ea04bd04fe25148e712fa62cd49dc17da diff --git a/lib/nav/core.h b/lib/nav/core.h index 056c150..01efe9a 100644 --- a/lib/nav/core.h +++ b/lib/nav/core.h @@ -4,30 +4,33 @@ #include #include #include +#include class eNavigation: public iObject, public Object { - DECLARE_REF; -private: - ePtr m_runningService; + DECLARE_REF(eNavigation); ePtr m_servicehandler; - Signal2 m_event; + + ePtr m_runningService; + Signal1 m_event; ePtr m_service_event_conn; void serviceEvent(iPlayableService* service, int event); - - std::list m_playlist; + + std::map, ePtr, std::less > m_recordings; + Signal2,int> m_record_event; + void recordEvent(iRecordableService* service, int event); public: - enum - { - evNewService, - evPlayFailed, - evPlaylistDone - }; + RESULT playService(const eServiceReference &service); - RESULT enqueueService(const eServiceReference &service); - RESULT connectEvent(const Slot2 &event, ePtr &connection); + RESULT connectEvent(const Slot1 &event, ePtr &connection); + RESULT connectRecordEvent(const Slot2,int> &event, ePtr &connection); /* int connectServiceEvent(const Slot1 &event, ePtr &connection); */ RESULT getCurrentService(ePtr &service); + RESULT stopService(void); + + RESULT recordService(const eServiceReference &ref, ePtr &service); + RESULT stopRecordService(ePtr &service); + PyObject *getRecordings(void); RESULT pause(int p); eNavigation(iServiceHandler *serviceHandler);