X-Git-Url: http://code.vuplus.com/gitweb/?a=blobdiff_plain;f=Navigation.py;h=8ff1be0cc3d7327f94817b53b434fb836c9f44a5;hb=7b033df3c362f3b07b991264507931710a250df1;hp=5fe2651783d94c40276346badf41f17f95ff2f33;hpb=094b454c7e3b86cdcff697bb68cd367e53ba9e8e;p=vuplus_dvbapp diff --git a/Navigation.py b/Navigation.py index 5fe2651..8ff1be0 100644 --- a/Navigation.py +++ b/Navigation.py @@ -11,19 +11,16 @@ class Navigation: raise NavigationInstance.instance NavigationInstance.instance = self - self.ServiceHandler = eServiceCenterPtr() - eServiceCenter.getInstance(self.ServiceHandler) + self.ServiceHandler = eServiceCenter.getInstance() import Navigation as Nav Nav.navcore = self - print "Navcore instance set!" - print Nav.navcore - self.pnav = pNavigation() self.pnav.m_event.get().append(self.callEvent) self.event = [ ] self.currentlyPlayingService = None + self.currentlyPlayingServiceReference = None self.RecordTimer = RecordTimer.RecordTimer() @@ -32,7 +29,12 @@ class Navigation: x(i) def playService(self, ref): + print "playing", ref self.currentlyPlayingServiceReference = None + if ref is None: + self.stopService() + return 0 + if not self.pnav.playService(ref): self.currentlyPlayingServiceReference = ref return 0 @@ -45,38 +47,38 @@ class Navigation: print "recording service: %s" % (str(ref)) if isinstance(ref, ServiceReference.ServiceReference): ref = ref.ref - service = iRecordableServicePtr() - if self.pnav.recordService(ref, service): + service = self.pnav.recordService(ref) + + if service is None: print "record returned non-zero" return None else: - print "ok, recordService didn't fail" return service - def enqueueService(self, ref): - return self.pnav.enqueueService(ref) - def getCurrentService(self): - service = iPlayableServicePtr() - if self.pnav.getCurrentService(service): + service = self.pnav.getCurrentService() + + if service is None: return None + return service - def getPlaylist(self): - playlist = ePlaylistPtr() - if self.pnav.getPlaylist(playlist): - return None - return playlist + def stopService(self): + self.pnav.stopService() def pause(self, p): return self.pnav.pause(p) - def recordWithTimer(self, begin, end, ref, epg, description): + def recordWithTimer(self, ref, begin, end, name, description, eit): if isinstance(ref, eServiceReference): ref = ServiceReference.ServiceReference(ref) - entry = RecordTimer.RecordTimerEntry(begin, end, ref, epg, description) + entry = RecordTimer.RecordTimerEntry(ref, begin, end, name, description, eit) self.RecordTimer.record(entry) return entry def shutdown(self): self.RecordTimer.shutdown() + del self.pnav + + def stopUserServices(self): + self.stopService()