TTKMusicPlayer  4.3.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 | Static Private Member Functions | Private Attributes | Static Private Attributes | List of all members
Effect Class Referenceabstract

The Effect class provides the base interface class of audio effects. More...

#include <effect.h>

+ Inheritance diagram for Effect:

Public Member Functions

 Effect ()=default
 
virtual ~Effect ()=default
 
virtual void applyEffect (Buffer *b)=0
 
virtual void configure (quint32 srate, ChannelMap map)
 
quint32 sampleRate () const
 
int channels () const
 
const ChannelMap & channelMap () const
 
AudioParameters audioParameters () const
 
EffectFactory * factory () const
 

Static Public Member Functions

static Effect * create (EffectFactory *factory)
 
static QList< EffectFactory * > factories ()
 
static QList< EffectFactory * > enabledFactories ()
 
static QString file (const EffectFactory *factory)
 
static void setEnabled (EffectFactory *factory, bool enable=true)
 
static bool isEnabled (const EffectFactory *factory)
 
static EffectFactory * findFactory (const QString &shortName)
 

Static Private Member Functions

static void loadPlugins ()
 

Private Attributes

EffectFactory * m_factory = nullptr
 
quint32 m_freq = 0
 
int m_channels = 0
 
ChannelMap m_chan_map
 

Static Private Attributes

static QList< QmmpPluginCache * > * m_cache
 
static QStringList m_enabledNames
 

Detailed Description

The Effect class provides the base interface class of audio effects.

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

Definition at line 36 of file effect.h.

Constructor & Destructor Documentation

Effect::Effect ( )
default

Object contsructor.

virtual Effect::~Effect ( )
virtualdefault

Destructor.

Member Function Documentation

virtual void Effect::applyEffect ( Buffer *  b)
pure virtual

Adds audio effect to the buffer b. Subclass should implement this function.

Implemented in Dithering, ChannelConverter, and ReplayGain.

AudioParameters Effect::audioParameters ( ) const

Returns audio parameters for output data.

const ChannelMap& Effect::channelMap ( ) const

Returns map of channels

int Effect::channels ( ) const

Returns channels number.

virtual void Effect::configure ( quint32  srate,
ChannelMap  map 
)
virtual

Prepares object for usage. Subclasses that reimplement this function must call the base implementation.

Parameters
srateSample rate.
mapMap of channels.

Reimplemented in Dithering, and ChannelConverter.

static Effect* Effect::create ( EffectFactory *  factory)
static

Creates effect object from factory. Returns effect objects if factory is enabled, otherwise returns 0.

static QList<EffectFactory*> Effect::enabledFactories ( )
static

Returns a list of enabled effect factories.

static QList<EffectFactory*> Effect::factories ( )
static
EffectFactory* Effect::factory ( ) const

Returns assigned factory object.

static QString Effect::file ( const EffectFactory *  factory)
static

Returns plugin file path.

Parameters
factoryEffect plugin factory.

Referenced by MusicQmmpPluginWidget::loadPluginsInfo().

static EffectFactory* Effect::findFactory ( const QString &  shortName)
static

Finds effect factory object by short name shortName. Returns effect factory pointer. If no match is found, 0 is returned. The search is case sensitive.

static bool Effect::isEnabled ( const EffectFactory *  factory)
static

Returns true if input plugin is enabled, otherwise returns false

Parameters
factoryEffect plugin factory.

Referenced by TTK::TTKQmmp::isEffectEnabled(), and MusicQmmpPluginItem::MusicQmmpPluginItem().

static void Effect::loadPlugins ( )
staticprivate
quint32 Effect::sampleRate ( ) const

Returns samplerate.

static void Effect::setEnabled ( EffectFactory *  factory,
bool  enable = true 
)
static

Sets whether the effect plugin is enabled.

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

Referenced by TTK::TTKQmmp::setEffectEnabled(), and TTK::TTKQmmp::setEffectsEnabled().

Member Data Documentation

QList<QmmpPluginCache*>* Effect::m_cache
staticprivate

Definition at line 122 of file effect.h.

ChannelMap Effect::m_chan_map
private

Definition at line 119 of file effect.h.

int Effect::m_channels = 0
private

Definition at line 118 of file effect.h.

QStringList Effect::m_enabledNames
staticprivate

Definition at line 123 of file effect.h.

EffectFactory* Effect::m_factory = nullptr
private

Definition at line 116 of file effect.h.

quint32 Effect::m_freq = 0
private

Definition at line 117 of file effect.h.


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