1 #ifndef VIDEOMETADATA_H_
2 #define VIDEOMETADATA_H_
9 #include <QCoreApplication>
37 static int UpdateHashedDBRecord(
const QString &hash,
const QString &file_name,
39 static QString VideoFileHash(
const QString &file_name,
const QString &host);
40 static QString FilenameToMeta(
const QString &file_name,
int position);
41 static QString TrimTitle(
const QString &title,
bool ignore_case);
45 const QString &sortFilename = QString(),
46 const QString &hash = QString(),
47 const QString &trailer = QString(),
48 const QString &coverfile = QString(),
49 const QString &screenshot = QString(),
50 const QString &banner = QString(),
51 const QString &fanart = QString(),
52 const QString &title = QString(),
53 const QString &sortTitle = QString(),
54 const QString &subtitle = QString(),
55 const QString &sortSubtitle = QString(),
56 const QString &tagline = QString(),
58 QDate releasedate = QDate(),
59 const QString &inetref = QString(),
60 int collectionref = 0,
61 const QString &homepage = QString(),
62 const QString &director = QString(),
63 const QString &studio = QString(),
64 const QString &plot = QString(),
65 float userrating = 0.0,
66 const QString &
rating = QString(),
71 QDate insertdate = QDate(),
78 const QString &playcommand = QString(),
79 const QString &category = QString(),
83 const QString &host =
"",
84 bool processed =
false,
92 void toMap(
InfoMap &metadataMap);
93 QString GetText(
const QString& name)
const;
94 void GetStateMap(
InfoMap &stateMap)
const;
95 QString
GetState(
const QString& name)
const;
96 void GetImageMap(
InfoMap &imageMap);
97 QString GetImage(
const QString& name)
const;
99 static QString MetadataGetTextCb(
const QString& name,
void *data);
100 static QString MetadataGetImageCb(
const QString& name,
void *data);
101 static QString MetadataGetStateCb(
const QString& name,
void *data);
103 const QString &GetPrefix()
const;
104 void SetPrefix(
const QString &
prefix);
106 const QString &GetTitle()
const;
107 const QString &GetSortTitle()
const;
108 void SetTitle(
const QString& title,
const QString& sortTitle =
"");
110 const QString &GetSubtitle()
const;
111 const QString &GetSortSubtitle()
const;
112 void SetSubtitle(
const QString &subtitle,
const QString &sortSubtitle =
"");
114 const QString &GetTagline()
const;
115 void SetTagline(
const QString &tagline);
118 void SetYear(
int year);
120 QDate GetReleaseDate()
const;
121 void SetReleaseDate(QDate releasedate);
123 const QString &GetInetRef()
const;
124 void SetInetRef(
const QString &inetRef);
126 int GetCollectionRef()
const;
127 void SetCollectionRef(
int collectionref);
129 const QString &GetHomepage()
const;
130 void SetHomepage(
const QString &homepage);
132 const QString &GetDirector()
const;
133 void SetDirector(
const QString &director);
135 const QString &GetStudio()
const;
136 void SetStudio(
const QString &studio);
138 const QString &GetPlot()
const;
139 void SetPlot(
const QString &plot);
141 float GetUserRating()
const;
142 void SetUserRating(
float userRating);
144 const QString &GetRating()
const;
145 void SetRating(
const QString &
rating);
148 void SetLength(std::chrono::minutes length);
150 int GetSeason()
const;
151 void SetSeason(
int season);
153 int GetEpisode()
const;
154 void SetEpisode(
int episode);
156 QDate GetInsertdate()
const;
157 void SetInsertdate(QDate date);
159 unsigned int GetID()
const;
162 int GetChildID()
const;
163 void SetChildID(
int childID);
165 bool GetBrowse()
const;
166 void SetBrowse(
bool browse);
168 bool GetWatched()
const;
169 void SetWatched(
bool watched);
171 bool GetProcessed()
const;
172 void SetProcessed(
bool processed);
177 const QString &GetPlayCommand()
const;
178 void SetPlayCommand(
const QString &playCommand);
180 unsigned int GetPlayCount()
const;
181 void SetPlayCount(
int count);
186 const QString &GetHost()
const;
187 void SetHost(
const QString &host);
189 const QString &GetFilename()
const;
190 const QString &GetSortFilename()
const;
191 void SetFilename(
const QString &
filename,
const QString &sortFilename =
"");
193 const QString &GetHash()
const;
194 void SetHash(
const QString &hash);
196 const QString &GetTrailer()
const;
197 void SetTrailer(
const QString &trailer);
199 const QString &GetCoverFile()
const;
200 void SetCoverFile(
const QString &coverFile);
202 const QString &GetScreenshot()
const;
203 void SetScreenshot(
const QString &screenshot);
205 const QString &GetBanner()
const;
206 void SetBanner(
const QString &banner);
208 const QString &GetFanart()
const;
209 void SetFanart(
const QString &fanart);
211 const QString &GetCategory()
const;
222 int GetCategoryID()
const;
223 void SetCategoryID(
int id);
225 void SaveToDatabase();
226 void UpdateDatabase();
228 bool DeleteFromDatabase();
239 bool IsHostSet()
const;