MythTV  master
rominfo.h
Go to the documentation of this file.
1 #ifndef ROMINFO_H_
2 #define ROMINFO_H_
3 
4 // C++
5 #include <utility>
6 
7 // Qt
8 #include <QList>
9 #include <QMetaType>
10 #include <QString>
11 
12 int romInDB(const QString& rom, const QString& gametype);
13 
14 class RomInfo
15 {
16  public:
17  static QList<RomInfo*> GetAllRomInfo();
18  static RomInfo *GetRomInfoById(int id);
19 
20  explicit RomInfo(int lid = 0, QString lromname = "", QString lsystem = "", QString lgamename ="",
21  QString lgenre = "", QString lyear = "", bool lfavorite = false,
22  QString lrompath = "", QString lcountry ="", QString lcrc_value = "",
23  int ldiskcount = 0, QString lgametype = "", int lromcount = 0,
24  QString lallsystems = "", QString lplot = "", QString lpublisher = "",
25  QString lversion = "", QString lscreenshot = "", QString lfanart = "",
26  QString lboxart = "", QString linetref = "")
27  : m_id(lid),
28  m_romname(std::move(lromname)),
29  m_system(std::move(lsystem)),
30  m_gamename(std::move(lgamename)),
31  m_genre(std::move(lgenre)),
32  m_country(std::move(lcountry)),
33  m_crcValue(std::move(lcrc_value)),
34  m_gametype(std::move(lgametype)),
35  m_allsystems(std::move(lallsystems)),
36  m_plot(std::move(lplot)),
37  m_publisher(std::move(lpublisher)),
38  m_version(std::move(lversion)),
39  m_romcount(lromcount),
40  m_diskcount(ldiskcount),
41  m_year(std::move(lyear)),
42  m_favorite(lfavorite),
43  m_rompath(std::move(lrompath)),
44  m_screenshot(std::move(lscreenshot)),
45  m_fanart(std::move(lfanart)),
46  m_boxart(std::move(lboxart)),
47  m_inetref(std::move(linetref))
48  {
49  }
50 
51  RomInfo(const RomInfo &lhs) = default;
52 
53  ~RomInfo() = default;
54 
55  static bool FindImage(QString BaseFileName, QString *result);
56 
57  int Id() const { return m_id; }
58  void setId(int lid) { m_id = lid; }
59 
60  QString Rompath() const { return m_rompath; }
61  void setRompath(const QString &lrompath) { m_rompath = lrompath; }
62 
63  QString Screenshot() const { return m_screenshot; }
64  void setScreenshot(const QString &lscreenshot) { m_screenshot = lscreenshot; }
65 
66  QString Fanart() const { return m_fanart; }
67  void setFanart(const QString &lfanart) { m_fanart = lfanart; }
68 
69  QString Boxart() const { return m_boxart; }
70  void setBoxart(const QString &lboxart) { m_boxart = lboxart; }
71 
72  QString Romname() const { return m_romname; }
73  void setRomname(const QString &lromname) { m_romname = lromname; }
74 
75  QString System() const { return m_system; }
76  void setSystem(const QString &lsystem) { m_system = lsystem; }
77 
78  QString Gamename() const { return m_gamename; }
79  void setGamename(const QString &lgamename) { m_gamename = lgamename; }
80 
81  QString Genre() const { return m_genre; }
82  void setGenre(const QString &lgenre) { m_genre = lgenre; }
83 
84  QString Country() const { return m_country; }
85  void setCountry(const QString &lcountry) { m_country = lcountry; }
86 
87  QString GameType() const { return m_gametype; }
88  void setGameType(const QString &lgametype) { m_gametype = lgametype; }
89 
90  int RomCount() const { return m_romcount; }
91  void setRomCount(int lromcount) { m_romcount = lromcount; }
92 
93  QString AllSystems() const { return m_allsystems; }
94  void setAllSystems(const QString &lallsystems) { m_allsystems = lallsystems; }
95 
96  int DiskCount() const { return m_diskcount; }
97  void setDiskCount(int ldiskcount) { m_diskcount = ldiskcount; }
98 
99  QString CRC_VALUE() const { return m_crcValue; }
100  void setCRC_VALUE(const QString &lcrc_value) { m_crcValue = lcrc_value; }
101 
102  QString Plot() const { return m_plot; }
103  void setPlot(const QString &lplot) { m_plot = lplot; }
104 
105  QString Publisher() const { return m_publisher; }
106  void setPublisher(const QString &lpublisher) { m_publisher = lpublisher; }
107 
108  QString Version() const { return m_version; }
109  void setVersion(const QString &lversion) { m_version = lversion; }
110 
111  QString Year() const { return m_year; }
112  void setYear(const QString &lyear) { m_year = lyear; }
113 
114  QString Inetref() const { return m_inetref; }
115  void setInetref(const QString &linetref) { m_inetref = linetref; }
116 
117  bool Favorite() const { return m_favorite; }
118  void setFavorite(bool updateDatabase = false);
119 
120  QString getExtension() const;
121  QString toString() const;
122 
123  void setField(const QString& field, const QString& data);
124  void fillData();
125 
126  void SaveToDatabase() const;
127  void DeleteFromDatabase() const;
128 
129  protected:
130  int m_id;
131  QString m_romname;
132  QString m_system;
133  QString m_gamename;
134  QString m_genre;
135  QString m_country;
136  QString m_crcValue;
137  QString m_gametype;
138  QString m_allsystems;
139  QString m_plot;
140  QString m_publisher;
141  QString m_version;
144  QString m_year;
146  QString m_rompath;
147  QString m_screenshot;
148  QString m_fanart;
149  QString m_boxart;
150  QString m_inetref;
151 };
152 
153 bool operator==(const RomInfo& a, const RomInfo& b);
154 
156 
157 #endif
RomInfo::m_favorite
bool m_favorite
Definition: rominfo.h:145
RomInfo::CRC_VALUE
QString CRC_VALUE() const
Definition: rominfo.h:99
RomInfo::Boxart
QString Boxart() const
Definition: rominfo.h:69
RomInfo::setGameType
void setGameType(const QString &lgametype)
Definition: rominfo.h:88
RomInfo::m_id
int m_id
Definition: rominfo.h:130
RomInfo::m_publisher
QString m_publisher
Definition: rominfo.h:140
RomInfo::Id
int Id() const
Definition: rominfo.h:57
RomInfo::Plot
QString Plot() const
Definition: rominfo.h:102
RomInfo::FindImage
static bool FindImage(QString BaseFileName, QString *result)
Definition: rominfo.cpp:144
RomInfo::~RomInfo
~RomInfo()=default
RomInfo::AllSystems
QString AllSystems() const
Definition: rominfo.h:93
RomInfo::Country
QString Country() const
Definition: rominfo.h:84
RomInfo::Gamename
QString Gamename() const
Definition: rominfo.h:78
RomInfo::Favorite
bool Favorite() const
Definition: rominfo.h:117
RomInfo::RomCount
int RomCount() const
Definition: rominfo.h:90
RomInfo::setBoxart
void setBoxart(const QString &lboxart)
Definition: rominfo.h:70
RomInfo::setCountry
void setCountry(const QString &lcountry)
Definition: rominfo.h:85
RomInfo::GetAllRomInfo
static QList< RomInfo * > GetAllRomInfo()
Definition: rominfo.cpp:320
RomInfo::Genre
QString Genre() const
Definition: rominfo.h:81
RomInfo::Version
QString Version() const
Definition: rominfo.h:108
RomInfo::setSystem
void setSystem(const QString &lsystem)
Definition: rominfo.h:76
RomInfo::System
QString System() const
Definition: rominfo.h:75
RomInfo::m_country
QString m_country
Definition: rominfo.h:135
RomInfo::setId
void setId(int lid)
Definition: rominfo.h:58
RomInfo::m_crcValue
QString m_crcValue
Definition: rominfo.h:136
RomInfo::m_plot
QString m_plot
Definition: rominfo.h:139
Q_DECLARE_METATYPE
Q_DECLARE_METATYPE(StandardSetting *)
RomInfo::m_romname
QString m_romname
Definition: rominfo.h:131
RomInfo::Screenshot
QString Screenshot() const
Definition: rominfo.h:63
RomInfo::m_inetref
QString m_inetref
Definition: rominfo.h:150
RomInfo::fillData
void fillData()
Definition: rominfo.cpp:247
RomInfo::m_screenshot
QString m_screenshot
Definition: rominfo.h:147
RomInfo::setInetref
void setInetref(const QString &linetref)
Definition: rominfo.h:115
RomInfo::setGamename
void setGamename(const QString &lgamename)
Definition: rominfo.h:79
RomInfo::Rompath
QString Rompath() const
Definition: rominfo.h:60
RomInfo::setAllSystems
void setAllSystems(const QString &lallsystems)
Definition: rominfo.h:94
RomInfo::setVersion
void setVersion(const QString &lversion)
Definition: rominfo.h:109
RomInfo::m_rompath
QString m_rompath
Definition: rominfo.h:146
RomInfo::setPublisher
void setPublisher(const QString &lpublisher)
Definition: rominfo.h:106
RomInfo::setFavorite
void setFavorite(bool updateDatabase=false)
Definition: rominfo.cpp:213
RomInfo::m_year
QString m_year
Definition: rominfo.h:144
RomInfo::setFanart
void setFanart(const QString &lfanart)
Definition: rominfo.h:67
RomInfo::m_gamename
QString m_gamename
Definition: rominfo.h:133
RomInfo::setPlot
void setPlot(const QString &lplot)
Definition: rominfo.h:103
RomInfo::m_genre
QString m_genre
Definition: rominfo.h:134
RomInfo::GetRomInfoById
static RomInfo * GetRomInfoById(int id)
Definition: rominfo.cpp:368
RomInfo::setDiskCount
void setDiskCount(int ldiskcount)
Definition: rominfo.h:97
RomInfo::Publisher
QString Publisher() const
Definition: rominfo.h:105
RomInfo::setRomname
void setRomname(const QString &lromname)
Definition: rominfo.h:73
RomInfo::setRompath
void setRompath(const QString &lrompath)
Definition: rominfo.h:61
RomInfo
Definition: rominfo.h:14
RomInfo::DiskCount
int DiskCount() const
Definition: rominfo.h:96
RomInfo::setCRC_VALUE
void setCRC_VALUE(const QString &lcrc_value)
Definition: rominfo.h:100
RomInfo::m_gametype
QString m_gametype
Definition: rominfo.h:137
RomInfo::m_boxart
QString m_boxart
Definition: rominfo.h:149
RomInfo::Fanart
QString Fanart() const
Definition: rominfo.h:66
RomInfo::setRomCount
void setRomCount(int lromcount)
Definition: rominfo.h:91
operator==
bool operator==(const RomInfo &a, const RomInfo &b)
Definition: rominfo.cpp:15
std
Definition: mythchrono.h:23
RomInfo::getExtension
QString getExtension() const
Definition: rominfo.cpp:234
RomInfo::setYear
void setYear(const QString &lyear)
Definition: rominfo.h:112
RomInfo::toString
QString toString() const
Definition: rominfo.cpp:416
RomInfo::DeleteFromDatabase
void DeleteFromDatabase() const
Definition: rominfo.cpp:97
RomInfo::SaveToDatabase
void SaveToDatabase() const
Definition: rominfo.cpp:20
RomInfo::RomInfo
RomInfo(int lid=0, QString lromname="", QString lsystem="", QString lgamename="", QString lgenre="", QString lyear="", bool lfavorite=false, QString lrompath="", QString lcountry="", QString lcrc_value="", int ldiskcount=0, QString lgametype="", int lromcount=0, QString lallsystems="", QString lplot="", QString lpublisher="", QString lversion="", QString lscreenshot="", QString lfanart="", QString lboxart="", QString linetref="")
Definition: rominfo.h:20
RomInfo::setField
void setField(const QString &field, const QString &data)
Definition: rominfo.cpp:172
romInDB
int romInDB(const QString &rom, const QString &gametype)
Definition: rominfo.cpp:117
RomInfo::m_version
QString m_version
Definition: rominfo.h:141
RomInfo::m_allsystems
QString m_allsystems
Definition: rominfo.h:138
RomInfo::m_diskcount
int m_diskcount
Definition: rominfo.h:143
RomInfo::setScreenshot
void setScreenshot(const QString &lscreenshot)
Definition: rominfo.h:64
RomInfo::GameType
QString GameType() const
Definition: rominfo.h:87
RomInfo::m_fanart
QString m_fanart
Definition: rominfo.h:148
RomInfo::Inetref
QString Inetref() const
Definition: rominfo.h:114
RomInfo::Year
QString Year() const
Definition: rominfo.h:111
RomInfo::Romname
QString Romname() const
Definition: rominfo.h:72
RomInfo::m_system
QString m_system
Definition: rominfo.h:132
RomInfo::setGenre
void setGenre(const QString &lgenre)
Definition: rominfo.h:82
RomInfo::m_romcount
int m_romcount
Definition: rominfo.h:142