aboutsummaryrefslogtreecommitdiffstats
path: root/src/homescreen.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/homescreen.h')
-rw-r--r--src/homescreen.h25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/homescreen.h b/src/homescreen.h
new file mode 100644
index 0000000..5da365b
--- /dev/null
+++ b/src/homescreen.h
@@ -0,0 +1,25 @@
+#ifndef HOMESCREEN_H
+#define HOMESCREEN_H
+
+#include <memory>
+#include <algorithm>
+#include <unordered_map>
+#include <list>
+
+#include "hs-helper.h"
+#include "hs-clientmanager.h"
+#include "hs-appinfo.h"
+
+struct hs_instance {
+ HS_ClientManager *client_manager; // the connection session manager
+ HS_AppInfo *app_info; // application info
+
+ hs_instance() : client_manager(HS_ClientManager::instance()), app_info(HS_AppInfo::instance()) {}
+ int init(afb_api_t api);
+ void setEventHook(const char *event, const event_hook_func f);
+ void onEvent(afb_api_t api, const char *event, struct json_object *object);
+private:
+ std::unordered_map<std::string, std::list<event_hook_func>> event_hook_list;
+};
+
+#endif