Qmmp
Loading...
Searching...
No Matches
AbstractEngine Class Referenceabstract

#include <qmmp/abstractengine.h>

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 ()

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

Constructor & Destructor Documentation

◆ AbstractEngine()

AbstractEngine ( QObject * parent = nullptr)

Object constructor.

Parameters
parentParent object.

◆ ~AbstractEngine()

virtual ~AbstractEngine ( )
virtualdefault

Destructor.

Member Function Documentation

◆ contentTypes()

QStringList contentTypes ( )
static

Returns a list of the supported mime types.

◆ create()

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.

◆ enabledFactories()

QList< EngineFactory * > enabledFactories ( )
static

Returns a list of enabled engine factories.

◆ enqueue()

virtual bool enqueue ( InputSource * source)
pure virtual

Adds source to the internal queue. Subclass should reimplement this function.

◆ factories()

QList< EngineFactory * > factories ( )
static

Returns a list of engine factories.

◆ file()

QString file ( const EngineFactory * factory)
static

Returns plugin file path.

Parameters
factoryEngine plugin factory.

◆ findByFilePath()

EngineFactory * findByFilePath ( const QString & path)
static

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

◆ isEnabled() [1/2]

bool isEnabled ( const AbstractEngine * engine)
static

Returns true if engine is enabled, otherwise returns false

Parameters
engineEngine object.

◆ isEnabled() [2/2]

bool isEnabled ( const EngineFactory * factory)
static

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

Parameters
factoryEngine plugin factory.

◆ mutex()

QMutex * mutex ( )
protected

Returns mutex pointer.

◆ nameFilters()

QStringList nameFilters ( )
static

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

◆ pause()

virtual void pause ( )
pure virtual

Pauses/resumes playback

◆ play()

virtual bool play ( )
pure virtual

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

◆ protocols()

QStringList protocols ( )
static

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

◆ seek()

virtual void seek ( qint64 time)
pure virtual

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

◆ setEnabled()

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

Sets whether the engine is enabled.

Parameters
factoryEngine plugin factory.
enablePlugin enable state (true - enable, false - disable)

◆ stop()

virtual void stop ( )
pure virtual

Requests playback to stop


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