Qmmp
Signals | Public Member Functions | Static Public Member Functions
InputSource Class Reference

#include <inputsource.h>

Inherited by EmptyInputSource, and FileInputSource.

List of all members.

Signals

void ready ()
void error ()

Public Member Functions

 InputSource (const QString &url, QObject *parent=0)
virtual QIODevice * ioDevice ()=0
virtual bool initialize ()=0
virtual bool isReady ()=0
virtual QString contentType () const
const QString url () const
qint64 offset () const
void setOffset (qint64 offset)
void addMetaData (const QMap< Qmmp::MetaData, QString > &metaData)
bool hasMetaData () const
QMap< Qmmp::MetaData, QString > takeMetaData ()
void addStreamInfo (const QHash< QString, QString > &info)
bool hasStreamInfo () const
QHash< QString, QString > takeStreamInfo ()

Static Public Member Functions

static InputSourcecreate (const QString &url, QObject *parent=0)
static QList
< InputSourceFactory * > * 
factories ()
static QString file (InputSourceFactory *factory)
static QStringList protocols ()

Detailed Description

The InputSource class provides the base interface class of transports.

Author:
Ilya Kotov <forkotov02@hotmail.ru>

Constructor & Destructor Documentation

InputSource ( const QString &  url,
QObject *  parent = 0 
)

Object contsructor.

Parameters:
urlInput source path or url.
parentParent object.

Member Function Documentation

void addMetaData ( const QMap< Qmmp::MetaData, QString > &  metaData)

Informs input source object about new received metadata. Call of this function is required for all non-local streams/files

Parameters:
metaDataMetadata map.
void addStreamInfo ( const QHash< QString, QString > &  info)

Informs input source object about received stream information (for example icy data). Call of this function is required for all non-local streams/files

Parameters:
infoStream information map.
virtual QString contentType ( ) const [virtual]

Returns content type of the input stream. Default implementation returns empty string.

static InputSource* create ( const QString &  url,
QObject *  parent = 0 
) [static]

Creates InputSource object.

Parameters:
urlInput source path or url.
parentParent object. Returns 0 if the given url is not supported.
void error ( ) [signal]

This signal is emitted after an error occurred.

static QList<InputSourceFactory *>* factories ( ) [static]

Returns a list of transport factories.

static QString file ( InputSourceFactory factory) [static]

Returns plugin file path.

Parameters:
factoryTransport plugin factory.
bool hasMetaData ( ) const

Returns true when new metadata has received, otherwise returns false.

bool hasStreamInfo ( ) const

Returns true when stream information has received, otherwise returns false.

virtual bool initialize ( ) [pure virtual]

Prepares input data source for usage. Subclass shoud reimplement this function.

virtual QIODevice* ioDevice ( ) [pure virtual]

Returns QIODevice-based object for I/O operations. Subclass shoud reimplement this function.

virtual bool isReady ( ) [pure virtual]

Returns true if transport is ready for usage; otherwise returns false.

qint64 offset ( ) const

Returns start position in ms;

static QStringList protocols ( ) [static]

Returns a list of supported protocols.

void ready ( ) [signal]

This signal is emitted when transport is ready for usage.

void setOffset ( qint64  offset)

Sets start position to offset ms.

QMap<Qmmp::MetaData, QString> takeMetaData ( )

Takes metadata out of InputSource object and returns it. Attention: hasMetaData() should return true before use of this fuction.

QHash<QString, QString> takeStreamInfo ( )

Takes stream information out of InputSource object and returns it. Attention: hasStreamInfo() should return true before use of this fuction.

const QString url ( ) const

Returns input source path or url.


The documentation for this class was generated from the following file:
 All Classes Functions Variables Enumerations Enumerator