summaryrefslogtreecommitdiffstats
path: root/plugins/lua2c-interface.cpp
diff options
context:
space:
mode:
authorRomain Forlot <romain.forlot@iot.bzh>2017-10-05 01:38:18 +0200
committerRomain Forlot <romain.forlot@iot.bzh>2017-12-14 11:00:25 +0100
commit8df3e437f941912067231250ff5695b8a3a7fd92 (patch)
treec812fb252ad0f8a48041aff28b7fc60a75f245d1 /plugins/lua2c-interface.cpp
parent8364673ab93eb484e25c7c4776e5d705b73330b4 (diff)
LUA lib and bin embedded in project
Change-Id: I1a61b49f55e4daa305800e754a14b6041aa81b34 Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Diffstat (limited to 'plugins/lua2c-interface.cpp')
-rw-r--r--plugins/lua2c-interface.cpp74
1 files changed, 0 insertions, 74 deletions
diff --git a/plugins/lua2c-interface.cpp b/plugins/lua2c-interface.cpp
deleted file mode 100644
index b584823..0000000
--- a/plugins/lua2c-interface.cpp
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * Copyright (C) 2016 "IoT.bzh"
- * Author Romain Forlot <romain.forlot@iot.bzh>
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
-*/
-
-#define AFB_BINDING_VERSION 2
-#include <afb/afb-binding.h>
-#include <systemd/sd-event.h>
-#include <json-c/json_object.h>
-#include <stdbool.h>
-#include <string.h>
-
-#include "signal-composer.hpp"
-#include "ctl-config.h"
-#include "wrap-json.h"
-
-extern "C"
-{
-
-CTLP_LUALOAD
-CTLP_REGISTER("lua2c-interface");
-
-typedef struct CtxS {
- struct signalCBT* pluginHandle;
-} CtxT;
-
-static CtxT *pluginCtx = NULL;
-
-// Call at initialisation time
-CTLP_ONLOAD(plugin, handle) {
- pluginCtx = (CtxT*)calloc (1, sizeof(CtxT));
- pluginCtx->pluginHandle = (struct signalCBT*)handle;
-
- AFB_NOTICE ("Low-can plugin: label='%s' version='%s' info='%s'",
- plugin->label,
- plugin->version,
- plugin->info);
-
- return (void*)pluginCtx;
-}
-
-CTLP_LUA2C (setSignalValueWrap, label, argsJ)
-{
- const char* name = nullptr;
- double resultNum;
- uint64_t timestamp;
- if(! wrap_json_unpack(argsJ, "{ss, sF, sI? !}",
- "name", &name,
- "value", &resultNum,
- "timestamp", &timestamp))
- {
- AFB_ERROR("Fail to set value for label: %s, argsJ: %s", label, json_object_to_json_string(argsJ));
- return -1;
- }
- struct signalValue result = {0,0,1, resultNum, 0, ""};
- pluginCtx->pluginHandle->setSignalValue(name, timestamp*MICRO, result);
- return 0;
-}
-
-// extern "C" closure
-}