summaryrefslogtreecommitdiff
path: root/searchtimer.h
blob: 65a04c90040606853886378e89d77240eae5c815 (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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
#ifndef __TVGUIDE_SEARCHTIMER_H
#define __TVGUIDE_SEARCHTIMER_H


class cTVGuideSearchTimer {
friend class cRecMenuSearchTimerEdit;
protected:
    std::string strTimer;
    int         ID;
    std::string searchString;
    int         useTime;
    int         startTime;
    int      	stopTime;
    int         useChannel;
    const cChannel    *channelMin;
    const cChannel    *channelMax;
    std::string channelGroup;
    int      	useCase;
    int      	mode;
    int         useTitle;
    int         useSubtitle;
    int         useDescription;
    int         useDuration;
    int         minDuration;
    int         maxDuration;
    int         useAsSearchTimer;
    int         useDayOfWeek;
    int         dayOfWeek;
    int         useEpisode;
    std::string directory;
    int         priority;
    int         lifetime;
    int         marginStart;
    int         marginStop;
    int         useVPS;
    int         action;
    int         useExtEPGInfo;
    std::string extEPGInfoValues;
    int         avoidRepeats;
    int         allowedRepeats;
    int         compareTitle;
    int         compareSubtitle;
    int         compareSummary;
    unsigned long catvaluesAvoidRepeat;
    int         repeatsWithinDays;
    int         delAfterDays;
    int         recordingsKeep;
    int         switchMinsBefore;
    int         pauseOnNrRecordings;
    int         blacklistMode;
    std::string blacklists;
    int         fuzzyTolerance;
    int         useInFavorites;
    int         menuTemplate;
    int         delMode;
    int         delAfterCountRecs;
    int         delAfterDaysOfFirstRec;
    int         useAsSearchTimerFrom;
    int         useAsSearchTimerTil;
    int         ignoreMissingEPGCats;
    int         unmuteSoundOnSwitch;
    int         compareSummaryMatchInPercent;
    std::string contentsFilter;
    int         compareDate;
public:
    cTVGuideSearchTimer(void);
    virtual ~cTVGuideSearchTimer(void);
    bool operator < (const cTVGuideSearchTimer& other) const;
    void SetEPGSearchString(std::string strTimer) { this->strTimer = strTimer; };
    void SetTemplate(std::string tmpl);
    bool Parse(bool readTemplate = false);
    std::string BuildSearchString(void);
    int GetID(void) { return ID; };
    //GETTER
    std::string GetSearchString(void) const { return searchString; };
    bool IsActive(void);
    int DayOfWeek(void);
    bool UseInFavorites(void) { return useInFavorites; };
    //SETTER
    void SetSearchString(std::string searchString) { this->searchString = searchString; };
    void SetSearchMode(int mode) { this->mode = mode; };
    void SetFuzzyTolerance(int fuzzyTolerance) { this->fuzzyTolerance = fuzzyTolerance; };
    void SetUseCase(bool useCase) { this->useCase = useCase; };
    void SetUseTitle(bool useTitle) { this->useTitle = useTitle; };
    void SetUseSubtitle(bool useSubtitle) { this->useSubtitle = useSubtitle; };
    void SetUseDesription(bool useDescription) { this->useDescription = useDescription; };
    void SetUseChannel(int useChannel) { this->useChannel = useChannel; };
    void SetStartChannel(const cChannel *channelMin) { this->channelMin = channelMin; };
    void SetStopChannel(const cChannel *channelMax) { this->channelMax = channelMax; };
    void SetChannelGroup(std::string channelGroup) { this->channelGroup = channelGroup; };
    void SetUseTime(bool useTime) { this->useTime = useTime; };
    void SetStartTime(int startTime) { this->startTime = startTime; };
    void SetStopTime(int stopTime) { this->stopTime = stopTime; };
    void SetUseDayOfWeek(bool useDayOfWeek) { this->useDayOfWeek = useDayOfWeek; };
    void SetDayOfWeek(int VDRDayOfWeek);
    void SetUseDuration(bool useDuration) { this->useDuration = useDuration; };
    void SetMinDuration(int minDuration) { this->minDuration = minDuration; };
    void SetMaxDuration(int maxDuration) { this->maxDuration = maxDuration; };
    void SetUseEpisode(int useEpisode) { this->useEpisode = useEpisode; };
    void SetDirectory(std::string directory) { this-> directory = directory; };
    void SetDelAfterDays(int delAfterDays) { this->delAfterDays = delAfterDays; };
    void SetRecordingsKeep(int recordingsKeep) { this->recordingsKeep = recordingsKeep; };
    void SetPauseOnNrRecordings(int  pauseOnNrRecordings) { this-> pauseOnNrRecordings = pauseOnNrRecordings; };
    void SetPriority(int priority) { this->priority = priority; };
    void SetLifetime(int lifetime) { this->lifetime = lifetime; };
    void SetMarginStart(int marginStart) { this->marginStart = marginStart; };
    void SetMarginStop(int marginStop) { this->marginStop = marginStop; };
    void SetUseVPS(bool useVPS) { this->useVPS = useVPS; };
    void SetAvoidRepeats(bool avoidRepeats) { this->avoidRepeats = avoidRepeats; };
    void SetAllowedRepeats(int allowedRepeats) { this->allowedRepeats = allowedRepeats; };
    void SetRepeatsWithinDays(int repeatsWithinDays) { this-> repeatsWithinDays = repeatsWithinDays; };
    void SetCompareTitle(bool compareTitle) { this->compareTitle = compareTitle; };
    void SetCompareSubtitle(bool compareSubtitle) { this->compareSubtitle = compareSubtitle; };
    void SetCompareSummary(bool compareSummary) { this->compareSummary = compareSummary; };
    void SetCompareSummaryMatchInPercent(int compareSummaryMatchInPercent) { this->compareSummaryMatchInPercent = compareSummaryMatchInPercent; };
    void SetCompareDate(int compareDate) { this->compareDate = compareDate; };
    void SetUseInFavorites(bool useInFavorites) { this->useInFavorites = useInFavorites; };
    void SetUseAsSearchTimer(bool useAsSearchTimer) { this->useAsSearchTimer = useAsSearchTimer; };
    void SetAction(int action) { this->action = action; };
    void SetSwitchMinsBefore(int switchMinsBefore) { this->switchMinsBefore = switchMinsBefore; };
    void SetUnmuteSoundOnSwitch(bool unmuteSoundOnSwitch) { this->unmuteSoundOnSwitch = unmuteSoundOnSwitch; };
    void SetDelMode(bool delMode) { this->delMode = delMode; };
    void SetDelAfterCountRecs(bool delAfterCountRecs) { this->delAfterCountRecs = delAfterCountRecs; };
    void SetDelAfterDaysOfFirstRec(bool delAfterDaysOfFirstRec) { this->delAfterDaysOfFirstRec = delAfterDaysOfFirstRec; };
    //COMMON
    int GetNumTimers(void);
    int GetNumRecordings(void);
    void GetSearchModes(std::vector<std::string> *searchModes);
    void GetUseChannelModes(std::vector<std::string> *useChannelModes);
    void GetSearchTimerModes(std::vector<std::string> *searchTimerModes);
    void GetCompareDateModes(std::vector<std::string> *compareDateModes);
    void GetDelModes(std::vector<std::string> *delModes);
    void Dump(void);
};

#endif //__TVGUIDE_SEARCHTIMER_H