Qmmp
Loading...
Searching...
No Matches
Visual Class Reference

#include <qmmp/visual.h>

Public Slots

virtual void start ()
virtual void stop ()

Signals

void closedByUser ()

Public Member Functions

 Visual (QWidget *parent, Qt::WindowFlags f=Qt::WindowFlags())
virtual ~Visual ()

Static Public Member Functions

static QList< VisualFactory * > factories ()
static QString file (const VisualFactory *factory)
static void setEnabled (VisualFactory *factory, bool enable=true)
static bool isEnabled (const VisualFactory *factory)
static void add (Visual *visual)
static void remove (Visual *)
static void initialize (QWidget *parent, QObject *receiver=nullptr, const char *member=nullptr)
static QList< Visual * > * visuals ()
static void showSettings (VisualFactory *factory, QWidget *parent)
static void addAudio (float *pcm, int samples, int channels, qint64 ts, qint64 delay)
static void clearBuffer ()

Protected Member Functions

virtual void closeEvent (QCloseEvent *event) override
bool takeData (float *left, float *right=nullptr)
bool takeFFTData (float *left, float *right=nullptr)

Detailed Description

The Visual class provides the base interface class of visualizations.

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

Constructor & Destructor Documentation

◆ Visual()

Visual ( QWidget * parent,
Qt::WindowFlags f = Qt::WindowFlags() )

Object contsructor.

Parameters
parentParent object.
fWidget flags.

◆ ~Visual()

virtual ~Visual ( )
virtual

Destructor.

Member Function Documentation

◆ add()

void add ( Visual * visual)
static

Adds external visualization visual.

◆ addAudio()

void addAudio ( float * pcm,
int samples,
int channels,
qint64 ts,
qint64 delay )
static

Adds data for visualization.

Parameters
pcmAudio data.
samplesNumber of samples.
channelsNumber of channels.
tsElapsed time (in milliseconds).
delayAudio output delay.

◆ clearBuffer()

void clearBuffer ( )
static

Clears visualization buffer.

◆ closedByUser

void closedByUser ( )
signal

Emitted when visual widget is closed by user.

◆ closeEvent()

virtual void closeEvent ( QCloseEvent * event)
overrideprotectedvirtual

QWidget's close event. Reimplementation should call base function.

Parameters
eventQCloseEvent instance.

◆ factories()

QList< VisualFactory * > factories ( )
static

Returns a list of visual factories.

◆ file()

QString file ( const VisualFactory * factory)
static

Returns plugin file path.

Parameters
factoryVisual plugin factory.

◆ initialize()

void initialize ( QWidget * parent,
QObject * receiver = nullptr,
const char * member = nullptr )
static

Prepares visual plugins for usage.

Parameters
parentParent widget.
receiverReceiver object.
memberA slot to receive changes of active visualizations list.

◆ isEnabled()

bool isEnabled ( const VisualFactory * factory)
static

Returns true if visual plugin is enabled, otherwise returns false

Parameters
factoryEffect plugin factory.

◆ remove()

void remove ( Visual * )
static

Removes external visualization visual.

◆ setEnabled()

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

Sets whether the visual plugin is enabled.

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

◆ showSettings()

void showSettings ( VisualFactory * factory,
QWidget * parent )
static

Shows configuration dialog and updates settings automatically.

Parameters
factoryVisual plugin factory.
parentParent widget.

◆ start

virtual void start ( )
virtualslot

Starts visualization. Default implementation does nothing.

◆ stop

virtual void stop ( )
virtualslot

Stops visualization. Default implementation does nothing.

◆ takeData()

bool takeData ( float * left,
float * right = nullptr )
protected

Takes visualization data. Caller should allocate QMMP_VISUAL_NODE_SIZE samples for each channel. If buffer for right channel is not specified, this function will average data from left and right channels.

Parameters
leftLeft channel buffer.
rightRight channel buffer.

◆ takeFFTData()

bool takeFFTData ( float * left,
float * right = nullptr )
protected

Takes visualization data prepared for spectrum analyzer using FFT. Caller should allocate QMMP_VISUAL_FFT_SIZE points for each channel. If buffer for right channel is not specified, this function will average data from left and right channels.

Parameters
leftLeft channel buffer.
rightRight channel buffer.

◆ visuals()

QList< Visual * > * visuals ( )
static

Returns a pointer to a list of created visual objects.


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