vdr-plugin-tvguide/timemanager.h

53 lines
1.5 KiB
C
Raw Normal View History

2019-07-11 14:34:31 +02:00
#ifndef __TVGUIDE_TIMEMANAGER_H
#define __TVGUIDE_TIMEMANAGER_H
2019-07-11 11:07:13 +02:00
#include <vdr/tools.h>
2019-07-11 14:34:31 +02:00
// --- cTimeManager -------------------------------------------------------------
2019-07-11 11:07:13 +02:00
2019-07-11 14:34:31 +02:00
class cTimeManager {
2019-07-11 11:07:13 +02:00
private:
time_t t;
time_t tStart;
time_t tEnd;
public:
2019-07-11 14:34:31 +02:00
cTimeManager(){};
virtual ~cTimeManager(void);
2019-07-11 11:07:13 +02:00
static cString printTime(time_t displayTime);
void Now();
time_t GetNow() { return t; };
void AddStep(int step);
bool DelStep(int step);
void SetTime(time_t newTime);
time_t Get() {return t;};
time_t GetStart() {return tStart;};
time_t GetEnd() {return tEnd;};
cString GetCurrentTime();
cString GetDate();
cString GetWeekday();
time_t getPrevPrimetime(time_t current);
time_t getNextPrimetime(time_t current);
bool tooFarInPast(time_t current);
int GetTimelineOffset();
time_t GetRounded();
bool NowVisible(void);
void debug();
};
// --- cTimeInterval -------------------------------------------------------------
class cTimeInterval {
private:
time_t start;
time_t stop;
public:
cTimeInterval(time_t start, time_t stop);
virtual ~cTimeInterval(void);
time_t Start(void) { return start; };
time_t Stop(void) { return stop; };
cTimeInterval *Intersect(cTimeInterval *interval);
cTimeInterval *Union(cTimeInterval *interval);
};
2019-07-11 14:34:31 +02:00
#endif //__TVGUIDE_TIMEMANAGER_H