return boost::shared_ptr<Processor> (new PluginInsert (*s, p));
}
+PluginInfoList
+ARDOUR::LuaAPI::list_plugins ()
+{
+ PluginManager& manager = PluginManager::instance ();
+ PluginInfoList all_plugs;
+ all_plugs.insert (all_plugs.end (), manager.ladspa_plugin_info ().begin (), manager.ladspa_plugin_info ().end ());
+ all_plugs.insert (all_plugs.end (), manager.lua_plugin_info ().begin (), manager.lua_plugin_info ().end ());
+#ifdef WINDOWS_VST_SUPPORT
+ all_plugs.insert (all_plugs.end (), manager.windows_vst_plugin_info ().begin (), manager.windows_vst_plugin_info ().end ());
+#endif
+#ifdef MACVST_SUPPORT
+ all_plugs.insert (all_plugs.end (), manager.mac_vst_plugin_info ().begin (), manager.mac_vst_plugin_info ().end ());
+#endif
+#ifdef LXVST_SUPPORT
+ all_plugs.insert (all_plugs.end (), manager.lxvst_plugin_info ().begin (), manager.lxvst_plugin_info ().end ());
+#endif
+#ifdef AUDIOUNIT_SUPPORT
+ all_plugs.insert (all_plugs.end (), manager.au_plugin_info ().begin (), manager.au_plugin_info ().end ());
+#endif
+#ifdef LV2_SUPPORT
+ all_plugs.insert (all_plugs.end (), manager.lv2_plugin_info ().begin (), manager.lv2_plugin_info ().end ());
+#endif
+ all_plugs.insert (all_plugs.end (), manager.lua_plugin_info ().begin (), manager.lua_plugin_info ().end ());
+
+ return all_plugs;
+}
+
PluginInfoPtr
ARDOUR::LuaAPI::new_plugin_info (const string& name, ARDOUR::PluginType type)
{
#ifdef WINDOWS_VST_SUPPORT
all_plugs.insert (all_plugs.end (), manager.windows_vst_plugin_info ().begin (), manager.windows_vst_plugin_info ().end ());
#endif
+#ifdef MACVST_SUPPORT
+ all_plugs.insert (all_plugs.end (), manager.mac_vst_plugin_info ().begin (), manager.mac_vst_plugin_info ().end ());
+#endif
#ifdef LXVST_SUPPORT
all_plugs.insert (all_plugs.end (), manager.lxvst_plugin_info ().begin (), manager.lxvst_plugin_info ().end ());
#endif
return 4;
}
+std::string
+ARDOUR::LuaAPI::ascii_dtostr (const double d)
+{
+ gchar buf[G_ASCII_DTOSTR_BUF_SIZE];
+ g_ascii_dtostr (buf, sizeof(buf), d);
+ return std::string (buf);
+}
+
int
ARDOUR::LuaAPI::color_to_rgba (lua_State *L)
{
}
// invalid userdata -- fall through
}
- // no break
+ /* fall through */
case LUA_TFUNCTION: // no support -- we could... string.format("%q", string.dump(value, true))
+ /* fall through */
case LUA_TTABLE: // no nested tables, sorry.
- case LUA_TNIL: // fallthrough
+ case LUA_TNIL:
default:
// invalid value
lua_pop (L, 2);
return _plugin->process (bufs, rt);
}
-boost::shared_ptr<Evoral::Note<Evoral::Beats> >
-LuaAPI::new_noteptr (uint8_t chan, Evoral::Beats beat_time, Evoral::Beats length, uint8_t note, uint8_t velocity)
+boost::shared_ptr<Evoral::Note<Temporal::Beats> >
+LuaAPI::new_noteptr (uint8_t chan, Temporal::Beats beat_time, Temporal::Beats length, uint8_t note, uint8_t velocity)
{
- return boost::shared_ptr<Evoral::Note<Evoral::Beats> > (new Evoral::Note<Evoral::Beats>(chan, beat_time, length, note, velocity));
+ return boost::shared_ptr<Evoral::Note<Temporal::Beats> > (new Evoral::Note<Temporal::Beats>(chan, beat_time, length, note, velocity));
}
-std::list<boost::shared_ptr<Evoral::Note<Evoral::Beats> > >
+std::list<boost::shared_ptr<Evoral::Note<Temporal::Beats> > >
LuaAPI::note_list (boost::shared_ptr<MidiModel> mm)
{
- typedef boost::shared_ptr<Evoral::Note<Evoral::Beats> > NotePtr;
+ typedef boost::shared_ptr<Evoral::Note<Temporal::Beats> > NotePtr;
std::list<NotePtr> note_ptr_list;