43 mutable char file[NAME_MAX * 2 + 1];
54 int Id(
void)
const {
return id; }
60 time_t
Day(
void)
const {
return day; }
68 const char *
Aux(
void)
const {
return aux; }
75 bool Parse(
const char *s);
81 static time_t
IncDay(time_t t,
int Days);
82 static time_t
SetTime(time_t t,
int SecondsFromMidnight);
84 bool Matches(time_t t = 0,
bool Directly =
false,
int Margin = 0)
const;
171 const cTimer *
GetById(
int Id,
const char *Remote = NULL)
const;
188 void Del(
cTimer *Timer,
bool DeleteObject =
true);
223 #define LOCK_TIMERS_READ USE_LIST_LOCK_READ(Timers)
224 #define LOCK_TIMERS_WRITE USE_LIST_LOCK_WRITE(Timers)
const char * FileName(void)
cSortedTimers(const cTimers *Timers)
void SetAux(const char *Aux)
void SetLifetime(int Lifetime)
cString PrintFirstDay(void) const
time_t Deferred(void) const
time_t day
midnight of the day this timer shall hit, or of the first day it shall hit in case of a repeating tim...
int weekdays
bitmask, lowest bits: SSFTWTM (the 'M' is the LSB)
bool IsSingleEvent(void) const
void SetPending(bool Pending)
const char * Remote(void) const
cTimer(bool Instant=false, bool Pause=false, const cChannel *Channel=NULL)
time_t StopTime(void) const
time_t FirstDay(void) const
bool Recording(void) const
static time_t SetTime(time_t t, int SecondsFromMidnight)
void ClrFlags(uint Flags)
virtual int Compare(const cListObject &ListObject) const
Must return 0 if this object is equal to ListObject, a positive value if it is "greater",...
void SetFile(const char *File)
void SetFlags(uint Flags)
void SetPriority(int Priority)
void SetDeferred(int Seconds)
void SetInVpsMargin(bool InVpsMargin)
static int GetWDay(time_t t)
static cString PrintDay(time_t Day, int WeekDays, bool SingleByteChars)
bool DayMatches(time_t t) const
void SetRemote(const char *Remote)
bool InVpsMargin(void) const
const char * Aux(void) const
bool SetEvent(const cEvent *Event)
void InvFlags(uint Flags)
static bool ParseDay(const char *s, time_t &Day, int &WeekDays)
const char * File(void) const
time_t StartTime(void) const
cString ToDescr(void) const
bool SetEventFromSchedule(const cSchedules *Schedules)
void SetRecording(bool Recording)
const cEvent * Event(void) const
static int TimeToInt(int t)
time_t deferred
Matches(time_t, ...) will return false if the current time is before this value.
static int GetMDay(time_t t)
bool HasFlags(uint Flags) const
cTimer & operator=(const cTimer &Timer)
void SetWeekDays(int WeekDays)
bool Matches(time_t t=0, bool Directly=false, int Margin=0) const
bool Parse(const char *s)
cString ToText(bool UseChannelID=false) const
const cChannel * Channel(void) const
static time_t IncDay(time_t t, int Days)
static bool Load(const char *FileName)
int GetMaxPriority(void) const
Returns the maximum priority of all local timers that are currently recording.
const cTimer * UsesChannel(const cChannel *Channel) const
bool StoreRemoteTimers(const char *ServerName=NULL, const cStringList *RemoteTimers=NULL)
Stores the given list of RemoteTimers, which come from the VDR ServerName, in this list.
const cTimer * GetById(int Id, const char *Remote=NULL) const
void Add(cTimer *Timer, cTimer *After=NULL)
static cTimers * GetTimersWrite(cStateKey &StateKey, int TimeoutMs=0)
Gets the list of timers for write access.
cTimer * GetMatch(const cEvent *Event, eTimerMatch *Match=NULL)
cTimer * GetMatch(time_t t)
void Del(cTimer *Timer, bool DeleteObject=true)
static const cTimers * GetTimersRead(cStateKey &StateKey, int TimeoutMs=0)
Gets the list of timers for read access.
const cTimer * GetTimer(const cTimer *Timer) const
const cTimer * GetMatch(time_t t) const
cTimer * GetTimer(const cTimer *Timer)
void Ins(cTimer *Timer, cTimer *Before=NULL)
const cTimer * GetNextActiveTimer(void) const
bool SetEvents(const cSchedules *Schedules)
static int NewTimerId(void)
cTimer * GetById(int Id, const char *Remote=NULL)
bool HandleRemoteTimerModifications(cTimer *NewTimer, cTimer *OldTimer=NULL, cString *Msg=NULL)
Performs any operations necessary to synchronize changes to a timer between peer VDR machines.