wayland: moved screen inline methods to .cpp
[staging/windowmanager.git] / src / wayland.cpp
index 71dca0f..4678661 100644 (file)
@@ -732,4 +732,19 @@ screen::screen(uint32_t i, struct controller *c,
    : wayland_proxy(p), controller_child(c, i) {
    logdebug("genivi::screen @ %p id %u", p, i);
 }
+
+void screen::clear() { ivi_controller_screen_clear(this->proxy); }
+
+void screen::add_layer(layer *l) {
+   ivi_controller_screen_add_layer(this->proxy, l->proxy);
+}
+
+void screen::set_render_order(std::vector<uint32_t> const &ro) {
+   struct wl_array wlro {
+      .size = ro.size() * sizeof(ro[0]), .alloc = ro.capacity() * sizeof(ro[0]),
+      .data = const_cast<void *>(static_cast<void const *>(ro.data()))
+   };
+   ivi_controller_screen_set_render_order(this->proxy, &wlro);
+}
+
 }  // namespace genivi