diff options
author | Klaus Schmidinger <vdr@tvdr.de> | 2021-04-06 08:48:35 +0200 |
---|---|---|
committer | Klaus Schmidinger <vdr@tvdr.de> | 2021-04-06 08:48:35 +0200 |
commit | 23d986657a5a4e7d086932d528715aaf8875bad3 (patch) | |
tree | f7066dc39ee0281b39bd9efadd9dd2d83f11ca6e /timers.h | |
parent | 8f1419fff59acea5c57e861819111cfc38dd193d (diff) | |
download | vdr-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.h | 8 |
1 files changed, 6 insertions, 2 deletions
@@ -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); |