MythTV master
Public Types | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
VideoMetadata Class Reference

#include <libmythmetadata/videometadata.h>

Collaboration diagram for VideoMetadata:
[legend]

Public Types

using genre_entry = std::pair< int, QString >
 
using country_entry = std::pair< int, QString >
 
using cast_entry = std::pair< int, QString >
 
using genre_list = std::vector< genre_entry >
 
using country_list = std::vector< country_entry >
 
using cast_list = std::vector< cast_entry >
 

Public Member Functions

 VideoMetadata (const QString &filename=QString(), const QString &sortFilename=QString(), const QString &hash=QString(), const QString &trailer=QString(), const QString &coverfile=QString(), const QString &screenshot=QString(), const QString &banner=QString(), const QString &fanart=QString(), const QString &title=QString(), const QString &sortTitle=QString(), const QString &subtitle=QString(), const QString &sortSubtitle=QString(), const QString &tagline=QString(), int year=VIDEO_YEAR_DEFAULT, QDate releasedate=QDate(), const QString &inetref=QString(), int collectionref=0, const QString &homepage=QString(), const QString &director=QString(), const QString &studio=QString(), const QString &plot=QString(), float userrating=0.0, const QString &rating=QString(), int length=0, int playcount=0, int season=0, int episode=0, QDate insertdate=QDate(), int id=0, ParentalLevel::Level showlevel=ParentalLevel::plLowest, int categoryID=0, int childID=-1, bool browse=true, bool watched=false, const QString &playcommand=QString(), const QString &category=QString(), const genre_list &genres=genre_list(), const country_list &countries=country_list(), const cast_list &cast=cast_list(), const QString &host="", bool processed=false, VideoContentType contenttype=kContentUnknown)
 
 ~VideoMetadata ()
 
 VideoMetadata (MSqlQuery &query)
 
 VideoMetadata (const VideoMetadata &rhs)
 
VideoMetadataoperator= (const VideoMetadata &rhs)
 
bool sortBefore (const VideoMetadata &rhs) const
 
void toMap (InfoMap &metadataMap)
 
QString GetText (const QString &name) const
 
void GetStateMap (InfoMap &stateMap) const
 
QString GetState (const QString &name) const
 
void GetImageMap (InfoMap &imageMap)
 
QString GetImage (const QString &name) const
 
const QString & GetPrefix () const
 
void SetPrefix (const QString &prefix)
 
const QString & GetTitle () const
 
const QString & GetSortTitle () const
 
void SetTitle (const QString &title, const QString &sortTitle="")
 
const QString & GetSubtitle () const
 
const QString & GetSortSubtitle () const
 
void SetSubtitle (const QString &subtitle, const QString &sortSubtitle="")
 
const QString & GetTagline () const
 
void SetTagline (const QString &tagline)
 
int GetYear () const
 
void SetYear (int year)
 
QDate GetReleaseDate () const
 
void SetReleaseDate (QDate releasedate)
 
const QString & GetInetRef () const
 
void SetInetRef (const QString &inetRef)
 
int GetCollectionRef () const
 
void SetCollectionRef (int collectionref)
 
const QString & GetHomepage () const
 
void SetHomepage (const QString &homepage)
 
const QString & GetDirector () const
 
void SetDirector (const QString &director)
 
const QString & GetStudio () const
 
void SetStudio (const QString &studio)
 
const QString & GetPlot () const
 
void SetPlot (const QString &plot)
 
float GetUserRating () const
 
void SetUserRating (float userRating)
 
const QString & GetRating () const
 
void SetRating (const QString &rating)
 
std::chrono::minutes GetLength () const
 
void SetLength (std::chrono::minutes length)
 
int GetSeason () const
 
void SetSeason (int season)
 
int GetEpisode () const
 
void SetEpisode (int episode)
 
QDate GetInsertdate () const
 
void SetInsertdate (QDate date)
 
unsigned int GetID () const
 
void SetID (int id)
 
int GetChildID () const
 
void SetChildID (int childID)
 
bool GetBrowse () const
 
void SetBrowse (bool browse)
 
bool GetWatched () const
 
void SetWatched (bool watched)
 
