summaryrefslogtreecommitdiff
path: root/channelgroups.h
blob: e91912354612badd5c3f3ee9162445d632430c48 (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
#ifndef __TVGUIDE_CHANNELGROUPS_H
#define __TVGUIDE_CHANNELGROUPS_H

#include <vector>
#include <vdr/channels.h>
#include "config.h"
#include "channelgroup.h"

// --- cChannelGroups  -------------------------------------------------------------

class cChannelGroups {
private:
    std::vector<cChannelGroup> channelGroups;
    cList<cChannelGroupGrid> groupGrids;
public:
    cChannelGroups(void);
    virtual ~cChannelGroups(void);
    void ReadChannelGroups(void);
    const char* GetPrev(int group);
    const char* GetNext(int group);
    int GetGroup(const cChannel *channel);
    int GetPrevGroupChannelNumber(const cChannel *channel);
    int GetNextGroupChannelNumber(const cChannel *channel);
    bool IsInLastGroup(const cChannel *channel);
    void DrawChannelGroups(const cChannel *start, const cChannel *stop);
    void CreateGroupGrid(const char *name, int number, int start, int end);
    int GetLastValidChannel(void);
    void DumpGroups(void);
};

#endif //__TVGUIDE_CHANNELGROUPS_H