diff options
| author | Felix Domke <tmbinc@elitedvb.net> | 2004-05-23 10:39:21 +0000 |
|---|---|---|
| committer | Felix Domke <tmbinc@elitedvb.net> | 2004-05-23 10:39:21 +0000 |
| commit | c0f5089ea04bd04fe25148e712fa62cd49dc17da (patch) | |
| tree | 4459439ba4fd730d69fd0216b43f41b6ebf010c3 /lib/nav/core.h | |
| parent | 676c3e4b7ba3a01f5d69bed1b5b2c861e84a6211 (diff) | |
| download | enigma2-c0f5089ea04bd04fe25148e712fa62cd49dc17da.tar.gz enigma2-c0f5089ea04bd04fe25148e712fa62cd49dc17da.zip | |
added nav core
Diffstat (limited to 'lib/nav/core.h')
| -rw-r--r-- | lib/nav/core.h | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/lib/nav/core.h b/lib/nav/core.h new file mode 100644 index 00000000..056c150b --- /dev/null +++ b/lib/nav/core.h @@ -0,0 +1,37 @@ +#ifndef __nav_core_h +#define __nav_core_h + +#include <lib/base/object.h> +#include <lib/service/iservice.h> +#include <connection.h> + +class eNavigation: public iObject, public Object +{ + DECLARE_REF; +private: + ePtr<iPlayableService> m_runningService; + ePtr<iServiceHandler> m_servicehandler; + Signal2<void,eNavigation*,int> m_event; + ePtr<eConnection> m_service_event_conn; + void serviceEvent(iPlayableService* service, int event); + + std::list<eServiceReference> m_playlist; +public: + enum + { + evNewService, + evPlayFailed, + evPlaylistDone + }; + RESULT playService(const eServiceReference &service); + RESULT enqueueService(const eServiceReference &service); + RESULT connectEvent(const Slot2<void,eNavigation*,int> &event, ePtr<eConnection> &connection); +/* int connectServiceEvent(const Slot1<void,iPlayableService*,int> &event, ePtr<eConnection> &connection); */ + RESULT getCurrentService(ePtr<iPlayableService> &service); + + RESULT pause(int p); + eNavigation(iServiceHandler *serviceHandler); + virtual ~eNavigation(); +}; + +#endif |
