#include <boost/shared_ptr.hpp>
#include <ardour/types.h>
+#include <ardour/plugin.h>
+#include <ardour/audio_unit.h>
namespace ARDOUR {
PluginManager (ARDOUR::AudioEngine&);
~PluginManager ();
- std::list<PluginInfo*> &vst_plugin_info () { return _vst_plugin_info; }
- std::list<PluginInfo*> &ladspa_plugin_info () { return _ladspa_plugin_info; }
- std::list<PluginInfo*> &au_plugin_info () { return _au_plugin_info; }
+ ARDOUR::PluginInfoList &vst_plugin_info () { return _vst_plugin_info; }
+ ARDOUR::PluginInfoList &ladspa_plugin_info () { return _ladspa_plugin_info; }
+ ARDOUR::PluginInfoList &au_plugin_info () { return _au_plugin_info; }
void refresh ();
int add_ladspa_directory (std::string dirpath);
int add_vst_directory (std::string dirpath);
- boost::shared_ptr<Plugin> load (ARDOUR::Session& s, PluginInfo* info);
+ boost::shared_ptr<Plugin> load (ARDOUR::Session& s, PluginInfoPtr info);
static PluginManager* the_manager() { return _manager; }
private:
ARDOUR::AudioEngine& _engine;
- std::list<PluginInfo*> _vst_plugin_info;
- std::list<PluginInfo*> _ladspa_plugin_info;
- std::list<PluginInfo*> _au_plugin_info;
+ ARDOUR::PluginInfoList _vst_plugin_info;
+ ARDOUR::PluginInfoList _ladspa_plugin_info;
+ ARDOUR::PluginInfoList _au_plugin_info;
std::map<uint32_t, std::string> rdf_type;
std::string ladspa_path;