bool GetProcessed () const
 
void SetProcessed (bool processed)
 
VideoContentType GetContentType () const
 
void SetContentType (VideoContentType contenttype)
 
const QString & GetPlayCommand () const
 
void SetPlayCommand (const QString &playCommand)
 
unsigned int GetPlayCount () const
 
void SetPlayCount (int count)
 
ParentalLevel::Level GetShowLevel () const
 
void SetShowLevel (ParentalLevel::Level showLevel)
 
const QString & GetHost () const
 
void SetHost (const QString &host)
 
const QString & GetFilename () const
 
const QString & GetSortFilename () const
 
void SetFilename (const QString &filename, const QString &sortFilename="")
 
const QString & GetHash () const
 
void SetHash (const QString &hash)
 
const QString & GetTrailer () const
 
void SetTrailer (const QString &trailer)
 
const QString & GetCoverFile () const
 
void SetCoverFile (const QString &coverFile)
 
const QString & GetScreenshot () const
 
void SetScreenshot (const QString &screenshot)
 
const QString & GetBanner () const
 
void SetBanner (const QString &banner)
 
const QString & GetFanart () const
 
void SetFanart (const QString &fanart)
 
const QString & GetCategory () const
 
const genre_listGetGenres () const
 
void SetGenres (const genre_list &genres)
 
const cast_listGetCast () const
 
void SetCast (const cast_list &cast)
 
const country_listGetCountries () const
 
void SetCountries (const country_list &countries)
 
int GetCategoryID () const
 
void SetCategoryID (int id)
 
void SaveToDatabase ()
 
void UpdateDatabase ()
 
bool DeleteFromDatabase ()
 
bool FillDataFromFilename (const VideoMetadataListManager &cache)
 
bool DeleteFile ()
 
void Reset ()
 Resets to default metadata. More...
 
bool IsHostSet () const
 

Static Public Member Functions

static int UpdateHashedDBRecord (const QString &hash, const QString &file_name, const QString &host)
 
static QString VideoFileHash (const QString &file_name, const QString &host)
 
static QString FilenameToMeta (const QString &file_name, int position)
 
static QString TrimTitle (const QString &title, bool ignore_case)
 
static QString MetadataGetTextCb (const QString &name, void *data)
 
static QString MetadataGetImageCb (const QString &name, void *data)
 
static QString MetadataGetStateCb (const QString &name, void *data)
 

Private Member Functions

 Q_DECLARE_TR_FUNCTIONS (VideoMetadata)
 

Private Attributes

class VideoMetadataImpm_imp
 

Detailed Description

Definition at line 24 of file videometadata.h.

Member Typedef Documentation

◆ cast_entry

using VideoMetadata::cast_entry = std::pair<int, QString>

Definition at line 31 of file videometadata.h.

◆ cast_list

using VideoMetadata::cast_list = std::vector<cast_entry>

Definition at line 34 of file videometadata.h.

◆ country_entry

using VideoMetadata::country_entry = std::pair<int, QString>

Definition at line 30 of file videometadata.h.

◆ country_list

Definition at line 33 of file videometadata.h.

◆ genre_entry

using VideoMetadata::genre_entry = std::pair<int, QString>

Definition at line 29 of file videometadata.h.

◆ genre_list

using VideoMetadata::genre_list = std::vector<genre_entry>

Definition at line 32 of file videometadata.h.

Constructor & Destructor Documentation

◆ VideoMetadata() [1/3]

