diff options
author | zheng_wenlong <wenlong_zheng@nexty-ele.com> | 2017-10-23 11:49:31 +0900 |
---|---|---|
committer | Zheng Wenlong <wenlong_zheng@nexty-ele.com> | 2017-10-30 04:15:17 +0000 |
commit | 73038bdc74f57b5cf96ddde2974eb7204dd0a868 (patch) | |
tree | 9b89601ca928b171938ded09052abc50ef4b8a63 /include/libhomescreen.hpp | |
parent | 2ea3e1fa018fb4dd8d8acb80988832df2f5cf10d (diff) |
Delete libhomescreen from this gerrit repository
Relocate libhomescreen into its own repository as src/libhomescreen.
BUG-AGL: SPEC-993
Change-Id: I481c9b2322a1a112f23facdd930cb36e594919bb
Signed-off-by: zheng_wenlong <wenlong_zheng@nexty-ele.com>
Diffstat (limited to 'include/libhomescreen.hpp')
-rw-r--r-- | include/libhomescreen.hpp | 95 |
1 files changed, 0 insertions, 95 deletions
diff --git a/include/libhomescreen.hpp b/include/libhomescreen.hpp deleted file mode 100644 index 06e9ad8..0000000 --- a/include/libhomescreen.hpp +++ /dev/null @@ -1,95 +0,0 @@ -/* - * Copyright (c) 2017 TOYOTA MOTOR CORPORATION - * - * 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. - */ - -#ifndef LIBHOMESCREEN_H -#define LIBHOMESCREEN_H -#include <vector> -#include <map> -#include <string> -#include <functional> -#include <json-c/json.h> -#include <systemd/sd-event.h> -extern "C" -{ -#include <afb/afb-binding.h> -#include <afb/afb-wsj1.h> -#include <afb/afb-ws-client.h> -} - -class LibHomeScreen -{ -public: - LibHomeScreen(); - ~LibHomeScreen(); - - LibHomeScreen(const LibHomeScreen &) = delete; - LibHomeScreen &operator=(const LibHomeScreen &) = delete; - - using handler_func = std::function<void(const char*)>; - - enum EventType { - Event_TapShortcut = 1, - Event_OnScreenMessage - }; - - static const std::vector<std::string> api_list; - static const std::vector<std::string> event_list; - - /* Method */ - int init(const int port, const std::string& token); - - int tapShortcut(const char* application_name); - int onScreenMessage(const char* display_message); - - void set_event_handler(enum EventType et, handler_func f); - - void registerCallback( - void (*event_cb)(const std::string& event, struct json_object* event_contents), - void (*reply_cb)(struct json_object* reply_contents), - void (*hangup_cb)(void) = nullptr); - - int call(const std::string& verb, struct json_object* arg); - int call(const char* verb, struct json_object* arg); - int subscribe(const std::string& event_name); - int unsubscribe(const std::string& event_name); - -private: - int initialize_websocket(); - int runEventloop(); - - void (*onEvent)(const std::string& event, struct json_object* event_contents); - void (*onReply)(struct json_object* reply); - void (*onHangup)(void); - - struct afb_wsj1* sp_websock; - struct afb_wsj1_itf minterface; - sd_event* mploop; - std::string muri; - - int mport = 2000; - std::string mtoken = "hs"; - - std::map<EventType, handler_func> handlers; - -public: - /* Don't use/ Internal only */ - void on_hangup(void *closure, struct afb_wsj1 *wsj); - void on_call(void *closure, const char *api, const char *verb, struct afb_wsj1_msg *msg); - void on_event(void *closure, const char *event, struct afb_wsj1_msg *msg); - void on_reply(void *closure, struct afb_wsj1_msg *msg); -}; - -#endif /* LIBHOMESCREEN_H */ |