Miam-Player  0.8.0
A nice music player
imediaplayer.h
Go to the documentation of this file.
1 #ifndef IMEDIAPLAYER_H
2 #define IMEDIAPLAYER_H
3 
4 #include <QObject>
5 #include "miamcore_global.h"
6 
14 class MIAMCORE_LIBRARY IMediaPlayer : public QObject
15 {
16  Q_OBJECT
17 public:
18  explicit IMediaPlayer(QObject *parent = nullptr) : QObject(parent) {}
19 
20  virtual ~IMediaPlayer() {}
21 
23  virtual QString host() const = 0;
24 
26  virtual qint64 duration() const = 0;
27 
29  virtual qreal position() const = 0;
30 
31  virtual void setMute(bool b) = 0;
32 
34  virtual void setPosition(qint64 pos) = 0;
35 
37  virtual void setTime(qint64 t) = 0;
38  virtual qint64 time() const = 0;
39 
41  virtual qreal volume() const = 0;
42 
43 public slots:
45  virtual void pause() = 0;
46  virtual void play(const QUrl &track) = 0;
47  virtual void resume() = 0;
48  virtual void seek(float pos) = 0;
49  virtual void setVolume(qreal volume) = 0;
50  virtual void stop() = 0;
51 
52 signals:
54  void paused();
55 
57  void positionChanged(qint64 pos, qint64 duration);
58 
60  void started(qint64 duration);
61 
63  void stopped();
64 
66  void trackHasEnded();
67 };
68 
69 #endif // IMEDIAPLAYER_H
IMediaPlayer class is a pure virtual class implemented by plugins.
Definition: imediaplayer.h:14
IMediaPlayer(QObject *parent=nullptr)
Definition: imediaplayer.h:18
virtual ~IMediaPlayer()
Definition: imediaplayer.h:20
#define MIAMCORE_LIBRARY
Definition: miamcore_global.h:11