VideoMetadata::VideoMetadata ( const QString &  filename = QString(),
const QString &  sortFilename = QString(),
const QString &  hash = QString(),
const QString &  trailer = QString(),
const QString &  coverfile = QString(),
const QString &  screenshot = QString(),
const QString &  banner = QString(),
const QString &  fanart = QString(),
const QString &  title = QString(),
const QString &  sortTitle = QString(),
const QString &  subtitle = QString(),
const QString &  sortSubtitle = QString(),
const QString &  tagline = QString(),
int  year = VIDEO_YEAR_DEFAULT,
QDate  releasedate = QDate(),
const QString &  inetref = QString(),
int  collectionref = 0,
const QString &  homepage = QString(),
const QString &  director = QString(),
const QString &  studio = QString(),
const QString &  plot = QString(),
float  userrating = 0.0,
const QString &  rating = QString(),
int  length = 0,
int  playcount = 0,
int  season = 0,
int  episode = 0,
QDate  insertdate = QDate(),
int  id = 0,
ParentalLevel::Level  showlevel = ParentalLevel::plLowest,
int  categoryID = 0,
int  childID = -1,
bool  browse = true,
bool  watched = false,
const QString &  playcommand = QString(),
const QString &  category = QString(),
const genre_list genres = genre_list(),
const country_list countries = country_list(),
const cast_list cast = cast_list(),
const QString &  host = "",
bool  processed = false,
VideoContentType  contenttype = kContentUnknown 
)
explicit

Definition at line 1223 of file videometadata.cpp.

◆ ~VideoMetadata()

VideoMetadata::~VideoMetadata ( )

Definition at line 1250 of file videometadata.cpp.

◆ VideoMetadata() [2/3]

VideoMetadata::VideoMetadata ( MSqlQuery query)
explicit

Definition at line 1255 of file videometadata.cpp.

◆ VideoMetadata() [3/3]

VideoMetadata::VideoMetadata ( const VideoMetadata rhs)

Definition at line 1260 of file videometadata.cpp.

Member Function Documentation

◆ DeleteFile()

bool VideoMetadata::DeleteFile ( )

Definition at line 1994 of file videometadata.cpp.

◆ DeleteFromDatabase()

bool VideoMetadata::DeleteFromDatabase ( )

Definition at line 1956 of file videometadata.cpp.

◆ FilenameToMeta()

QString VideoMetadata::FilenameToMeta ( const QString &  file_name,
int  position 
)
static

◆ FillDataFromFilename()

bool VideoMetadata::FillDataFromFilename ( const VideoMetadataListManager cache)

Definition at line 1978 of file videometadata.cpp.

◆ GetBanner()

const QString & VideoMetadata::GetBanner ( ) const

◆ GetBrowse()

bool VideoMetadata::GetBrowse ( ) const

◆ GetCast()

const VideoMetadata::cast_list & VideoMetadata::GetCast ( ) const

◆ GetCategory()

const QString & VideoMetadata::GetCategory ( ) const

Definition at line 1896 of file videometadata.cpp.

Referenced by GetText(), and toMap().

◆ GetCategoryID()

int VideoMetadata::GetCategoryID ( ) const

◆ GetChildID()

int VideoMetadata::GetChildID ( ) const

Definition at line 1741 of file videometadata.cpp.

Referenced by EditMetadataDialog::fillWidgets(), GetText(), and toMap().

◆ GetCollectionRef()

int VideoMetadata::GetCollectionRef ( ) const

Definition at line 1611 of file videometadata.cpp.

◆ GetContentType()

VideoContentType VideoMetadata::GetContentType ( ) const

Definition at line 1781 of file videometadata.cpp.

◆ GetCountries()

const VideoMetadata::country_list & VideoMetadata::GetCountries ( ) const

Definition at line 1926 of file videometadata.cpp.

Referenced by GetDisplayCountries(), and VideoFilterSettings::matches_filter().

◆ GetCoverFile()

const QString & VideoMetadata::GetCoverFile ( ) const

◆ GetDirector()

const QString & VideoMetadata::GetDirector ( ) const

◆ GetEpisode()

int VideoMetadata::GetEpisode ( ) const

◆ GetFanart()

const QString & VideoMetadata::GetFanart ( ) const

◆ GetFilename()

const QString & VideoMetadata::GetFilename ( ) const

◆ GetGenres()

const VideoMetadata::genre_list & VideoMetadata::GetGenres ( ) const

Definition at line 1906 of file videometadata.cpp.

Referenced by GetDisplayGenres(), and VideoFilterSettings::matches_filter().

◆ GetHash()

const QString & VideoMetadata::GetHash ( ) const

◆ GetHomepage()

const QString & VideoMetadata::GetHomepage ( ) const

◆ GetHost()

const QString & VideoMetadata::GetHost ( ) const

◆ GetID()

