summaryrefslogtreecommitdiff
path: root/epg_events.h
diff options
context:
space:
mode:
Diffstat (limited to 'epg_events.h')
-rw-r--r--epg_events.h62
1 files changed, 62 insertions, 0 deletions
diff --git a/epg_events.h b/epg_events.h
new file mode 100644
index 0000000..61ba3ff
--- /dev/null
+++ b/epg_events.h
@@ -0,0 +1,62 @@
+#ifndef VDR_LIVE_WHATS_ON_H
+#define VDR_LIVE_WHATS_ON_H
+
+#include <ctime>
+#include <vector>
+#include <boost/shared_ptr.hpp>
+
+#include <vdr/plugin.h>
+#include <vdr/channels.h>
+#include <vdr/epg.h>
+#include <vdr/config.h>
+#include <vdr/i18n.h>
+
+#include "live.h"
+
+namespace vdrlive
+{
+
+ class EpgEvent
+ {
+ public:
+ EpgEvent(const std::string& id, const cEvent* event, const char* channelName = "");
+
+ virtual ~EpgEvent();
+
+ const std::string& Id() const { return eventId; }
+
+ const std::string& Title() const { return title; }
+
+ const std::string& ChannelName() const { return channel_name; }
+
+ const std::string& ShortDescr() const { return short_descr; }
+
+ const std::string& LongDescr() const { return long_descr; }
+
+ const std::string StartTime(const char* format) const;
+
+ const std::string EndTime(const char* format) const;
+
+ private:
+ std::string eventId;
+ std::string title;
+ std::string channel_name;
+ std::string short_descr;
+ std::string long_descr;
+ time_t start_time;
+ time_t end_time;
+ };
+
+ typedef boost::shared_ptr<EpgEvent> EpgEventPtr;
+
+ class EpgEvents : public std::vector<EpgEventPtr> {
+ public:
+ EpgEvents();
+ virtual ~EpgEvents();
+
+ private:
+ };
+}; // namespace vdrlive
+
+#endif // VDR_LIVE_WHATS_ON_H
+