TTKMusicPlayer  3.7.0.0
TTKMusicPlayer imitates Kugou UI, the music player uses of qmmp core library based on Qt for windows and linux
Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Private Member Functions | Private Attributes | Static Private Attributes | List of all members
AbstractEngine Class Referenceabstract

The AbstractEngine class provides the base interface class of audio audio engines. More...

#include <abstractengine.h>

+ Inheritance diagram for AbstractEngine:

Public Member Functions

 AbstractEngine (QObject *parent=nullptr)
 
virtual ~AbstractEngine ()=default
 
virtual bool enqueue (InputSource *source)=0
 
virtual bool play ()=0
 
virtual void seek (qint64 time)=0
 
virtual void stop ()=0
 
virtual void pause ()=0
 

Static Public Member Functions

static AbstractEnginecreate (InputSource *s, QObject *parent=nullptr)
 
static QList< EngineFactory * > factories ()
 
static QList< EngineFactory * > enabledFactories ()
 
static QStringList nameFilters ()
 
static QStringList contentTypes ()
 
static EngineFactoryfindByFilePath (const QString &path)
 
static void setEnabled (EngineFactory *factory, bool enable=true)
 
static bool isEnabled (const EngineFactory *factory)
 
static bool isEnabled (const AbstractEngine *engine)
 
static QString file (const EngineFactory *factory)
 
static QStringList protocols ()
 

Protected Member Functions

QMutex * mutex ()
 

Static Private Member Functions

static void loadPlugins ()
 

Private Attributes

QMutex m_mutex
 

Static Private Attributes

static QList< QmmpPluginCache * > * m_cache
 
static QStringList m_disabledNames
 

Detailed Description

The AbstractEngine class provides the base interface class of audio audio engines.

Author
Ilya Kotov forko.nosp@m.tov0.nosp@m.2@ya..nosp@m.ru

Definition at line 38 of file abstractengine.h.

Constructor & Destructor Documentation

AbstractEngine::AbstractEngine ( QObject *  parent = nullptr)
explicit

Object constructor.

Parameters
parentParent object.
virtual AbstractEngine::~AbstractEngine ( )
virtualdefault

Destructor.

Member Function Documentation

static QStringList AbstractEngine::contentTypes ( )
static

Returns a list of the supported mime types.

Referenced by MusicMPRISPlayerRoot::supportedMimeTypes().

static AbstractEngine* AbstractEngine::create ( InputSource s,
QObject *  parent = nullptr 
)
static

Creates Engine object.

Parameters
sInputSource object.
parentParent object. Returns 0 if the given source is not supported.
static QList<EngineFactory*> AbstractEngine::enabledFactories ( )
static

Returns a list of enabled engine factories.

virtual bool AbstractEngine::enqueue ( InputSource source)
pure virtual

Prepares decoder for usage. Subclass should reimplement this function.

Implemented in QmmpAudioEngine.

static QList<EngineFactory*> AbstractEngine::factories ( )
static

Returns a list of engine factories.

static QString AbstractEngine::file ( const EngineFactory factory)
static

Returns plugin file path.

Parameters
factoryEngine plugin factory.
static EngineFactory* AbstractEngine::findByFilePath ( const QString &  path)
static

Returns EngineFactory pointer which supports file path or 0 if file path is unsupported.

static bool AbstractEngine::isEnabled ( const EngineFactory factory)
static

Returns true if engine is enabled, otherwise returns false This function uses QObject::objectName() function.

Parameters
factoryEngine plugin factory.
static bool AbstractEngine::isEnabled ( const AbstractEngine engine)
static

Returns true if engine is enabled, otherwise returns false

Parameters
engineEngine object.
static void AbstractEngine::loadPlugins ( )
staticprivate
QMutex* AbstractEngine::mutex ( )
protected

Returns mutex pointer.

static QStringList AbstractEngine::nameFilters ( )
static

Returns a list of file name filters, i.e. "*.mp3 *.mpg".

virtual void AbstractEngine::pause ( )
pure virtual

Pauses/resumes playback

Implemented in QmmpAudioEngine.

virtual bool AbstractEngine::play ( )
pure virtual

Starts playback. Returns true if playback has been started successful, otherwise returns false.

Implemented in QmmpAudioEngine.

static QStringList AbstractEngine::protocols ( )
static

Returns a list of supported protocols (including meta-protocols). This fuction ignores disabled engines.

virtual void AbstractEngine::seek ( qint64  time)
pure virtual

Requests a seek to the time time indicated, specified in milliseconds.

Implemented in QmmpAudioEngine.

static void AbstractEngine::setEnabled ( EngineFactory factory,
bool  enable = true 
)
static

Sets whether the engine is enabled.

Parameters
factoryEngine plugin factory.
enablePlugin enable state (true - enable, false - disable)
virtual void AbstractEngine::stop ( )
pure virtual

Requests playback to stop

Implemented in QmmpAudioEngine.

Member Data Documentation

QList<QmmpPluginCache*>* AbstractEngine::m_cache
staticprivate

Definition at line 138 of file abstractengine.h.

QStringList AbstractEngine::m_disabledNames
staticprivate

Definition at line 139 of file abstractengine.h.

QMutex AbstractEngine::m_mutex
private

Definition at line 136 of file abstractengine.h.


The documentation for this class was generated from the following file: