Files
qtMultimediaDB/cmovie.h
T
2017-10-19 16:26:47 +02:00

157 lines
3.7 KiB
C++

#ifndef CMOVIE_H
#define CMOVIE_H
#include <QMetaType>
#include <QDate>
#include <QSqlDatabase>
#include <QStringList>
#include <QMap>
class cMovie
{
public:
enum State
{
StateUnknown = 0,
StateInit = 1,
StateProgress = 2,
StateDone = 3,
};
cMovie();
void setMovieTitle(const QString& szTitle);
QString movieTitle();
void setMovieID(const qint32 iID);
qint32 movieID();
void setOriginalTitle(const QString& szOriginalTitle);
QString originalTitle();
void setReleaseDate(const QString& szDate);
QDate releaseDate();
void setAdult(const bool bAdult);
bool adult();
void setBackdropPath(const QString& szBackdropPath);
QString backdropPath();
void setBelongsToCollection(const QString& szBelongsToCollection);
QString belongsToCollection();
void setBudget(const qreal dBudget);
qreal budget();
void setGenres(const QString& szGenres);
void setGenres(const QStringList& szGenres);
QStringList genres();
void setHomepage(const QString& szHomepage);
QString homepage();
void setIMDBID(const QString& szIMDBID);
QString imdbID();
void setOriginalLanguage(const QString& szOriginalLanguage);
QString originalLanguage();
void setOverview(const QString& szOverview);
QString overview();
void setPopularity(const qreal dPopularity);
qreal popularity();
void setPosterPath(const QString& szPosterPath);
QString posterPath();
void setProductionCompanies(const QString& szProductionCompanies);
void setProductionCompanies(const QStringList& szProductionCompanies);
QStringList productionCompanies();
void setProductionCountries(const QString& szProductionCountries);
void setProductionCountries(const QStringList& szProductionCountries);
QStringList productionCountries();
void setRevenue(const qreal dRevenue);
qreal revenue();
void setRuntime(const qint32 iRuntime);
qint32 runtime();
void setSpokenLanguages(const QString& szSpokenLanguages);
void setSpokenLanguages(const QStringList& szSpokenLanguages);
QStringList spokenLanguages();
void setStatus(const QString& szStatus);
QString status();
void setTagline(const QString& szTagline);
QString tagline();
void setVideo(const bool bVideo);
bool video();
void setVoteAverage(const qreal dVoteAverage);
qreal voteAverage();
void setVoteCount(const qint32 iVoteCount);
qint32 voteCount();
void setCast(const QStringList& szCast);
QStringList cast();
void setCrew(const QStringList& szCrew);
QStringList crew();
void setState(const State state);
State state();
bool save(QSqlDatabase& db);
bool del(QSqlDatabase& db);
private:
QString m_szMovieTitle;
qint32 m_iID;
QString m_szOriginalTitle;
QDate m_releaseDate;
bool m_bAdult;
QString m_szBackdropPath;
QString m_szBelongsToCollection;
qreal m_dBudget;
QStringList m_szGenres;
QString m_szHomepage;
QString m_szIMDBID;
QString m_szOriginalLanguage;
QString m_szOverview;
qreal m_dPopularity;
QString m_szPosterPath;
QStringList m_szProductionCompanies;
QStringList m_szProductionCountries;
qreal m_dRevenue;
qint32 m_iRuntime;
QStringList m_szSpokenLanguages;
QString m_szStatus;
QString m_szTagline;
bool m_bVideo;
qreal m_dVoteAverage;
qint32 m_iVoteCount;
QStringList m_szCast;
QStringList m_szCrew;
State m_iState;
};
Q_DECLARE_METATYPE(cMovie*)
class cMovieList : public QList<cMovie*>
{
public:
cMovie* add(const qint32& iID);
cMovie* add(cMovie* lpMovie);
};
#endif // CMOVIE_H