#pragma once
-
/*
* Copyright (C) 2005-2013 Team XBMC
- * http://www.xbmc.org
+ * http://xbmc.org
*
* This Program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
#define REPLAY_GAIN_HAS_TRACK_PEAK 4
#define REPLAY_GAIN_HAS_ALBUM_PEAK 8
+enum ReplayGain
+{
+ REPLAY_GAIN_NONE = 0,
+ REPLAY_GAIN_ALBUM,
+ REPLAY_GAIN_TRACK
+};
+
namespace MUSIC_INFO
{
- class EmbeddedArtInfo
+ class EmbeddedArtInfo : public IArchivable
{
public:
EmbeddedArtInfo() {};
void clear();
bool empty() const;
bool matches(const EmbeddedArtInfo &right) const;
+ virtual void Archive(CArchive& ar);
size_t size;
std::string mime;
};
void GetReleaseDate(SYSTEMTIME& dateTime) const;
CStdString GetYearString() const;
const CStdString& GetMusicBrainzTrackID() const;
- const CStdString& GetMusicBrainzArtistID() const;
+ const std::vector<std::string>& GetMusicBrainzArtistID() const;
const CStdString& GetMusicBrainzAlbumID() const;
- const CStdString& GetMusicBrainzAlbumArtistID() const;
+ const std::vector<std::string>& GetMusicBrainzAlbumArtistID() const;
const CStdString& GetMusicBrainzTRMID() const;
const CStdString& GetComment() const;
const CStdString& GetLyrics() const;
void SetAlbum(const CAlbum& album);
void SetSong(const CSong& song);
void SetMusicBrainzTrackID(const CStdString& strTrackID);
- void SetMusicBrainzArtistID(const CStdString& strArtistID);
+ void SetMusicBrainzArtistID(const std::vector<std::string>& musicBrainzArtistId);
void SetMusicBrainzAlbumID(const CStdString& strAlbumID);
- void SetMusicBrainzAlbumArtistID(const CStdString& strAlbumArtistID);
+ void SetMusicBrainzAlbumArtistID(const std::vector<std::string>& musicBrainzAlbumArtistId);
void SetMusicBrainzTRMID(const CStdString& strTRMID);
void SetComment(const CStdString& comment);
void SetLyrics(const CStdString& lyrics);
virtual void Archive(CArchive& ar);
virtual void Serialize(CVariant& ar) const;
- virtual void ToSortable(SortItem& sortable);
+ virtual void ToSortable(SortItem& sortable, Field field) const;
void Clear();
protected:
std::vector<std::string> m_albumArtist;
std::vector<std::string> m_genre;
CStdString m_strMusicBrainzTrackID;
- CStdString m_strMusicBrainzArtistID;
+ std::vector<std::string> m_musicBrainzArtistID;
CStdString m_strMusicBrainzAlbumID;
- CStdString m_strMusicBrainzAlbumArtistID;
+ std::vector<std::string> m_musicBrainzAlbumArtistID;
CStdString m_strMusicBrainzTRMID;
CStdString m_strComment;
CStdString m_strLyrics;