MythTV master
scheduledrecording.h
Go to the documentation of this file.
1#ifndef SCHEDULEDRECORDING_H
2#define SCHEDULEDRECORDING_H
3
4#include "mythtvexp.h"
5#include <QDateTime>
6#include "recordinginfo.h"
7
9{
10 friend class Scheduler;
11
12 public:
13 // Use when a recording rule or program data changes. Use 0 for
14 // recordid when all recordids are potentially affected, Use
15 // invalid starttime and 0 for chanids when not time nor channel
16 // specific.
17 static void RescheduleMatch(uint recordid, uint sourceid, uint mplexid,
18 const QDateTime &maxstarttime, const QString &why)
19 { SendReschedule(BuildMatchRequest(recordid, sourceid, mplexid,
20 maxstarttime, why)); };
21
22 // Use when previous or current recorded duplicate status changes.
23 static void RescheduleCheck(const RecordingInfo &recinfo,
24 const QString &why)
25 { SendReschedule(BuildCheckRequest(recinfo, why)); };
26 // Alternate function for calling with a ProgramInfo structure
27 static void RescheduleCheck(const ProgramInfo &proginfo,
28 const QString &why)
29 { SendReschedule(BuildCheckRequest(RecordingInfo(proginfo), why)); };
30
31 // Use when none of recording rule, program data or duplicate
32 // status changes.
33 static void ReschedulePlace(const QString &why)
34 { SendReschedule(BuildPlaceRequest(why)); };
35
36 private:
37 ScheduledRecording() = default;
39
40 static void SendReschedule(const QStringList &request);
41 static QStringList BuildMatchRequest(uint recordid, uint sourceid,
42 uint mplexid, const QDateTime &maxstarttime, const QString &why);
43 static QStringList BuildCheckRequest(const RecordingInfo &recinfo,
44 const QString &why);
45 static QStringList BuildPlaceRequest(const QString &why);
46};
47
48#endif
49
50/* vim: set expandtab tabstop=4 shiftwidth=4: */
51
Holds information on recordings and videos.
Definition: programinfo.h:68
Holds information on a TV Program one might wish to record.
Definition: recordinginfo.h:36
static void RescheduleCheck(const ProgramInfo &proginfo, const QString &why)
static void RescheduleCheck(const RecordingInfo &recinfo, const QString &why)
static void ReschedulePlace(const QString &why)
static void RescheduleMatch(uint recordid, uint sourceid, uint mplexid, const QDateTime &maxstarttime, const QString &why)
~ScheduledRecording()=default
ScheduledRecording()=default
unsigned int uint
Definition: freesurround.h:24
#define MTV_PUBLIC
Definition: mythtvexp.h:15