diff options
| author | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2009-12-07 12:58:18 +0000 |
|---|---|---|
| committer | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2009-12-07 12:58:18 +0000 |
| commit | 1128dce7d78ce44f6157259efc73b38ae7005133 (patch) | |
| tree | 53a939ce8f76d9c5d5e477a40af1c1c2e8d81688 /src/plugins/Effect/ladspa/ladspaplugin.h | |
| parent | 648d09c5cea5ad4c2e31d51ff804ec32b23ac458 (diff) | |
| download | qmmp-1128dce7d78ce44f6157259efc73b38ae7005133.tar.gz qmmp-1128dce7d78ce44f6157259efc73b38ae7005133.tar.bz2 qmmp-1128dce7d78ce44f6157259efc73b38ae7005133.zip | |
some ladspa plugin changes
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@1426 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/plugins/Effect/ladspa/ladspaplugin.h')
| -rw-r--r-- | src/plugins/Effect/ladspa/ladspaplugin.h | 112 |
1 files changed, 0 insertions, 112 deletions
diff --git a/src/plugins/Effect/ladspa/ladspaplugin.h b/src/plugins/Effect/ladspa/ladspaplugin.h deleted file mode 100644 index fa9b0200e..000000000 --- a/src/plugins/Effect/ladspa/ladspaplugin.h +++ /dev/null @@ -1,112 +0,0 @@ -/*************************************************************************** - * Copyright (C) 2009 by Ilya Kotov * - * forkotov02@hotmail.ru * - * * - * This program is free software; you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation; either version 2 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program; if not, write to the * - * Free Software Foundation, Inc., * - * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * - ***************************************************************************/ -#ifndef LADSPAPLUGIN_H -#define LADSPAPLUGIN_H - -#include <QMutex> -#include <QList> -#include <qmmp/effect.h> -#include <ladspa.h> - -class QWidget; - -/** - @author Ilya Kotov <forkotov02@hotmail.ru> -*/ - -#define MAX_SAMPLES 8192 -#define MAX_KNOBS 64 - - -class LADSPAPlugin -{ -public: - QString name; - QString fileName; - long id; - long unique_id; - bool stereo; -}; - -class LADSPAControl -{ -public: - enum Type - { - BUTTON = 0, - SLIDER - }; - double min; - double max; - double step; - LADSPA_Data *value; - bool type; - QString name; -}; - -class LADSPAEffect -{ -public: - void *library; - QString fileName; - bool stereo; - const LADSPA_Descriptor *descriptor; - LADSPA_Handle handle; /* left or mono */ - LADSPA_Handle handle2; /* right stereo */ - LADSPA_Data knobs[MAX_KNOBS]; - QList <LADSPAControl*> controls; -}; - - -class LADSPAHost : public Effect -{ -public: - LADSPAHost(); - - virtual ~LADSPAHost(); - - ulong process(char *in_data, const ulong size, char **out_data); - void configure(quint32 freq, int chan, int res); - QList <LADSPAPlugin *> plugins(); - QList <LADSPAEffect *> runningPlugins(); - LADSPAEffect *addPlugin(LADSPAPlugin * plugin); - void unload(LADSPAEffect *instance); - - static LADSPAHost* instance(); - -private: - int applyEffect(qint16 *d, int length); - - void bootPlugin(LADSPAEffect *instance); - void findAllPlugins(); - void findPlugins(const QString &path); - LADSPAEffect *load(const QString &path, long num); - void portAssign(LADSPAEffect *instance); - void initialize(LADSPAEffect *instance); - - QList <LADSPAPlugin *> m_plugins; - QList <LADSPAEffect *> m_effects; - - LADSPA_Data m_left[MAX_SAMPLES], m_right[MAX_SAMPLES], m_trash[MAX_SAMPLES]; - - static LADSPAHost *m_instance; -}; - -#endif |
