X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fwm_client.hpp;h=5342b76efa243f2a8cd9d9e1cb35d6619d868b46;hb=a4584342e35332223e9fb16a346b2316a6507343;hp=0268807dec0cbc1cc14a38ed2a1dbb4b4e375683;hpb=e2a1895b1553c067927a250e83132e836fc1836a;p=apps%2Fagl-service-windowmanager.git diff --git a/src/wm_client.hpp b/src/wm_client.hpp index 0268807..5342b76 100644 --- a/src/wm_client.hpp +++ b/src/wm_client.hpp @@ -20,6 +20,7 @@ #include #include #include +#include "wm_error.hpp" extern "C" { @@ -42,18 +43,23 @@ class WMClient WMClient(const std::string &appid, unsigned layer, unsigned surface, const std::string &role); WMClient(const std::string &appid, const std::string &role); - virtual ~WMClient(); + WMClient(const std::string &appid, unsigned layer, const std::string &role); + WMClient(const std::string &appid, unsigned layer, + const std::string& layer_name, unsigned surface, const std::string &role); + ~WMClient() = default; std::string appID() const; unsigned surfaceID(const std::string &role) const; unsigned layerID() const; - const std::string& getWMLayerName(); unsigned surfaceID() const; std::vector renderOrder() const; + std::string role(unsigned surface) const; + std::string role() const; const std::vector &roles() const; void setRole(const std::string& role); - void registerLayer(unsigned layer); - bool addSurface(const std::string& role, unsigned surface); + void appendRole(const std::string& role); + //bool addSurface(const std::string& role, unsigned surface); + WMError addSurface(unsigned surface); bool removeSurfaceIfExist(unsigned surface); bool removeRole(const std::string& role); @@ -67,17 +73,18 @@ class WMClient private: std::string id; unsigned layer; - std::string wm_layer_name; + std::string main_role; std::string area; unsigned surface; // currently, main application has only one surface. std::vector role_list; std::vector surface_render_order; std::unordered_map service2surfaces; + std::unordered_map role2surface; #if GTEST_ENABLED // This is for unit test. afb_make_event occurs sig11 if call not in afb-binding - std::unordered_map event2list; + std::unordered_map evname2afb_event; #else - std::unordered_map event2list; + std::unordered_map evname2afb_event; #endif }; } // namespace wm