summaryrefslogtreecommitdiff
path: root/libs/ardour/ardour/luascripting.h
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2016-03-23 23:42:38 +0100
committerRobin Gareus <robin@gareus.org>2016-03-23 23:42:38 +0100
commitb7754af246dd5446828217a636d8a24e751e41d1 (patch)
tree085d94d126a4d2bfe3837e9e3d67380b45507a9b /libs/ardour/ardour/luascripting.h
parenta8943538ea8c204ce7d4b2cd2c6358ddb0a6bfd5 (diff)
update lua script file management:
* clean up Script discovery API * add "Snippet" script type * expose user-script dir * add temporary error-debug information
Diffstat (limited to 'libs/ardour/ardour/luascripting.h')
-rw-r--r--libs/ardour/ardour/luascripting.h10
1 files changed, 7 insertions, 3 deletions
diff --git a/libs/ardour/ardour/luascripting.h b/libs/ardour/ardour/luascripting.h
index d55f131799..b48aaa9a69 100644
--- a/libs/ardour/ardour/luascripting.h
+++ b/libs/ardour/ardour/luascripting.h
@@ -23,6 +23,7 @@
#include <boost/shared_ptr.hpp>
#include <glibmm/threads.h>
+#include "pbd/signals.h"
#include "ardour/libardour_visibility.h"
namespace ARDOUR {
@@ -36,6 +37,7 @@ class LIBARDOUR_API LuaScriptInfo {
Session,
EditorHook,
EditorAction,
+ Snippet,
};
static std::string type2str (const ScriptType t);
@@ -98,18 +100,19 @@ public:
~LuaScripting ();
LuaScriptList &scripts (LuaScriptInfo::ScriptType);
+ void refresh (bool run_scan = false);
+ PBD::Signal0<void> scripts_changed;
- void refresh ();
- static LuaScriptInfoPtr script_info (const std::string &script ) { return scan_script ("", script); }
+ static LuaScriptInfoPtr script_info (const std::string &script);
static bool try_compile (const std::string&, const LuaScriptParamList&);
static std::string get_factory_bytecode (const std::string&);
+ static std::string user_script_dir ();
private:
static LuaScripting* _instance; // singleton
LuaScripting ();
void scan ();
- void check_scan ();
static LuaScriptInfoPtr scan_script (const std::string &, const std::string & sc = "");
static void lua_print (std::string s);
@@ -117,6 +120,7 @@ private:
LuaScriptList *_sl_session;
LuaScriptList *_sl_hook;
LuaScriptList *_sl_action;
+ LuaScriptList *_sl_snippet;
LuaScriptList _empty_script_info;
Glib::Threads::Mutex _lock;