00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00012
00013 #ifndef DVRSERVICES_H_
00014 #define DVRSERVICES_H_
00015
00016 #include "service.h"
00017
00018 #include "datacontracts/programList.h"
00019 #include "datacontracts/encoderList.h"
00020 #include "datacontracts/recRuleList.h"
00021
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00037
00038 class SERVICE_PUBLIC DvrServices : public Service
00039 {
00040 Q_OBJECT
00041 Q_CLASSINFO( "version" , "1.4" );
00042 Q_CLASSINFO( "RemoveRecordedItem_Method", "POST" )
00043 Q_CLASSINFO( "AddRecordSchedule_Method", "POST" )
00044 Q_CLASSINFO( "RemoveRecordSchedule_Method", "POST" )
00045 Q_CLASSINFO( "EnableRecordSchedule_Method", "POST" )
00046 Q_CLASSINFO( "DisableRecordSchedule_Method", "POST" )
00047
00048 public:
00049
00050
00051
00052
00053 DvrServices( QObject *parent = 0 ) : Service( parent )
00054 {
00055 DTC::ProgramList::InitializeCustomTypes();
00056 DTC::EncoderList::InitializeCustomTypes();
00057 DTC::RecRuleList::InitializeCustomTypes();
00058 }
00059
00060 public slots:
00061
00062 virtual DTC::ProgramList* GetExpiringList ( int StartIndex,
00063 int Count ) = 0;
00064
00065 virtual DTC::ProgramList* GetRecordedList ( bool Descending,
00066 int StartIndex,
00067 int Count ) = 0;
00068
00069 virtual DTC::ProgramList* GetFilteredRecordedList ( bool Descending,
00070 int StartIndex,
00071 int Count,
00072 const QString &TitleRegEx,
00073 const QString &RecGroup,
00074 const QString &StorageGroup ) = 0;
00075
00076 virtual DTC::Program* GetRecorded ( int ChanId,
00077 const QDateTime &StartTime ) = 0;
00078
00079 virtual bool RemoveRecorded ( int ChanId,
00080 const QDateTime &StartTime ) = 0;
00081
00082 virtual DTC::ProgramList* GetConflictList ( int StartIndex,
00083 int Count ) = 0;
00084
00085 virtual DTC::ProgramList* GetUpcomingList ( int StartIndex,
00086 int Count,
00087 bool ShowAll ) = 0;
00088
00089 virtual DTC::EncoderList* GetEncoderList ( ) = 0;
00090
00091
00092
00093 virtual int AddRecordSchedule ( int ChanId,
00094 QDateTime StartTime,
00095 int ParentId,
00096 bool Inactive,
00097 uint Season,
00098 uint Episode,
00099 QString Inetref,
00100 int FindId,
00101 QString Type,
00102 QString SearchType,
00103 int RecPriority,
00104 uint PreferredInput,
00105 int StartOffset,
00106 int EndOffset,
00107 QString DupMethod,
00108 QString DupIn,
00109 uint Filter,
00110 QString RecProfile,
00111 QString RecGroup,
00112 QString StorageGroup,
00113 QString PlayGroup,
00114 bool AutoExpire,
00115 int MaxEpisodes,
00116 bool MaxNewest,
00117 bool AutoCommflag,
00118 bool AutoTranscode,
00119 bool AutoMetaLookup,
00120 bool AutoUserJob1,
00121 bool AutoUserJob2,
00122 bool AutoUserJob3,
00123 bool AutoUserJob4,
00124 int Transcoder ) = 0;
00125
00126 virtual bool RemoveRecordSchedule ( uint RecordId ) = 0;
00127
00128 virtual DTC::RecRuleList* GetRecordScheduleList ( int StartIndex,
00129 int Count ) = 0;
00130
00131 virtual DTC::RecRule* GetRecordSchedule ( uint RecordId ) = 0;
00132
00133 virtual bool EnableRecordSchedule ( uint RecordId ) = 0;
00134
00135 virtual bool DisableRecordSchedule ( uint RecordId ) = 0;
00136
00137 };
00138
00139 #endif
00140