Ardour  9.0-pre0-582-g084a23a80d
lua_script_params.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2016-2017 Robin Gareus <robin@gareus.org>
3  *
4  * This program is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License as published by
6  * the Free Software Foundation; either version 2 of the License, or
7  * (at your option) any later version.
8  *
9  * This program is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  * GNU General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License along
15  * with this program; if not, write to the Free Software Foundation, Inc.,
16  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
17  */
18 #ifndef _ardour_lua_script_params_h_
19 #define _ardour_lua_script_params_h_
20 
21 #include "lua/luastate.h"
22 
24 #include "ardour/luascripting.h"
25 
26 namespace luabridge {
27  class LuaRef;
28 }
29 
30 /* Semantically these are static functions of the LuaScripting class
31  * but are kept separately to minimize header includes.
32  *
33  * LuaScripting itself is a standalone abstraction (not depending on luabridge)
34  * luascripting.h is included by session.h (this file is not).
35  *
36  * The implementation of these functions is in libs/ardour/luascripting.cc
37  */
38 namespace ARDOUR { namespace LuaScriptParams {
39 
41  LIBARDOUR_API LuaScriptParamList script_params (const std::string &, const std::string &, bool file=true);
42  LIBARDOUR_API LuaScriptParamList script_params (LuaState&, const std::string &, const std::string &, bool file=true);
43  LIBARDOUR_API void params_to_ref (luabridge::LuaRef *tbl_args, const LuaScriptParamList&);
44  LIBARDOUR_API void ref_to_params (LuaScriptParamList&, luabridge::LuaRef *tbl_args);
45 
46 } } // namespace
47 
48 #endif // _ardour_lua_script_params_h_
Definition: LuaRef.h:52
#define LIBARDOUR_API
void params_to_ref(luabridge::LuaRef *tbl_args, const LuaScriptParamList &)
LuaScriptParamList script_params(const LuaScriptInfoPtr &, const std::string &)
void ref_to_params(LuaScriptParamList &, luabridge::LuaRef *tbl_args)
std::shared_ptr< LuaScriptInfo > LuaScriptInfoPtr
Definition: luascripting.h:103
std::vector< LuaScriptParamPtr > LuaScriptParamList
Definition: luascripting.h:107