4 class RecordTimerEntry(TimerEntry):
5 def __init__(self, begin, end, nav, serviceref, epg):
6 TimerEntry.__init__(self, begin, end)
7 self.ServiceRef = serviceref
11 self.RecordService = None
13 # build filename from epg
15 # pff das geht noch nicht...
17 self.Filename = "recording.ts"
19 self.Filename = "record_" + str(epg.m_event_name) + ".ts"
21 print "------------ record filename: %s" % (self.Filename)
23 def activate(self, event):
24 if event == self.EventPrepare:
25 self.RecordService = self.Nav.recordService(self.ServiceRef)
26 if self.RecordService == None:
27 print "timer record failed."
29 self.RecordService.prepare()
30 elif self.RecordService == None:
31 if event != self.EventAbort:
32 print "timer record start failed, can't finish recording."
33 elif event == self.EventStart:
34 self.RecordService.start()
35 print "timer started!"
36 elif event == self.EventEnd or event == self.EventAbort:
37 self.RecordService.stop()
38 self.RecordService = None
39 print "Timer successfully ended"
41 class RecordTimer(Timer):
46 print "TODO: load timers from xml"
49 print "TODO: save timers to xml"
51 def record(self, entry):
53 self.addTimerEntry(entry)
55 def removeEntry(self, entry):
56 if entry.State == TimerEntry.StateRunning:
57 entry.End = time.time()
58 print "aborting timer"
59 elif entry.State != TimerEntry.StateEnded:
60 entry.activate(TimerEntry.EventAbort)
61 self.TimerList.remove(entry)
62 print "timer did not yet start - removing"
64 print "timer did already end - doing nothing."
66 self.calcNextActivation()