App: make a couple of methods private to signal internal use
authorMarcus Fritzsch <marcus_fritzsch@mentor.com>
Tue, 12 Sep 2017 09:29:37 +0000 (11:29 +0200)
committerMarcus Fritzsch <marcus_fritzsch@mentor.com>
Tue, 12 Sep 2017 09:29:37 +0000 (11:29 +0200)
Signed-off-by: Marcus Fritzsch <marcus_fritzsch@mentor.com>
src/afb_binding_api.cpp
src/app.cpp
src/app.hpp

index cdd1a19..9fd2430 100644 (file)
@@ -107,7 +107,7 @@ binding_api::result_type binding_api::debug_terminate() {
 }
 
 binding_api::result_type binding_api::ping() {
-   this->app->dispatch_pending_events();
+   this->app->api_ping();
    return Ok(json_object_new_object());
 }
 
index e58c85d..cf7b6be 100644 (file)
@@ -169,6 +169,23 @@ int App::dispatch_pending_events() {
    return -1;
 }
 
+bool App::pop_pending_events() {
+   bool x{true};
+   return this->pending_events.compare_exchange_strong(
+      x, false, std::memory_order_consume);
+}
+
+void App::set_pending_events() {
+   this->pending_events.store(true, std::memory_order_release);
+}
+
+optional<int> App::lookup_id(char const *name) {
+   return this->id_alloc.lookup(std::string(name));
+}
+optional<std::string> App::lookup_name(int id) {
+   return this->id_alloc.lookup(id);
+}
+
 //  _       _ _       _                         _    ____
 // (_)_ __ (_) |_    | | __ _ _   _  ___  _   _| |_ / /\ \
 // | | '_ \| | __|   | |/ _` | | | |/ _ \| | | | __| |  | |
@@ -587,6 +604,10 @@ char const *App::api_enddraw(char const *drawing_name) {
    return "No EndDraw pending for surface";
 }
 
+void App::api_ping() {
+   this->dispatch_pending_events();
+}
+
 //                      _          _   _____                 _
 //  _ __  _ __ _____  _(_) ___  __| | | ____|_   _____ _ __ | |_ ___
 // | '_ \| '__/ _ \ \/ / |/ _ \/ _` | |  _| \ \ / / _ \ '_ \| __/ __|
index 5ef7ab4..6e18855 100644 (file)
@@ -120,27 +120,11 @@ struct App {
 
    // ID allocation and proxy methods for lookup
    struct id_allocator id_alloc;
-   optional<int> lookup_id(char const *name) {
-      return this->id_alloc.lookup(std::string(name));
-   }
-   optional<std::string> lookup_name(int id) {
-      return this->id_alloc.lookup(id);
-   }
 
    // Set by AFB API when wayland events need to be dispatched
    std::atomic<bool> pending_events;
-   void set_pending_events() {
-      this->pending_events.store(true, std::memory_order_release);
-   }
-   bool pop_pending_events() {
-      bool x{true};
-      return this->pending_events.compare_exchange_strong(
-         x, false, std::memory_order_consume);
-   }
 
    std::vector<int> pending_end_draw;
-   void enqueue_flushdraw(int surface_id);
-   void check_flushdraw(int surface_id);
 
    explicit App(wl::display *d);
    ~App();
@@ -151,26 +135,35 @@ struct App {
    App &operator=(App &&) = delete;
 
    int init();
-   int init_layers();
 
    int dispatch_events();
    int dispatch_pending_events();
 
    void surface_set_layout_full(uint32_t surface_id);
    void surface_set_layout_split(uint32_t surface_id, uint32_t sub_surface_id);
+   void set_pending_events();
 
-   // Allocate a surface ID for this role
    result<int> api_request_surface(char const *drawing_name);
-
-   // Activate (i.e. make visible, if allowed!) a surface
    char const *api_activate_surface(char const *drawing_name);
    char const *api_deactivate_surface(char const *drawing_name);
    char const *api_enddraw(char const *drawing_name);
+   void api_ping();
 
    // Events from the compositor we are interested in
    void surface_created(uint32_t surface_id);
    void surface_removed(uint32_t surface_id);
 
+private:
+   optional<int> lookup_id(char const *name);
+   optional<std::string> lookup_name(int id);
+
+   bool pop_pending_events();
+
+   void enqueue_flushdraw(int surface_id);
+   void check_flushdraw(int surface_id);
+
+   int init_layers();
+
    // TMC WM Events to clients
    void emit_activated(char const *label);
    void emit_deactivated(char const *label);