72 lines
1.8 KiB
C++
72 lines
1.8 KiB
C++
#include "thrawn_api.h"
|
|
#include "LuaEngine.h"
|
|
|
|
//void write_light(const std::string_view name, const bool is_on);
|
|
int thrawn_log_light(lua_State* lua) {
|
|
int paramCount = lua_gettop(lua);
|
|
|
|
if (paramCount != 3) {
|
|
return -1;
|
|
}
|
|
|
|
//Param 1: room
|
|
//Param 2: name
|
|
//Param 3: is_on
|
|
if (!check_arguments<std::string, std::string, bool>(lua)) {
|
|
return -1;
|
|
}
|
|
// if (!lua_isstring(lua, -3) || !lua_isstring (lua, -2) || !lua_isboolean (lua, -1)) {
|
|
// return -1;
|
|
// }
|
|
|
|
LuaEngine::get_instance().db_logger.write_light(lua_tostring(lua, -3), lua_tostring(lua, -2), lua_toboolean(lua, -1));
|
|
|
|
return 0;
|
|
}
|
|
|
|
int thrawn_log_light_dimmable(lua_State* lua) {
|
|
int paramCount = lua_gettop(lua);
|
|
|
|
if (paramCount != 4) {
|
|
return -1;
|
|
}
|
|
|
|
//Param 1: room
|
|
//Param 2: name
|
|
//Param 3: is_on
|
|
//Param 4: brightness
|
|
if (!check_arguments<std::string, std::string, bool, int>(lua)) {
|
|
return -1;
|
|
}
|
|
// if (!lua_isstring(lua, -4) | !lua_isstring(lua, -3) || !lua_isboolean(lua, -2) || !lua_isinteger(lua, -1)) {
|
|
// return -1;
|
|
// }
|
|
|
|
LuaEngine::get_instance().db_logger.write_light_dimmable(lua_tostring(lua, -4), lua_tostring(lua, -3), lua_toboolean(lua, -2), lua_tointeger(lua, -1));
|
|
|
|
return 0;
|
|
}
|
|
|
|
int thrawn_log_light_tw(lua_State* lua) {
|
|
int paramCount = lua_gettop(lua);
|
|
|
|
if (paramCount != 5) {
|
|
return -1;
|
|
}
|
|
|
|
//Param 1: room
|
|
//Param 2: name
|
|
//Param 3: is_on
|
|
//Param 4: brightness
|
|
//Param 5: color_temperature
|
|
if (!check_arguments<std::string, std::string, bool, int, int>(lua)) {
|
|
return -1;
|
|
}
|
|
// if (!lua_isstring(lua, -5) || !lua_isstring(lua, -4) || !lua_isboolean(lua, -3) || !lua_isinteger(lua, -2) || !lua_isinteger(lua, -1)) {
|
|
// return -1;
|
|
// }
|
|
|
|
LuaEngine::get_instance().db_logger.write_light_tuneable_white(lua_tostring(lua, -5), lua_tostring(lua, -4), lua_toboolean(lua, -3), lua_tointeger(lua, -2), lua_tointeger(lua, -1));
|
|
|
|
return 0;
|
|
} |