MythTV  master
serviceUtil.h
Go to the documentation of this file.
1 // Program Name: serviceUtil.h
3 // Created : Mar. 7, 2011
4 //
5 // Copyright (c) 2011 David Blain <dblain@mythtv.org>
6 //
7 // This program is free software; you can redistribute it and/or modify
8 // it under the terms of the GNU General Public License as published by
9 // the Free Software Foundation; either version 2 of the License, or
10 // (at your option) any later version.
11 //
12 // This program is distributed in the hope that it will be useful,
13 // but WITHOUT ANY WARRANTY; without even the implied warranty of
14 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 // GNU General Public License for more details.
16 //
17 // You should have received a copy of the GNU General Public License
18 // along with this program; if not, write to the Free Software
19 // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
20 //
21 // You should have received a copy of the GNU General Public License
22 // along with this program. If not, see <http://www.gnu.org/licenses/>.
23 //
25 
26 #ifndef SERVICEUTIL_H
27 #define SERVICEUTIL_H
28 
29 // MythTV
43 #include "libmythtv/channelgroup.h"
44 #include "libmythtv/channelinfo.h"
45 #include "libmythtv/inputinfo.h"
46 #include "libmythtv/programdata.h"
49 
50 template <typename T>
51 static inline void
52 ADD_SQL(QString& settings_var, MSqlBindings& bindvar,
53  const QString& col, const QString& api_param, const T& val)
54 {
55  settings_var += QString("%1=:%2, ").arg(col, api_param);
56  bindvar[QString(":").append(api_param)] = val;
57 }
58 
59 const QStringList KnownServices = { "Capture", "Channel", "Content", \
60  "Dvr", "Guide", "Music", \
61  "Myth", "Video" };
62 
63 void FillProgramInfo( DTC::Program *pProgram,
64  ProgramInfo *pInfo,
65  bool bIncChannel = true,
66  bool bDetails = true,
67  bool bIncCast = true);
68 
69 bool FillChannelInfo( DTC::ChannelInfo *pChannel,
70  uint nChanID,
71  bool bDetails = true );
72 
73 bool FillChannelInfo( DTC::ChannelInfo *pChannel,
74  const ChannelInfo &channelInfo,
75  bool bDetails = true );
76 
77 void FillChannelGroup( DTC::ChannelGroup *pGroup, const ChannelGroupItem& pGroupItem);
78 
79 void FillRecRuleInfo( DTC::RecRule *pRecRule,
80  RecordingRule *pRule );
81 
82 void FillArtworkInfoList( DTC::ArtworkInfoList *pArtworkInfoList,
83  const QString &sInetref,
84  uint nSeason );
85 
86 void FillGenreList( DTC::GenreList *pGenreList, int videoID);
87 
89  DTC::VideoMetadataInfo *pVideoMetadataInfo,
91  bool bDetails);
92 
93 void FillMusicMetadataInfo (DTC::MusicMetadataInfo *pVideoMetadataInfo,
94  MusicMetadata *pMetadata, bool bDetails);
95 
96 void FillInputInfo( DTC::Input *input, const InputInfo& inputInfo);
97 
98 void FillCastMemberList( DTC::CastMemberList *pCastMemberList,
99  ProgramInfo *pInfo);
100 
101 void FillCutList( DTC::CutList* pCutList, RecordingInfo* rInfo, int marktype);
102 
103 void FillCommBreak( DTC::CutList* pCutList, RecordingInfo* rInfo, int marktype);
104 
105 void FillSeek(DTC::CutList* pCutList, RecordingInfo* rInfo, MarkTypes marktype);
106 
107 int CreateRecordingGroup(const QString& groupName);
108 
109 DBCredits * jsonCastToCredits(const QJsonObject &cast);
110 
111 #endif // SERVICEUTIL_H
ChannelInfo
Definition: channelinfo.h:31
MSqlBindings
QMap< QString, QVariant > MSqlBindings
typedef for a map of string -> string bindings for generic queries.
Definition: mythdbcon.h:101
KnownServices
const QStringList KnownServices
Definition: serviceUtil.h:59
FillCutList
void FillCutList(DTC::CutList *pCutList, RecordingInfo *rInfo, int marktype)
Definition: serviceUtil.cpp:640
ADD_SQL
static void ADD_SQL(QString &settings_var, MSqlBindings &bindvar, const QString &col, const QString &api_param, const T &val)
Definition: serviceUtil.h:52
DTC::Program
Definition: programAndChannel.h:145
FillChannelGroup
void FillChannelGroup(DTC::ChannelGroup *pGroup, const ChannelGroupItem &pGroupItem)
Definition: serviceUtil.cpp:263
simple_ref_ptr
Definition: quicksp.h:24
ChannelGroupItem
Definition: channelgroup.h:15
RecordingInfo
Holds information on a TV Program one might wish to record.
Definition: recordinginfo.h:35
programdata.h
DTC::GenreList
Definition: genreList.h:25
FillInputInfo
void FillInputInfo(DTC::Input *input, const InputInfo &inputInfo)
Definition: serviceUtil.cpp:544
RecordingRule
Internal representation of a recording rule, mirrors the record table.
Definition: recordingrule.h:28
FillSeek
void FillSeek(DTC::CutList *pCutList, RecordingInfo *rInfo, MarkTypes marktype)
Definition: serviceUtil.cpp:732
FillMusicMetadataInfo
void FillMusicMetadataInfo(DTC::MusicMetadataInfo *pVideoMetadataInfo, MusicMetadata *pMetadata, bool bDetails)
Definition: serviceUtil.cpp:515
MusicMetadata
Definition: musicmetadata.h:80
FillCastMemberList
void FillCastMemberList(DTC::CastMemberList *pCastMemberList, ProgramInfo *pInfo)
Definition: serviceUtil.cpp:561
FillArtworkInfoList
void FillArtworkInfoList(DTC::ArtworkInfoList *pArtworkInfoList, const QString &sInetref, uint nSeason)
Definition: serviceUtil.cpp:338
DBCredits
std::vector< DBPerson > DBCredits
Definition: programdata.h:73
musicMetadataInfo.h
genreList.h
DTC::CastMemberList
Definition: castMemberList.h:16
programinfo.h
DTC::Input
Definition: input.h:24
FillRecRuleInfo
void FillRecRuleInfo(DTC::RecRule *pRecRule, RecordingRule *pRule)
Definition: serviceUtil.cpp:277
cutList.h
jsonCastToCredits
DBCredits * jsonCastToCredits(const QJsonObject &cast)
Definition: serviceUtil.cpp:770
FillVideoMetadataInfo
void FillVideoMetadataInfo(DTC::VideoMetadataInfo *pVideoMetadataInfo, const VideoMetadataListManager::VideoMetadataPtr &pMetadata, bool bDetails)
Definition: serviceUtil.cpp:412
FillGenreList
void FillGenreList(DTC::GenreList *pGenreList, int videoID)
Definition: serviceUtil.cpp:385
recRule.h
uint
unsigned int uint
Definition: compat.h:81
FillProgramInfo
void FillProgramInfo(DTC::Program *pProgram, ProgramInfo *pInfo, bool bIncChannel=true, bool bDetails=true, bool bIncCast=true)
Definition: serviceUtil.cpp:47
videometadatalistmanager.h
channelinfo.h
programAndChannel.h
DTC::ChannelGroup
Definition: channelGroup.h:23
recordinginfo.h
channelGroup.h
ProgramInfo
Holds information on recordings and videos.
Definition: programinfo.h:67
channelgroup.h
CreateRecordingGroup
int CreateRecordingGroup(const QString &groupName)
Definition: serviceUtil.cpp:750
DTC::RecRule
Definition: recRule.h:15
FillCommBreak
void FillCommBreak(DTC::CutList *pCutList, RecordingInfo *rInfo, int marktype)
Definition: serviceUtil.cpp:686
MarkTypes
MarkTypes
Definition: programtypes.h:48
DTC::VideoMetadataInfo
Definition: videoMetadataInfo.h:29
videoMetadataInfo.h
inputinfo.h
InputInfo
Definition: inputinfo.h:14
DTC::MusicMetadataInfo
Definition: musicMetadataInfo.h:25
DTC::ChannelInfo
Definition: programAndChannel.h:30
artworkInfoList.h
recordingrule.h
DTC::ArtworkInfoList
Definition: artworkInfoList.h:25
input.h
castMemberList.h
musicmetadata.h
FillChannelInfo
bool FillChannelInfo(DTC::ChannelInfo *pChannel, uint nChanID, bool bDetails=true)
Definition: serviceUtil.cpp:175
DTC::CutList
Definition: cutList.h:25