LeechCraft  0.6.70-15082-g543737046d
Modular cross-platform feature rich live environment.
irestorableradiostationprovider.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 <variant>
12 #include <QtPlugin>
13 #include "iradiostation.h"
14 
15 template<typename>
16 class QFuture;
17 
18 namespace Media
19 {
20  struct AudioInfo;
21 
28  using RadioRestoreVariant_t = std::variant<QList<AudioInfo>>;
29 
35  {
38  QString PluginID_;
39 
44  QString RadioID_;
45 
49  };
50 
54 
65  {
66  protected:
68  public:
81  virtual QFuture<RadiosRestoreResult_t> RestoreRadioStations (const QStringList& ids) = 0;
82  };
83 }
84 
85 Q_DECLARE_INTERFACE (Media::IRestorableRadioStationProvider, "org.LeechCraft.Media.IRestorableRadioStationProvider/1.0")
Media::IRestorableRadioStationProvider::~IRestorableRadioStationProvider
virtual ~IRestorableRadioStationProvider()
Definition: irestorableradiostationprovider.h:67
Media::RadioRestoreResult::RadioID_
QString RadioID_
The radio station this RadioRestoreResult describes.
Definition: irestorableradiostationprovider.h:44
QList
Definition: ianrulesstorage.h:14
Media::RadioRestoreResult
Describes the result of restoring a single radio station.
Definition: irestorableradiostationprovider.h:34
iradiostation.h
Media::RadioRestoreVariant_t
std::variant< QList< AudioInfo > > RadioRestoreVariant_t
Describes the data associated with a radio station restore.
Definition: irestorableradiostationprovider.h:28
Media
Definition: audiostructs.h:16
Media::IRestorableRadioStationProvider::RestoreRadioStations
virtual QFuture< RadiosRestoreResult_t > RestoreRadioStations(const QStringList &ids)=0
Initiates restoring the radio stations for the given IDs.
QFuture
Definition: idownload.h:17
Media::RadioRestoreResult::Restored_
RadioRestoreVariant_t Restored_
The restore result itself.
Definition: irestorableradiostationprovider.h:48
Media::RadioRestoreResult::PluginID_
QString PluginID_
The plugin this RadioRestoreResult corresponds to.
Definition: irestorableradiostationprovider.h:38
Media::IRestorableRadioStationProvider
Interface for radio station providers able to restore the radio stations between LeechCraft runs.
Definition: irestorableradiostationprovider.h:64