unsigned int VideoMetadata::GetID ( ) const

◆ GetImage()

QString VideoMetadata::GetImage ( const QString &  name) const

Definition at line 1452 of file videometadata.cpp.

Referenced by MetadataGetImageCb().

◆ GetImageMap()

void VideoMetadata::GetImageMap ( InfoMap imageMap)

Definition at line 1447 of file videometadata.cpp.

Referenced by AddFileNode(), and toMap().

◆ GetInetRef()

const QString & VideoMetadata::GetInetRef ( ) const

◆ GetInsertdate()

QDate VideoMetadata::GetInsertdate ( ) const

◆ GetLength()

std::chrono::minutes VideoMetadata::GetLength ( ) const

◆ GetPlayCommand()

const QString & VideoMetadata::GetPlayCommand ( ) const

◆ GetPlayCount()

unsigned int VideoMetadata::GetPlayCount ( ) const

Definition at line 1691 of file videometadata.cpp.

Referenced by GetText(), and toMap().

◆ GetPlot()

const QString & VideoMetadata::GetPlot ( ) const

◆ GetPrefix()

const QString & VideoMetadata::GetPrefix ( ) const

Definition at line 1531 of file videometadata.cpp.

Referenced by AddMetadataToDir().

◆ GetProcessed()

bool VideoMetadata::GetProcessed ( ) const

◆ GetRating()

const QString & VideoMetadata::GetRating ( ) const

◆ GetReleaseDate()

QDate VideoMetadata::GetReleaseDate ( ) const

Definition at line 1591 of file videometadata.cpp.

Referenced by GetText(), and toMap().

◆ GetScreenshot()

const QString & VideoMetadata::GetScreenshot ( ) const

◆ GetSeason()

int VideoMetadata::GetSeason ( ) const

◆ GetShowLevel()

ParentalLevel::Level VideoMetadata::GetShowLevel ( ) const

◆ GetSortFilename()

const QString & VideoMetadata::GetSortFilename ( ) const

◆ GetSortSubtitle()

const QString & VideoMetadata::GetSortSubtitle ( ) const

Definition at line 1561 of file videometadata.cpp.

Referenced by GetText(), and toMap().

◆ GetSortTitle()

const QString & VideoMetadata::GetSortTitle ( ) const

Definition at line 1546 of file videometadata.cpp.

Referenced by GetText(), and toMap().

◆ GetState()

QString VideoMetadata::GetState ( const QString &  name) const

Definition at line 1434 of file videometadata.cpp.

Referenced by MetadataGetStateCb().

◆ GetStateMap()

void VideoMetadata::GetStateMap ( InfoMap stateMap) const

Definition at line 1423 of file videometadata.cpp.

Referenced by toMap().

◆ GetStudio()

const QString & VideoMetadata::GetStudio ( ) const

◆ GetSubtitle()

const QString & VideoMetadata::GetSubtitle ( ) const

◆ GetTagline()

const QString & VideoMetadata::GetTagline ( ) const

Definition at line 1571 of file videometadata.cpp.

Referenced by EditMetadataDialog::fillWidgets(), GetText(), and toMap().

◆ GetText()

QString VideoMetadata::GetText ( const QString &  name) const

Definition at line 1337 of file videometadata.cpp.

Referenced by MetadataGetTextCb().

◆ GetTitle()

const QString & VideoMetadata::GetTitle ( void  ) const

◆ GetTrailer()

const QString & VideoMetadata::GetTrailer ( ) const

◆ GetUserRating()

float VideoMetadata::GetUserRating ( ) const

◆ GetWatched()

bool VideoMetadata::GetWatched ( ) const

◆ GetYear()

int VideoMetadata::GetYear ( ) const

◆ IsHostSet()

bool VideoMetadata::IsHostSet ( ) const

◆ MetadataGetImageCb()

QString VideoMetadata::MetadataGetImageCb ( const QString &  name,
void *  data 
)
static

Definition at line 1515 of file videometadata.cpp.

Referenced by AddFileNode().

◆ MetadataGetStateCb()

QString VideoMetadata::MetadataGetStateCb ( const QString &  name,
void *  data 
)
static

