1 /*
2     SPDX-FileCopyrightText: 2005 Richard Lärkäng <nouseforaname@home.se>
3 
4     SPDX-License-Identifier: LGPL-2.0-or-later
5 */
6 
7 #ifndef MUSICBRAINZLOOKUP_H
8 #define MUSICBRAINZLOOKUP_H
9 
10 #include "../lookup.h"
11 #include "../cdinfo.h"
12 #include "../kcddb.h"
13 #include "../kcddbconfig.h"
14 
15 namespace MusicBrainz5
16 {
17   class CArtistCredit;
18 }
19 
20 namespace KCDDB
21 {
22   class MusicBrainzLookup : public Lookup
23   {
24     Q_OBJECT
25 
26     public:
27 
28       MusicBrainzLookup();
29       virtual ~MusicBrainzLookup();
30 
31       // FIXME Only freedb lookup needs the first two arguments (host/port)
32       Result lookup( const QString &, uint, const TrackOffsetList & ) override;
33 
34       static CDInfoList cacheFiles(const TrackOffsetList &, const Config& );
35 
36     private:
37 
38       static QString calculateDiscId(const TrackOffsetList & );
39       static QString artistFromCreditList(MusicBrainz5::CArtistCredit * );
40   } ;
41 }
42 
43 #endif // MUSICBRAINZ_H
44 // vim:tabstop=2:shiftwidth=2:expandtab:cinoptions=(s,U1,m1
45