recover handshake
[apps/agl-service-homescreen.git] / src / hs-proxy.h
index b6283d6..45bf9f4 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);
 
     // asynchronous call, reply in callback function
-    void start(afb_req_t request, const std::string &id);
+    void start(afb_api_t api, const std::string &id);
 };
 
 class HS_WmProxy {
 public:
-    HS_WmProxy() = default;
-    ~HS_WmProxy() = default;
 
     enum EventType
     {
@@ -51,12 +52,27 @@ public:
 
         Event_ScreenUpdated,
 
+        Event_Handshake,
+
+        Event_HeadlampOff,
+        Event_HeadlampOn,
+
+        Event_ParkingBrakeOff,
+        Event_ParkingBrakeOn,
+
+        Event_LightstatusBrakeOff,
+        Event_LightstatusBrakeOn,
+
+        Event_CarStop,
+        Event_CarRun,
+
         Event_Error,
 
         Event_Val_Max = Event_Error,
     };
 
     // 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