Definition at line 1523 of file videometadata.cpp.

Referenced by AddFileNode().

◆ MetadataGetTextCb()

QString VideoMetadata::MetadataGetTextCb ( const QString &  name,
void *  data 
)
static

Definition at line 1501 of file videometadata.cpp.

Referenced by AddFileNode().

◆ operator=()

VideoMetadata & VideoMetadata::operator= ( const VideoMetadata rhs)

Definition at line 1265 of file videometadata.cpp.

◆ Q_DECLARE_TR_FUNCTIONS()

VideoMetadata::Q_DECLARE_TR_FUNCTIONS ( VideoMetadata  )
private

◆ Reset()

void VideoMetadata::Reset ( void  )

Resets to default metadata.

Definition at line 1999 of file videometadata.cpp.

Referenced by VideoDialog::ResetMetadata().

◆ SaveToDatabase()

void VideoMetadata::SaveToDatabase ( )

Definition at line 1946 of file videometadata.cpp.

Referenced by V2Video::AddVideo(), and VideoScannerThread::updateDB().

◆ SetBanner()

void VideoMetadata::SetBanner ( const QString &  banner)

◆ SetBrowse()

void VideoMetadata::SetBrowse ( bool  browse)

Definition at line 1756 of file videometadata.cpp.

◆ SetCast()

void VideoMetadata::SetCast ( const cast_list cast)

Definition at line 1921 of file videometadata.cpp.

◆ SetCategoryID()

void VideoMetadata::SetCategoryID ( int  id)

◆ SetChildID()

void VideoMetadata::SetChildID ( int  childID)

Definition at line 1746 of file videometadata.cpp.

Referenced by EditMetadataDialog::SetChild().

◆ SetCollectionRef()

void VideoMetadata::SetCollectionRef ( int  collectionref)

Definition at line 1616 of file videometadata.cpp.

◆ SetContentType()

void VideoMetadata::SetContentType ( VideoContentType  contenttype)

Definition at line 1786 of file videometadata.cpp.

◆ SetCountries()

void VideoMetadata::SetCountries ( const country_list countries)

Definition at line 1931 of file videometadata.cpp.

◆ SetCoverFile()

void VideoMetadata::SetCoverFile ( const QString &  coverFile)

◆ SetDirector()

void VideoMetadata::SetDirector ( const QString &  director)

Definition at line 1636 of file videometadata.cpp.

Referenced by EditMetadataDialog::SetDirector().

◆ SetEpisode()

void VideoMetadata::SetEpisode ( int  episode)

Definition at line 1716 of file videometadata.cpp.

Referenced by EditMetadataDialog::SetEpisode().

◆ SetFanart()

void VideoMetadata::SetFanart ( const QString &  fanart)

◆ SetFilename()

void VideoMetadata::SetFilename ( const QString &  filename,
const QString &  sortFilename = "" 
)

Definition at line 1841 of file videometadata.cpp.

◆ SetGenres()

void VideoMetadata::SetGenres ( const genre_list genres)

Definition at line 1911 of file videometadata.cpp.

◆ SetHash()

void VideoMetadata::SetHash ( const QString &  hash)

Definition at line 1826 of file videometadata.cpp.

◆ SetHomepage()

void VideoMetadata::SetHomepage ( const QString &  homepage)

Definition at line 1626 of file videometadata.cpp.

Referenced by EditMetadataDialog::SetHomepage().

◆ SetHost()

void VideoMetadata::SetHost ( const QString &  host)

Definition at line 1836 of file videometadata.cpp.

Referenced by V2Video::AddVideo(), and VideoScannerThread::updateDB().

◆ SetID()

void VideoMetadata::SetID ( int  id)

Definition at line 1736 of file videometadata.cpp.

◆ SetInetRef()

void VideoMetadata::SetInetRef ( const QString &  inetRef)

Definition at line 1606 of file videometadata.cpp.

Referenced by EditMetadataDialog::SetInetRef().

◆ SetInsertdate()

void VideoMetadata::SetInsertdate ( QDate  date)

Definition at line 1726 of file videometadata.cpp.

◆ SetLength()

void VideoMetadata::SetLength ( std::chrono::minutes  length)

