aboutsummaryrefslogtreecommitdiff
path: root/RecordTimer.py
diff options
context:
space:
mode:
authorFelix Domke <tmbinc@elitedvb.net>2005-05-04 15:56:32 +0000
committerFelix Domke <tmbinc@elitedvb.net>2005-05-04 15:56:32 +0000
commitf0273520285e28b22053eda706690774b0c8448c (patch)
tree6897dccfdd89f51ec55ed43b8da0fc1abcc3545f /RecordTimer.py
parent7a6b5e730bb33b3ea9a1c693ee434e99d389f583 (diff)
downloadenigma2-f0273520285e28b22053eda706690774b0c8448c.tar.gz
enigma2-f0273520285e28b22053eda706690774b0c8448c.zip
- add timer, RecordTimer
- use timer for instantReport
Diffstat (limited to 'RecordTimer.py')
-rw-r--r--RecordTimer.py66
1 files changed, 66 insertions, 0 deletions
diff --git a/RecordTimer.py b/RecordTimer.py
new file mode 100644
index 00000000..ad7fa565
--- /dev/null
+++ b/RecordTimer.py
@@ -0,0 +1,66 @@
+from timer import *
+import time
+
+class RecordTimerEntry(TimerEntry):
+ def __init__(self, begin, end, nav, serviceref, epg):
+ TimerEntry.__init__(self, begin, end)
+ self.ServiceRef = serviceref
+ self.EpgData = epg
+ self.Timer = None
+ self.Nav = nav
+ self.RecordService = None
+
+ # build filename from epg
+
+ # pff das geht noch nicht...
+ if epg == None:
+ self.Filename = "recording.ts"
+ else:
+ self.Filename = "record_" + str(epg.m_event_name) + ".ts"
+
+ print "------------ record filename: %s" % (self.Filename)
+
+ def activate(self, event):
+ if event == self.EventPrepare:
+ self.RecordService = self.Nav.recordService(self.ServiceRef)
+ if self.RecordService == None:
+ print "timer record failed."
+ else:
+ self.RecordService.prepare()
+ elif self.RecordService == None:
+ if event != self.EventAbort:
+ print "timer record start failed, can't finish recording."
+ elif event == self.EventStart:
+ self.RecordService.start()
+ print "timer started!"
+ elif event == self.EventEnd or event == self.EventAbort:
+ self.RecordService.stop()
+ self.RecordService = None
+ print "Timer successfully ended"
+
+class RecordTimer(Timer):
+ def __init__(self):
+ Timer.__init__(self)
+
+ def loadTimer(self):
+ print "TODO: load timers from xml"
+
+ def saveTimer(self):
+ print "TODO: save timers to xml"
+
+ def record(self, entry):
+ entry.Timer = self
+ self.addTimerEntry(entry)
+
+ def removeEntry(self, entry):
+ if entry.State == TimerEntry.StateRunning:
+ entry.End = time.time()
+ print "aborting timer"
+ elif entry.State != TimerEntry.StateEnded:
+ entry.activate(TimerEntry.EventAbort)
+ self.TimerList.remove(entry)
+ print "timer did not yet start - removing"
+ else:
+ print "timer did already end - doing nothing."
+
+ self.calcNextActivation()