Sayonara Player
Loading...
Searching...
No Matches
src
Components
DynamicPlayback
SimilarArtistFetcher.h
1
/* SimilarArtistFetcher.h */
2
/*
3
* Copyright (C) 2011-2024 Michael Lugmair
4
*
5
* This file is part of sayonara player
6
*
7
* This program is free software: you can redistribute it and/or modify
8
* it under the terms of the GNU General Public License as published by
9
* the Free Software Foundation, either version 3 of the License, or
10
* (at your option) any later version.
11
12
* This program is distributed in the hope that it will be useful,
13
* but WITHOUT ANY WARRANTY; without even the implied warranty of
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
* GNU General Public License for more details.
16
17
* You should have received a copy of the GNU General Public License
18
* along with this program. If not, see <http://www.gnu.org/licenses/>.
19
*/
20
#ifndef SAYONARA_PLAYER_SIMILARARTISTFETCHER_H
21
#define SAYONARA_PLAYER_SIMILARARTISTFETCHER_H
22
23
#include "Utils/Pimpl.h"
24
#include <QObject>
25
26
class
QString;
27
namespace
DynamicPlayback
28
{
29
class
ArtistMatch;
30
class
SimilarArtistFetcher
:
31
public
QObject
32
{
33
Q_OBJECT
34
PIMPL(
SimilarArtistFetcher
)
35
36
signals:
37
void
sigFinished();
38
39
public
:
40
explicit
SimilarArtistFetcher
(
const
QString& artistName, QObject* parent =
nullptr
);
41
~SimilarArtistFetcher
()
override
;
42
43
[[nodiscard]]
virtual
const
ArtistMatch
& similarArtists()
const
= 0;
44
45
protected
:
46
virtual
void
fetchSimilarArtists(
const
QString& artistName) = 0;
47
48
public
slots:
49
void
start();
50
};
51
52
class
SimilarArtistFetcherFactory
53
{
54
public
:
55
virtual
~SimilarArtistFetcherFactory
() =
default
;
56
virtual
SimilarArtistFetcher
* create(
const
QString& artist) = 0;
57
};
58
59
using
SimilarArtistFetcherFactoryPtr = std::shared_ptr<SimilarArtistFetcherFactory>;
60
}
61
#endif
//SAYONARA_PLAYER_SIMILARARTISTFETCHER_H
DynamicPlayback::ArtistMatch
Definition
ArtistMatch.h:32
DynamicPlayback::SimilarArtistFetcherFactory
Definition
SimilarArtistFetcher.h:53
DynamicPlayback::SimilarArtistFetcher
Definition
SimilarArtistFetcher.h:32
Generated on Fri Apr 25 2025 00:00:00 for Sayonara Player by
1.10.0