Definition at line 1686 of file videometadata.cpp.

Referenced by EditMetadataDialog::SetLength().

◆ SetPlayCommand()

void VideoMetadata::SetPlayCommand ( const QString &  playCommand)

Definition at line 1796 of file videometadata.cpp.

Referenced by EditMetadataDialog::SetPlayer().

◆ SetPlayCount()

void VideoMetadata::SetPlayCount ( int  count)

Definition at line 1696 of file videometadata.cpp.

◆ SetPlot()

void VideoMetadata::SetPlot ( const QString &  plot)

Definition at line 1656 of file videometadata.cpp.

Referenced by EditMetadataDialog::SetPlot().

◆ SetPrefix()

void VideoMetadata::SetPrefix ( const QString &  prefix)

Definition at line 1536 of file videometadata.cpp.

◆ SetProcessed()

void VideoMetadata::SetProcessed ( bool  processed)

◆ SetRating()

void VideoMetadata::SetRating ( const QString &  rating)

Definition at line 1676 of file videometadata.cpp.

Referenced by EditMetadataDialog::SetRating().

◆ SetReleaseDate()

void VideoMetadata::SetReleaseDate ( QDate  releasedate)

Definition at line 1596 of file videometadata.cpp.

◆ SetScreenshot()

void VideoMetadata::SetScreenshot ( const QString &  screenshot)

◆ SetSeason()

void VideoMetadata::SetSeason ( int  season)

Definition at line 1706 of file videometadata.cpp.

Referenced by EditMetadataDialog::SetSeason().

◆ SetShowLevel()

void VideoMetadata::SetShowLevel ( ParentalLevel::Level  showLevel)

◆ SetStudio()

void VideoMetadata::SetStudio ( const QString &  studio)

Definition at line 1646 of file videometadata.cpp.

◆ SetSubtitle()

void VideoMetadata::SetSubtitle ( const QString &  subtitle,
const QString &  sortSubtitle = "" 
)

Definition at line 1566 of file videometadata.cpp.

Referenced by EditMetadataDialog::SetSubtitle().

◆ SetTagline()

void VideoMetadata::SetTagline ( const QString &  tagline)

Definition at line 1576 of file videometadata.cpp.

Referenced by EditMetadataDialog::SetTagline().

◆ SetTitle()

void VideoMetadata::SetTitle ( const QString &  title,
const QString &  sortTitle = "" 
)

◆ SetTrailer()

void VideoMetadata::SetTrailer ( const QString &  trailer)

Definition at line 1851 of file videometadata.cpp.

Referenced by EditMetadataDialog::SetTrailer().

◆ SetUserRating()

void VideoMetadata::SetUserRating ( float  userRating)

Definition at line 1666 of file videometadata.cpp.

Referenced by EditMetadataDialog::SetUserRating().

◆ SetWatched()

void VideoMetadata::SetWatched ( bool  watched)

◆ SetYear()

void VideoMetadata::SetYear ( int  year)

Definition at line 1586 of file videometadata.cpp.

Referenced by EditMetadataDialog::SetYear().

◆ sortBefore()

bool VideoMetadata::sortBefore ( const VideoMetadata rhs) const

Definition at line 2009 of file videometadata.cpp.

Referenced by VideoFilterSettings::meta_less_than().

◆ toMap()

void VideoMetadata::toMap ( InfoMap metadataMap)

◆ TrimTitle()

static QString VideoMetadata::TrimTitle ( const QString &  title,
bool  ignore_case 
)
static

◆ UpdateDatabase()

void VideoMetadata::UpdateDatabase ( )

◆ UpdateHashedDBRecord()

int VideoMetadata::UpdateHashedDBRecord ( const QString &  hash,
const QString &  file_name,
const QString &  host 
)
static

Definition at line 1067 of file videometadata.cpp.

Referenced by VideoScannerThread::updateDB().

◆ VideoFileHash()

QString VideoMetadata::VideoFileHash ( const QString &  file_name,
const QString &  host 
)
static

Member Data Documentation

◆ m_imp

class VideoMetadataImp* VideoMetadata::m_imp
private

The documentation for this class was generated from the following files: