+void controller::layer_opacity(struct layer *l, float opacity) {
+ logdebug("genivi::layer %s @ %d o %f", __func__, l->id, opacity);
+ this->lprops[l->id].opacity = opacity;
+}
+
+void controller::layer_source_rectangle(struct layer *l, int32_t x, int32_t y,
+ int32_t width, int32_t height) {
+ logdebug("genivi::layer %s @ %d x %i y %i w %i h %i", __func__,
+ l->id, x, y, width, height);
+ this->lprops[l->id].src_rect = rect{width, height, x, y};
+}
+
+void controller::layer_destination_rectangle(struct layer *l, int32_t x,
+ int32_t y, int32_t width,
+ int32_t height) {
+ logdebug("genivi::layer %s @ %d x %i y %i w %i h %i", __func__,
+ l->id, x, y, width, height);
+ this->lprops[l->id].dst_rect = rect{width, height, x, y};
+}
+
+void controller::layer_configuration(struct layer *l, int32_t width,
+ int32_t height) {
+ logdebug("genivi::layer %s @ %d w %i h %i", __func__, l->id,
+ width, height);
+ this->lprops[l->id].size = size{uint32_t(width), uint32_t(height)};
+}
+
+void controller::layer_orientation(struct layer *l, int32_t orientation) {
+ logdebug("genivi::layer %s @ %d o %i", __func__, l->id,
+ orientation);
+ this->lprops[l->id].orientation = orientation;
+}
+
+void controller::layer_screen(struct layer *l, struct wl_output *screen) {
+ logdebug("genivi::layer %s @ %d s %p", __func__, l->id, screen);
+}
+
+void controller::layer_destroyed(struct layer *l) {
+ logdebug("genivi::layer %s @ %d", __func__, l->id);
+ this->lprops.erase(l->id);
+ this->layers.erase(l->id);