KVIrc 5.2.4
Developer APIs
MpMprisInterface.h
Go to the documentation of this file.
1#ifndef _MP_AUDACIOUSINTERFACE_H_
2#define _MP_AUDACIOUSINTERFACE_H_
3//=============================================================================
4//
5// File : MpMprisInterface.h
6// Creation date : Thu 06 Dec 2007 14:20:02 by Tomasz Moń
7//
8// This file is part of the KVIrc IRC client distribution
9// Copyright (C) 2007-2009 Tomasz Moń <desowin@gmail.com>
10//
11// This program is FREE software. You can redistribute it and/or
12// modify it under the terms of the GNU General Public License
13// as published by the Free Software Foundation; either version 2
14// of the License, or (at your option) any later version.
15//
16// This program is distributed in the HOPE that it will be USEFUL,
17// but WITHOUT ANY WARRANTY; without even the implied warranty of
18// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
19// See the GNU General Public License for more details.
20//
21// You should have received a copy of the GNU General Public License
22// along with this program. If not, write to the Free Software Foundation,
23// Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
24//
25//=============================================================================
26
27#include "MpInterface.h"
28
29#include "kvi_settings.h"
30
31#if(defined(COMPILE_DBUS_SUPPORT) && !defined(COMPILE_ON_WINDOWS) && !defined(COMPILE_ON_MAC) && !defined(COMPILE_ON_MINGW))
32#include <QtDBus/QtDBus>
33
34class MpMprisInterface : public MpInterface
35{
36public:
37 MpMprisInterface();
38 virtual ~MpMprisInterface();
39
40public:
41 QString m_szServiceName;
42 virtual int detect(bool bStart);
43 virtual bool prev();
44 virtual bool next();
45 virtual bool play();
46 virtual bool stop();
47 virtual bool pause();
48 virtual bool quit();
50 virtual QString nowPlaying();
51 virtual QString mrl();
52 virtual QString title();
53 virtual QString artist();
54 virtual QString genre();
55 virtual QString comment();
56 virtual QString year();
57 virtual QString album();
58 virtual int bitRate();
59 virtual int sampleRate();
60 virtual bool setVol(kvs_int_t & iVol);
61 virtual int getVol();
62 virtual int position();
63 virtual int length();
64 virtual bool jumpTo(kvs_int_t & iPos);
65 virtual QVariant getTrackId();
66};
67
68class MpAudaciousInterface : public MpMprisInterface
69{
70public:
71 MpAudaciousInterface();
72};
73
74class MpAmarok2Interface : public MpMprisInterface
75{
76public:
77 MpAmarok2Interface();
78};
79
80class MpQmmpInterface : public MpMprisInterface
81{
82public:
83 MpQmmpInterface();
84};
85
86class MpXmms2Interface : public MpMprisInterface
87{
88public:
89 MpXmms2Interface();
90};
91
92class MpTotemInterface : public MpMprisInterface
93{
94public:
95 MpTotemInterface();
96};
97
98class MpVlcInterface : public MpMprisInterface
99{
100public:
101 MpVlcInterface();
102};
103
104class MpClementineInterface : public MpMprisInterface
105{
106public:
107 MpClementineInterface();
108};
109
110class MpStrawberryInterface : public MpMprisInterface
111{
112public:
113 MpStrawberryInterface();
114};
115
116class MpMprisGenericInterface : public MpMprisInterface
117{
118public:
119 MpMprisGenericInterface();
120 virtual int detect(bool bStart) override;
121};
122
123MP_DECLARE_DESCRIPTOR(MpAudaciousInterface)
124MP_DECLARE_DESCRIPTOR(MpAmarok2Interface)
125MP_DECLARE_DESCRIPTOR(MpQmmpInterface)
126MP_DECLARE_DESCRIPTOR(MpXmms2Interface)
127MP_DECLARE_DESCRIPTOR(MpTotemInterface)
128MP_DECLARE_DESCRIPTOR(MpVlcInterface)
129MP_DECLARE_DESCRIPTOR(MpClementineInterface)
130MP_DECLARE_DESCRIPTOR(MpStrawberryInterface)
131MP_DECLARE_DESCRIPTOR(MpMprisGenericInterface)
132#endif //COMPILE_ON_WINDOWS
133
134#endif //_MP_AUDACIOUSINTERFACE_H_
kvi_i64_t kvs_int_t
Definition KviKvsTypes.h:33
#define MP_DECLARE_DESCRIPTOR(_interfaceclass)
Definition MpInterface.h:200
Definition MpInterface.h:32
virtual bool play()=0
virtual QString year()
Definition MpInterface.cpp:141
virtual int detect(bool bStart)=0
virtual bool stop()=0
virtual QString album()
Definition MpInterface.cpp:147
virtual QString nowPlaying()=0
virtual int bitRate()
Definition MpInterface.cpp:195
virtual QString artist()
Definition MpInterface.cpp:117
virtual int getVol()
Definition MpInterface.cpp:171
virtual bool jumpTo(kvs_int_t &iPos)
Definition MpInterface.cpp:183
virtual int sampleRate()
Definition MpInterface.cpp:201
virtual MpInterface::PlayerStatus status()
Definition MpInterface.cpp:189
PlayerStatus
Definition MpInterface.h:114
virtual QString mrl()=0
virtual QString title()
Definition MpInterface.cpp:123
virtual bool prev()=0
virtual bool next()=0
virtual bool setVol(kvs_int_t &iVol)
Definition MpInterface.cpp:165
virtual bool quit()
Definition MpInterface.cpp:58
virtual QString comment()
Definition MpInterface.cpp:135
virtual int position()
Definition MpInterface.cpp:46
virtual int length()
Definition MpInterface.cpp:52
virtual bool pause()=0
virtual QString genre()
Definition MpInterface.cpp:129
This file contains compile time settings.