Qmmp
Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
AbstractEngine Class Referenceabstract

#include <abstractengine.h>

Inherits QThread.

Inherited by QmmpAudioEngine.

Public Member Functions

 AbstractEngine (QObject *parent=nullptr)
 
virtual ~AbstractEngine ()
 
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 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 ( )
virtual

Destructor.

Member Function Documentation

◆ create()

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

static QList<EngineFactory*> enabledFactories ( )
static

Returns a list of enabled engine factories.

◆ enqueue()

virtual bool enqueue ( InputSource source)
pure virtual

Prepares decoder for usage. Subclass should reimplement this function.

◆ factories()

static QList<EngineFactory*> factories ( )
static

Returns a list of engine factories.

◆ file()

static QString file ( const EngineFactory factory)
static

Returns plugin file path.

Parameters
factoryEngine plugin factory.

◆ findByFilePath()

static EngineFactory* findByFilePath ( const QString &  path)
static

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

◆ isEnabled() [1/2]

static 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.

◆ isEnabled() [2/2]

static bool isEnabled ( const AbstractEngine engine)
static

Returns true if engine is enabled, otherwise returns false

Parameters
engineEngine object.

◆ mutex()

QMutex* mutex ( )
protected

Returns mutex pointer.

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

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

static 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: