Miam-Player  0.8.0
A nice music player
musicbrainzprovider.h
Go to the documentation of this file.
1 #ifndef MUSICBRAINZPROVIDER_H
2 #define MUSICBRAINZPROVIDER_H
3 
4 #include "coverartprovider.h"
5 
12 {
13  Q_OBJECT
14 public:
15  explicit MusicBrainzProvider(QNetworkAccessManager *manager);
16 
17  virtual QUrl query(const QString &artist, const QString & /*album*/) override;
18 
19  virtual QUrl album(const QString &albumId) override;
20 
21  inline virtual ProviderType type() override { return PT_MusicBrainz; }
22 
23 private:
25  static size_t uiLevenshteinDistance(const std::string &s1, const std::string &s2);
26 
27  void downloadCover(QByteArray ba, QNetworkReply *reply);
28 
29  void fetchReleases(const QString &album, const QByteArray &ba);
30 
31 public slots:
32  virtual void dispatchReply(QNetworkReply *reply) override;
33 };
34 
35 #endif // MUSICBRAINZPROVIDER_H
Definition: coverartprovider.h:35
#define MIAMCOVERFETCHER_LIBRARY
Definition: miamcoverfetcher_global.hpp:8
virtual ProviderType type() override
Definition: musicbrainzprovider.h:21
virtual QUrl album(const QString &)=0
ProviderType
Definition: coverartprovider.h:33
The MusicBrainzProvider class implements a way to query and return images from MusicBrainz (and cover...
Definition: musicbrainzprovider.h:11
The CoverArtProvider class is an abstract class for registering various webservices.
Definition: coverartprovider.h:15
virtual QUrl query(const QString &artist, const QString &album)=0
virtual void dispatchReply(QNetworkReply *reply)=0