summaryrefslogtreecommitdiff
path: root/equivhandler.h
blob: f60dbfc5f21dc2ea4d3867d0aa2e497ccd9e0cd6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
/*
 * equivhandler.h
 *
 *  Created on: 19.5.2012
 *      Author: d.petrovski
 */

#ifndef EQUIVHANDLER_H_
#define EQUIVHANDLER_H_

#include <vdr/epg.h>
#include <vdr/channels.h>
#include <map>
#include <string>

#define EEPG_FILE_EQUIV "eepg.equiv"

using namespace std;

class cEquivHandler
{
public:
  cEquivHandler();
  virtual ~cEquivHandler();

  void loadEquivalentChannelMap (void);
  void updateEquivalent(cSchedules * Schedules, tChannelID channelID, cEvent *pEvent);
  void updateEquivalent(tChannelID channelID, cEvent *pEvent);
  void sortEquivalents(tChannelID channelID, cSchedules* Schedules);
  void cloneEvent(cEvent *Source, cEvent *Dest);

  static multimap<string, string> getEquiChanMap() { return cEquivHandler::equiChanMap; };

private:
  static multimap<string, string> equiChanMap;
  static long equiChanFileTime;

};

#endif /* EQUIVHANDLER_H_ */