Mercurial > hg > svcore
comparison plugin/DSSIPluginFactory.h @ 0:da6937383da8
initial import
author | Chris Cannam |
---|---|
date | Tue, 10 Jan 2006 16:33:16 +0000 |
parents | |
children | d86891498eef |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:da6937383da8 |
---|---|
1 /* -*- c-basic-offset: 4 -*- vi:set ts=8 sts=4 sw=4: */ | |
2 | |
3 /* | |
4 A waveform viewer and audio annotation editor. | |
5 Chris Cannam, Queen Mary University of London, 2005 | |
6 | |
7 This is experimental software. Not for distribution. | |
8 */ | |
9 | |
10 /* | |
11 This is a modified version of a source file from the | |
12 Rosegarden MIDI and audio sequencer and notation editor. | |
13 This file copyright 2000-2005 Chris Cannam. | |
14 */ | |
15 | |
16 #ifndef _DSSI_PLUGIN_FACTORY_H_ | |
17 #define _DSSI_PLUGIN_FACTORY_H_ | |
18 | |
19 #define DSSI_API_LEVEL 2 | |
20 | |
21 #include "LADSPAPluginFactory.h" | |
22 #include "api/dssi.h" | |
23 | |
24 #include <QMutex> | |
25 | |
26 class DSSIPluginInstance; | |
27 | |
28 class DSSIPluginFactory : public LADSPAPluginFactory | |
29 { | |
30 public: | |
31 virtual ~DSSIPluginFactory(); | |
32 | |
33 virtual void enumeratePlugins(std::vector<QString> &list); | |
34 | |
35 virtual RealTimePluginInstance *instantiatePlugin(QString identifier, | |
36 int clientId, | |
37 int position, | |
38 unsigned int sampleRate, | |
39 unsigned int blockSize, | |
40 unsigned int channels); | |
41 | |
42 protected: | |
43 DSSIPluginFactory(); | |
44 friend class RealTimePluginFactory; | |
45 | |
46 virtual std::vector<QString> getPluginPath(); | |
47 | |
48 #ifdef HAVE_LIBLRDF | |
49 virtual std::vector<QString> getLRDFPath(QString &baseUri); | |
50 #endif | |
51 | |
52 virtual void discoverPlugins(QString soName); | |
53 | |
54 virtual const LADSPA_Descriptor *getLADSPADescriptor(QString identifier); | |
55 virtual const DSSI_Descriptor *getDSSIDescriptor(QString identifier); | |
56 | |
57 DSSI_Host_Descriptor m_hostDescriptor; | |
58 }; | |
59 | |
60 #endif | |
61 |