summaryrefslogtreecommitdiff
path: root/timers.h
diff options
context:
space:
mode:
authorKlaus Schmidinger <vdr@tvdr.de>2021-04-06 08:48:35 +0200
committerKlaus Schmidinger <vdr@tvdr.de>2021-04-06 08:48:35 +0200
commit23d986657a5a4e7d086932d528715aaf8875bad3 (patch)
treef7066dc39ee0281b39bd9efadd9dd2d83f11ca6e /timers.h
parent8f1419fff59acea5c57e861819111cfc38dd193d (diff)
downloadvdr-23d986657a5a4e7d086932d528715aaf8875bad3.tar.gz
vdr-23d986657a5a4e7d086932d528715aaf8875bad3.tar.bz2
Spawned timers that don't use VPS now automatically adjust their start/stop times to changes in the respective event's times
Diffstat (limited to 'timers.h')
-rw-r--r--timers.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/timers.h b/timers.h
index ae3ab2f6..0c707f7b 100644
--- a/timers.h
+++ b/timers.h
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: timers.h 5.3 2021/04/04 13:38:13 kls Exp $
+ * $Id: timers.h 5.4 2021/04/06 08:48:35 kls Exp $
*/
#ifndef __TIMERS_H
@@ -33,7 +33,9 @@ class cTimer : public cListObject {
private:
int id;
mutable time_t startTime, stopTime;
- int scheduleState;
+ int scheduleStateSet;
+ int scheduleStateSpawn;
+ int scheduleStateAdjust;
mutable time_t deferred; ///< Matches(time_t, ...) will return false if the current time is before this value
bool pending, inVpsMargin;
uint flags;
@@ -99,6 +101,7 @@ public:
void SetId(int Id);
void SpawnPatternTimer(const cEvent *Event, cTimers *Timers);
bool SpawnPatternTimers(const cSchedules *Schedules, cTimers *Timers);
+ bool AdjustSpawnedTimer(void);
void TriggerRespawn(void);
bool SetEventFromSchedule(const cSchedules *Schedules);
bool SetEvent(const cEvent *Event);
@@ -196,6 +199,7 @@ public:
const cTimer *UsesChannel(const cChannel *Channel) const;
bool SetEvents(const cSchedules *Schedules);
bool SpawnPatternTimers(const cSchedules *Schedules);
+ bool AdjustSpawnedTimers(void);
bool DeleteExpired(void);
void Add(cTimer *Timer, cTimer *After = NULL);
void Ins(cTimer *Timer, cTimer *Before = NULL);