POI: AGL LifeCycle Management
[apps/agl-service-windowmanager.git] / src / window_manager.hpp
index 57b9fde..582a74d 100644 (file)
@@ -32,6 +32,8 @@ extern "C"
 #include <afb/afb-binding.h>
 }
 
+#include "activity_manager.hpp"
+
 struct json_object;
 
 namespace wm
@@ -176,9 +178,11 @@ class WindowManager
     void api_activate_window(char const *appid, char const *role, char const *drawing_area, const reply_func &reply);
     void api_deactivate_window(char const *appid, char const *role, const reply_func &reply);
     void api_enddraw(char const *appid, char const *role);
-    int  api_subscribe(afb_req req, int event_id);
+    int  api_subscribe(afb_req_t req, int event_id);
+
     result<json_object *> api_get_display_info();
     result<json_object *> api_get_area_info(char const *role);
+
     void send_event(const std::string& evname, const std::string& role);
     void send_event(const std::string& evname, const std::string& role, const std::string& area, int x, int y, int w, int h);
 
@@ -188,13 +192,16 @@ class WindowManager
 
     void removeClient(const std::string &appid);
     void exceptionProcessForTransition();
-    const char* convertRoleOldToNew(char const *role);
 
     // Do not use this function
     void timerHandler();
     void startTransitionWrapper(std::vector<WMAction> &actions);
     void processError(WMError error);
 
+  public:
+    // AGL Lifecycle Management API
+    lcm::ActivityManager amgr;
+
   private:
     // WM Events to clients
     void emit_activated(const std::string& role);
@@ -218,13 +225,9 @@ class WindowManager
     void stopTimer();
     void processNextRequest();
 
-    int loadOldRoleDb();
-
   private:
-    std::map<std::string, struct afb_event> map_afb_event;
+    std::map<std::string, afb_event_t> map_afb_event;
     std::unordered_map<std::string, struct rect> area2size;
-    std::unordered_map<std::string, std::string> roleold2new;
-    std::unordered_map<std::string, std::string> rolenew2old;
     std::shared_ptr<LayerControl> lc;
     PMWrapper pmw;
     rect_map area_info;
@@ -232,7 +235,6 @@ class WindowManager
 
     // ID allocation and proxy methods for lookup
     std::unordered_map<unsigned, struct TmpClient> tmp_surface2app;
-    static const char* kDefaultOldRoleDb;
 };
 
 } // namespace wm