11 #include "XBDateTime.h" 12 #include "utils/EmbeddedArt.h" 13 #include "utils/Fanart.h" 14 #include "utils/ISortable.h" 15 #include "utils/ScraperUrl.h" 16 #include "utils/StreamDetails.h" 17 #include "video/Bookmark.h" 31 return order < right.order;
44 explicit CRating(
float r): rating(r) {}
45 CRating(
float r,
int v): rating(r), votes(v) {}
49 typedef std::map<std::string, CRating> RatingMap;
72 bool Load(
const TiXmlElement *element,
bool append =
false,
bool prioritise =
false);
73 bool Save(TiXmlNode *node,
const std::string &tag,
bool savePathInfo =
true,
const TiXmlElement *additionalNode = NULL);
76 void Serialize(
CVariant& value)
const override;
77 void ToSortable(SortItem& sortable, Field field)
const override;
78 const CRating GetRating(std::string type =
"")
const;
79 const std::string& GetDefaultRating()
const;
80 const std::string GetUniqueID(std::string type =
"")
const;
81 const std::map<std::string, std::string>& GetUniqueIDs()
const;
82 const std::string& GetDefaultUniqueID()
const;
83 bool HasUniqueID()
const;
84 virtual bool HasYear()
const;
85 virtual int GetYear()
const;
86 bool HasPremiered()
const;
89 const std::string GetCast(
bool bIncludeRole =
false)
const;
90 bool HasStreamDetails()
const;
93 const std::string& GetPath()
const 95 if (m_strFileNameAndPath.empty())
97 return m_strFileNameAndPath;
103 void SetDuration(
int duration);
108 unsigned int GetDuration()
const;
113 unsigned int GetStaticDuration()
const;
119 static unsigned int GetDurationFromMinuteString(
const std::string &runtime);
121 void SetBasePath(std::string basePath);
122 void SetDirector(std::vector<std::string> director);
123 void SetWritingCredits(std::vector<std::string> writingCredits);
124 void SetGenre(std::vector<std::string> genre);
125 void SetCountry(std::vector<std::string> country);
126 void SetTagLine(std::string tagLine);
127 void SetPlotOutline(std::string plotOutline);
128 void SetTrailer(std::string trailer);
129 void SetPlot(std::string plot);
130 std::string
const &GetTitle();
131 void SetTitle(std::string title);
132 void SetSortTitle(std::string sortTitle);
134 void SetRating(
float rating,
int votes,
const std::string& type =
"",
bool def =
false);
135 void SetRating(
CRating rating,
const std::string& type =
"",
bool def =
false);
136 void SetRating(
float rating,
const std::string& type =
"",
bool def =
false);
137 void RemoveRating(
const std::string& type);
138 void SetRatings(RatingMap ratings,
const std::string& defaultRating =
"");
139 void SetVotes(
int votes,
const std::string& type =
"");
140 void SetUniqueIDs(std::map<std::string, std::string> uniqueIDs);
141 void SetPremiered(
const CDateTime& premiered);
142 void SetPremieredFromDBDate(
const std::string& premieredString);
143 virtual void SetYear(
int year);
144 void SetArtist(std::vector<std::string> artist);
145 void SetSet(std::string
set);
146 void SetSetOverview(std::string setOverview);
147 void SetTags(std::vector<std::string> tags);
148 void SetFile(std::string file);
149 void SetPath(std::string path);
150 void SetMPAARating(std::string mpaaRating);
151 void SetFileNameAndPath(std::string fileNameAndPath);
152 void SetOriginalTitle(std::string originalTitle);
153 void SetEpisodeGuide(std::string episodeGuide);
154 void SetStatus(std::string status);
155 void SetProductionCode(std::string productionCode);
156 void SetShowTitle(std::string showTitle);
157 void SetStudio(std::vector<std::string> studio);
158 void SetAlbum(std::string album);
159 void SetShowLink(std::vector<std::string> showLink);
160 void SetUniqueID(
const std::string& uniqueid,
const std::string& type =
"",
bool def =
false);
161 void RemoveUniqueID(
const std::string& type);
162 void SetNamedSeasons(std::map<int, std::string> namedSeasons);
163 void SetUserrating(
int userrating);
169 virtual int GetPlayCount()
const;
176 virtual bool SetPlayCount(
int count);
182 virtual bool IncrementPlayCount();
187 virtual void ResetPlayCount();
193 virtual bool IsPlayCountSet()
const;
199 virtual CBookmark GetResumePoint()
const;
206 virtual bool SetResumePoint(
const CBookmark &resumePoint);
215 virtual bool SetResumePoint(
double timeInSeconds,
double totalTimeInSeconds,
const std::string &playerState);
217 std::string m_basePath;
219 std::vector<std::string> m_director;
220 std::vector<std::string> m_writingCredits;
221 std::vector<std::string> m_genre;
222 std::vector<std::string> m_country;
223 std::string m_strTagLine;
224 std::string m_strPlotOutline;
225 std::string m_strTrailer;
226 std::string m_strPlot;
228 std::string m_strTitle;
229 std::string m_strSortTitle;
230 std::vector<std::string> m_artist;
231 std::vector< SActorInfo > m_cast;
232 typedef std::vector< SActorInfo >::const_iterator iCast;
240 std::vector<std::string> m_tags;
241 std::string m_strFile;
242 std::string m_strPath;
243 std::string m_strMPAARating;
244 std::string m_strFileNameAndPath;
245 std::string m_strOriginalTitle;
246 std::string m_strEpisodeGuide;
248 bool m_bHasPremiered;
249 std::string m_strStatus;
250 std::string m_strProductionCode;
252 std::string m_strShowTitle;
253 std::vector<std::string> m_studio;
254 std::string m_strAlbum;
256 std::vector<std::string> m_showLink;
257 std::map<int, std::string> m_namedSeasons;
265 int m_iSpecialSortSeason;
266 int m_iSpecialSortEpisode;
294 void ParseNative(
const TiXmlElement* element,
bool prioritise);
296 std::string m_strDefaultRating;
297 std::string m_strDefaultUniqueID;
298 std::map<std::string, std::string> m_uniqueIDs;
299 std::string Trim(std::string &&value);
300 std::vector<std::string> Trim(std::vector<std::string> &&items);
304 static const int PLAYCOUNT_NOT_SET = -1;
307 typedef std::vector<CVideoInfoTag> VECMOVIES;
int id
ID of movie set in database.
Definition: VideoInfoTag.h:236
std::vector< EmbeddedArtInfo > m_coverArt
art information
Definition: VideoInfoTag.h:281
Definition: VideoInfoTag.h:40
SetInfo m_set
Assigned movie set.
Definition: VideoInfoTag.h:239
/brief CFanart is the core of fanart support and contains all fanart data for a specific show ...
Definition: Fanart.h:30
Definition: Bookmark.h:14
< Struct holding information about a movie set
Definition: VideoInfoTag.h:233
std::string overview
Overview/description of the movie set.
Definition: VideoInfoTag.h:237
Definition: StreamDetails.h:92
Definition: ISerializable.h:13
Definition: VideoInfoTag.h:27
DateTime class, which uses FileTime as it's base.
Definition: XBDateTime.h:63
Definition: ISortable.h:15
unsigned int m_duration
duration in seconds
Definition: VideoInfoTag.h:284
Definition: VideoInfoTag.h:51
std::string title
Title of the movie set.
Definition: VideoInfoTag.h:235
Definition: IArchivable.h:13
Definition: ScraperUrl.h:21