Qmmp
src
qmmp
inputsourcefactory.h
1
/***************************************************************************
2
* Copyright (C) 2009-2019 by Ilya Kotov *
3
* forkotov02@ya.ru *
4
* *
5
* This program is free software; you can redistribute it and/or modify *
6
* it under the terms of the GNU General Public License as published by *
7
* the Free Software Foundation; either version 2 of the License, or *
8
* (at your option) any later version. *
9
* *
10
* This program is distributed in the hope that it will be useful, *
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
13
* GNU General Public License for more details. *
14
* *
15
* You should have received a copy of the GNU General Public License *
16
* along with this program; if not, write to the *
17
* Free Software Foundation, Inc., *
18
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
19
***************************************************************************/
20
21
#ifndef INPUTSOURCEFACTORY_H
22
#define INPUTSOURCEFACTORY_H
23
24
#include <QObject>
25
#include "qmmp_export.h"
26
27
class
QStringList;
28
class
InputSource
;
29
33
class
QMMP_EXPORT
InputSourceProperties
34
{
35
public
:
39
InputSourceProperties
()
40
{
41
hasSettings =
false
;
42
hasAbout =
false
;
43
}
44
45
QString
name
;
46
QString
shortName
;
47
QStringList
protocols
;
48
bool
hasAbout
;
49
bool
hasSettings
;
50
};
51
52
56
class
InputSourceFactory
57
{
58
public
:
62
virtual
InputSourceProperties
properties
()
const
= 0;
68
virtual
InputSource
*
create
(
const
QString &url, QObject *parent = 0) = 0;
73
virtual
void
showSettings
(QWidget *parent) = 0;
78
virtual
void
showAbout
(QWidget *parent) = 0;
82
virtual
QString
translation
()
const
= 0;
83
};
84
85
Q_DECLARE_INTERFACE(
InputSourceFactory
,
"InputSourceFactory/1.0"
)
86
87
#endif // INPUTSOURCEFACTORY_H
InputSourceFactory
Transport plugin interface.
Definition:
inputsourcefactory.h:56
InputSourceFactory::create
virtual InputSource * create(const QString &url, QObject *parent=0)=0
InputSourceProperties
Helper class to store transport plugin properies.
Definition:
inputsourcefactory.h:33
InputSourceFactory::showSettings
virtual void showSettings(QWidget *parent)=0
InputSourceFactory::showAbout
virtual void showAbout(QWidget *parent)=0
InputSource
The InputSource class provides the base interface class of transports.
Definition:
inputsource.h:38
InputSourceProperties::InputSourceProperties
InputSourceProperties()
Definition:
inputsourcefactory.h:39
InputSourceFactory::translation
virtual QString translation() const =0
InputSourceProperties::hasAbout
bool hasAbout
Definition:
inputsourcefactory.h:48
InputSourceProperties::hasSettings
bool hasSettings
Definition:
inputsourcefactory.h:49
InputSourceProperties::name
QString name
Definition:
inputsourcefactory.h:45
InputSourceProperties::protocols
QStringList protocols
Definition:
inputsourcefactory.h:47
InputSourceFactory::properties
virtual InputSourceProperties properties() const =0
InputSourceProperties::shortName
QString shortName
Definition:
inputsourcefactory.h:46
Generated on Mon Jun 28 2021 17:41:00 for Qmmp by
1.8.15