diff options
author | Marcus Fritzsch <marcus_fritzsch@mentor.com> | 2017-06-08 15:00:55 +0200 |
---|---|---|
committer | Marcus Fritzsch <marcus_fritzsch@mentor.com> | 2017-08-08 17:24:00 +0200 |
commit | 90e562cd013333084f455257edaf43c0b2258e28 (patch) | |
tree | 5672960243f1d62821bea506a29774bb84d47d21 /src/wayland.cpp | |
parent | db95653246560c24ad3c8cb224b3d9321b50af0a (diff) |
hooked up genivi::surface and layer
Signed-off-by: Marcus Fritzsch <marcus_fritzsch@mentor.com>
Diffstat (limited to 'src/wayland.cpp')
-rw-r--r-- | src/wayland.cpp | 215 |
1 files changed, 213 insertions, 2 deletions
diff --git a/src/wayland.cpp b/src/wayland.cpp index c88b5c6..f8db0a6 100644 --- a/src/wayland.cpp +++ b/src/wayland.cpp @@ -19,6 +19,10 @@ display::display() wl_display_connect(NULL), wl_display_disconnect)), r(std::make_unique<registry>(d.get())) {} +bool display::ok() const { + return d.get() != nullptr && wl_display_get_error(d.get()) == 0; +} + void display::roundtrip() { wl_display_roundtrip(this->d.get()); } // _ _ @@ -45,8 +49,8 @@ void registry::event_global(uint32_t name, char const *iface, uint32_t v) { if (b != this->bindings.end()) b->second(this->proxy, name, v); else - logdebug("registry @ %p global n %u i %s v %u", this->proxy, name, iface, - v); + logdebug("wl::registry @ %p global n %u i %s v %u", this->proxy, name, + iface, v); } void registry::event_global_remove(uint32_t name) {} @@ -210,6 +214,90 @@ layer::~layer() { this->proxy = nullptr; } +void layer::event_visibility(int32_t visibility) { + logdebug("genivi::layer %s @ %p v %i", __func__, this->proxy, visibility); +} + +void layer::event_opacity(wl_fixed_t opacity) { + logdebug("genivi::layer %s @ %p o %i", __func__, this->proxy, opacity); +} + +void layer::event_source_rectangle(int32_t x, int32_t y, int32_t width, + int32_t height) { + logdebug("genivi::layer %s @ %p x %i y %i w %i h %i", __func__, this->proxy, + x, y, width, height); +} + +void layer::event_destination_rectangle(int32_t x, int32_t y, int32_t width, + int32_t height) { + logdebug("genivi::layer %s @ %p x %i y %i w %i h %i", __func__, this->proxy, + x, y, width, height); +} + +void layer::event_configuration(int32_t width, int32_t height) { + logdebug("genivi::layer %s @ %p w %i h %i", __func__, this->proxy, width, + height); +} + +void layer::event_orientation(int32_t orientation) { + logdebug("genivi::layer %s @ %p o %i", __func__, this->proxy, orientation); +} + +void layer::event_screen(struct wl_output *screen) { + logdebug("genivi::layer %s @ %p s %p", __func__, this->proxy, screen); +} + +void layer::event_destroyed() { + logdebug("genivi::layer %s @ %p", __func__, this->proxy); +} + +void layer::s_visibility(void *data, + struct ivi_controller_layer *ivi_controller_layer, + int32_t visibility) { + static_cast<layer *>(data)->event_visibility(visibility); +} + +void layer::s_opacity(void *data, + struct ivi_controller_layer *ivi_controller_layer, + wl_fixed_t opacity) { + static_cast<layer *>(data)->event_opacity(opacity); +} + +void layer::s_source_rectangle( + void *data, struct ivi_controller_layer *ivi_controller_layer, int32_t x, + int32_t y, int32_t width, int32_t height) { + static_cast<layer *>(data)->event_source_rectangle(x, y, width, height); +} + +void layer::s_destination_rectangle( + void *data, struct ivi_controller_layer *ivi_controller_layer, int32_t x, + int32_t y, int32_t width, int32_t height) { + static_cast<layer *>(data)->event_destination_rectangle(x, y, width, height); +} + +void layer::s_configuration(void *data, + struct ivi_controller_layer *ivi_controller_layer, + int32_t width, int32_t height) { + static_cast<layer *>(data)->event_configuration(width, height); +} + +void layer::s_orientation(void *data, + struct ivi_controller_layer *ivi_controller_layer, + int32_t orientation) { + static_cast<layer *>(data)->event_orientation(orientation); +} + +void layer::s_screen(void *data, + struct ivi_controller_layer *ivi_controller_layer, + struct wl_output *screen) { + static_cast<layer *>(data)->event_screen(screen); +} + +void layer::s_destroyed(void *data, + struct ivi_controller_layer *ivi_controller_layer) { + static_cast<layer *>(data)->event_destroyed(); +} + constexpr ivi_controller_layer_listener layer::listener; // __ @@ -229,6 +317,129 @@ surface::~surface() { this->proxy = nullptr; } +void surface::event_visibility(int32_t visibility) { + logdebug("genivi::surface %s @ %p v %i", __func__, this->proxy, visibility); +} + +void surface::event_opacity(wl_fixed_t opacity) { + logdebug("genivi::surface %s @ %p o %i", __func__, this->proxy, opacity); +} + +void surface::event_source_rectangle(int32_t x, int32_t y, int32_t width, + int32_t height) { + logdebug("genivi::surface %s @ %p x %i y %i w %i h %i", __func__, + this->proxy, x, y, width, height); +} + +void surface::event_destination_rectangle(int32_t x, int32_t y, int32_t width, + int32_t height) { + logdebug("genivi::surface %s @ %p x %i y %i w %i h %i", __func__, + this->proxy, x, y, width, height); +} + +void surface::event_configuration(int32_t width, int32_t height) { + logdebug("genivi::surface %s @ %p w %i h %i", __func__, this->proxy, width, + height); +} + +void surface::event_orientation(int32_t orientation) { + logdebug("genivi::surface %s @ %p o %i", __func__, this->proxy, orientation); +} + +void surface::event_pixelformat(int32_t pixelformat) { + logdebug("genivi::surface %s @ %p f %i", __func__, this->proxy, pixelformat); +} + +void surface::event_layer(struct ivi_controller_layer *layer) { + logdebug("genivi::surface %s @ %p l @ %p", __func__, this->proxy, layer); +} + +void surface::event_stats(uint32_t redraw_count, uint32_t frame_count, + uint32_t update_count, uint32_t pid, + const char *process_name) { + logdebug("genivi::surface %s @ %p r %u f %u u %u pid %u p %s", __func__, + this->proxy, redraw_count, frame_count, update_count, pid, + process_name); +} + +void surface::event_destroyed() { + logdebug("genivi::surface %s @ %p", __func__, this->proxy); +} + +void surface::event_content(int32_t content_state) { + logdebug("genivi::surface %s @ %p s %i", __func__, this->proxy, + content_state); +} + +void surface::s_visibility( + void *data, struct ivi_controller_surface *ivi_controller_surface, + int32_t visibility) { + static_cast<surface *>(data)->event_visibility(visibility); +} + +void surface::s_opacity(void *data, + struct ivi_controller_surface *ivi_controller_surface, + wl_fixed_t opacity) { + static_cast<surface *>(data)->event_opacity(opacity); +} + +void surface::s_source_rectangle( + void *data, struct ivi_controller_surface *ivi_controller_surface, int32_t x, + int32_t y, int32_t width, int32_t height) { + static_cast<surface *>(data)->event_source_rectangle(x, y, width, height); +} + +void surface::s_destination_rectangle( + void *data, struct ivi_controller_surface *ivi_controller_surface, int32_t x, + int32_t y, int32_t width, int32_t height) { + static_cast<surface *>(data)->event_destination_rectangle(x, y, width, + height); +} + +void surface::s_configuration( + void *data, struct ivi_controller_surface *ivi_controller_surface, + int32_t width, int32_t height) { + static_cast<surface *>(data)->event_configuration(width, height); +} + +void surface::s_orientation( + void *data, struct ivi_controller_surface *ivi_controller_surface, + int32_t orientation) { + static_cast<surface *>(data)->event_orientation(orientation); +} + +void surface::s_pixelformat( + void *data, struct ivi_controller_surface *ivi_controller_surface, + int32_t pixelformat) { + static_cast<surface *>(data)->event_pixelformat(pixelformat); +} + +void surface::s_layer(void *data, + struct ivi_controller_surface *ivi_controller_surface, + struct ivi_controller_layer *layer) { + static_cast<surface *>(data)->event_layer(layer); +} + +void surface::s_stats(void *data, + struct ivi_controller_surface *ivi_controller_surface, + uint32_t redraw_count, uint32_t frame_count, + uint32_t update_count, uint32_t pid, + const char *process_name) { + static_cast<surface *>(data)->event_stats(redraw_count, frame_count, + update_count, pid, process_name); +} + +void surface::s_destroyed( + void *data, struct ivi_controller_surface *ivi_controller_surface) { + static_cast<surface *>(data)->event_destroyed(); +} + +void surface::s_content(void *data, + struct ivi_controller_surface *ivi_controller_surface, + int32_t content_state) { + static_cast<surface *>(data)->event_content(content_state); +} + constexpr ivi_controller_surface_listener surface::listener; // |