2 // Created by mfritzsc on 7/11/17.
5 #ifndef TMCAGLWM_APP_HPP
6 #define TMCAGLWM_APP_HPP
8 #include <json-c/json.h>
11 #include "afb_binding_api.hpp"
12 #include "controller_hooks.hpp"
16 #include "wayland.hpp"
30 struct binding_api api;
31 struct controller_hooks chooks;
33 // This is the one thing, we do not own.
34 struct wl::display *display;
36 std::unique_ptr<struct genivi::controller> controller;
37 std::vector<std::unique_ptr<struct wl::output>> outputs;
47 App(App const &) = delete;
48 App &operator=(App const &) = delete;
51 int dispatch_events();
54 void surface_created(uint32_t surface_id);
55 void surface_removed(uint32_t surface_id);
60 #endif // TMCAGLWM_APP_HPP