LeechCraft
0.6.70-16373-g319c272718
Modular cross-platform feature rich live environment.
Loading...
Searching...
No Matches
iaudioscrobbler.h
Go to the documentation of this file.
1
/**********************************************************************
2
* LeechCraft - modular cross-platform feature rich internet client.
3
* Copyright (C) 2006-2014 Georg Rudoy
4
*
5
* Distributed under the Boost Software License, Version 1.0.
6
* (See accompanying file LICENSE or copy at https://www.boost.org/LICENSE_1_0.txt)
7
**********************************************************************/
8
9
#pragma once
10
11
#include <QDateTime>
12
#include "
audiostructs.h
"
13
14
namespace
Media
15
{
21
class
Q_DECL_EXPORT
IAudioScrobbler
22
{
23
public
:
24
virtual
~IAudioScrobbler
() {}
25
29
using
BackdatedTrack_t
= QPair<Media::AudioInfo, QDateTime>;
30
33
using
BackdatedTracks_t
=
QList<BackdatedTrack_t>
;
34
39
enum class
Feature
40
{
46
Backdating
47
};
48
54
virtual
bool
SupportsFeature
(
Feature
feature)
const
= 0;
55
63
virtual
QString
GetServiceName
()
const
= 0;
64
78
virtual
void
NowPlaying
(
const
AudioInfo
& audio) = 0;
79
88
virtual
void
SendBackdated
(
const
BackdatedTracks_t
& list) = 0;
89
96
virtual
void
PlaybackStopped
() = 0;
97
106
virtual
void
LoveCurrentTrack
() = 0;
107
116
virtual
void
BanCurrentTrack
() = 0;
117
};
118
}
119
120
Q_DECLARE_INTERFACE (
Media::IAudioScrobbler
,
"org.LeechCraft.Media.IAudioScrobbler/1.0"
)
audiostructs.h
Media::IAudioScrobbler
Interface for plugins that support scrobbling.
Definition
iaudioscrobbler.h:22
Media::IAudioScrobbler::BanCurrentTrack
virtual void BanCurrentTrack()=0
Notifies the scrobbler that user hates current track.
Media::IAudioScrobbler::BackdatedTrack_t
QPair< Media::AudioInfo, QDateTime > BackdatedTrack_t
A backdated track - a track with its real playback time.
Definition
iaudioscrobbler.h:29
Media::IAudioScrobbler::Feature
Feature
A list of optional features a scrobbler may support.
Definition
iaudioscrobbler.h:40
Media::IAudioScrobbler::NowPlaying
virtual void NowPlaying(const AudioInfo &audio)=0
Notifies the scrobbler that a new track is playing.
Media::IAudioScrobbler::GetServiceName
virtual QString GetServiceName() const =0
Returns the service name.
Media::IAudioScrobbler::~IAudioScrobbler
virtual ~IAudioScrobbler()
Definition
iaudioscrobbler.h:24
Media::IAudioScrobbler::LoveCurrentTrack
virtual void LoveCurrentTrack()=0
Notifies the scrobbler that user loves current track.
Media::IAudioScrobbler::SendBackdated
virtual void SendBackdated(const BackdatedTracks_t &list)=0
Sends a list of backdated tracks.
Media::IAudioScrobbler::SupportsFeature
virtual bool SupportsFeature(Feature feature) const =0
Queries whether a given feature is supported.
Media::IAudioScrobbler::PlaybackStopped
virtual void PlaybackStopped()=0
Notifies the scrobbler that playback is stopped.
QList
Definition
ianrulesstorage.h:14
Media
Definition
audiostructs.h:17
Media::AudioInfo
Describes a single audio track.
Definition
audiostructs.h:21
src
interfaces
media
iaudioscrobbler.h
Generated by
1.12.0