add handshake
[apps/agl-service-homescreen.git] / src / hs-proxy.h
index b6283d6..1c9a67d 100644 (file)
 #include <functional>
 #include "hs-helper.h"
 
-struct HS_AfmMainProxy {
+typedef void (*api_cb_func)(struct json_object *obj, const char *error, const char *info);
+
+class HS_AfmMainProxy {
+public:
     // synchronous call, call result in object
     int runnables(afb_api_t api, struct json_object **object);
     int detail(afb_api_t api, const std::string &id, struct json_object **object);
@@ -33,8 +36,6 @@ struct HS_AfmMainProxy {
 
 class HS_WmProxy {
 public:
-    HS_WmProxy() = default;
-    ~HS_WmProxy() = default;
 
     enum EventType
     {
@@ -50,6 +51,7 @@ public:
         Event_FlushDraw,
 
         Event_ScreenUpdated,
+        Event_Handshake,
 
         Event_Error,
 
@@ -57,6 +59,7 @@ public:
     };
 
     // asynchronous call, reply in callback function
-    void subscribe(afb_api_t api, EventType event);
+    void subscribe(afb_api_t api, EventType event, api_cb_func f = nullptr);
 };
+
 #endif // HOMESCREEN_PROXY_H
\ No newline at end of file