+void surface::send_stats() {
+ ivi_controller_surface_send_stats(this->proxy.get());
+}
+
+void surface::destroy(int32_t destroy_scene_object) {
+ ivi_controller_surface_destroy(this->proxy.get(), destroy_scene_object);
+}
+
+void controller::surface_visibility(struct surface *s, int32_t visibility) {
+ logdebug("genivi::surface %s @ %p v %i", __func__, this->proxy.get(),
+ visibility);
+ this->sprops[s->id].visibility = visibility;
+}
+
+void controller::surface_opacity(struct surface *s, float opacity) {
+ logdebug("genivi::surface %s @ %p o %f", __func__, this->proxy.get(),
+ opacity);
+ this->sprops[s->id].opacity = opacity;
+}
+
+void controller::surface_source_rectangle(struct surface *s, 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.get(), x, y, width, height);
+ this->sprops[s->id].src_rect = rect{width, height, x, y};
+}
+
+void controller::surface_destination_rectangle(struct surface *s, 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.get(), x, y, width, height);
+ this->sprops[s->id].dst_rect = rect{width, height, x, y};
+}
+
+void controller::surface_configuration(struct surface *s, int32_t width,
+ int32_t height) {
+ logdebug("genivi::surface %s @ %p w %i h %i", __func__, this->proxy.get(),
+ width, height);
+ this->sprops[s->id].size = size{uint32_t(width), uint32_t(height)};
+}
+
+void controller::surface_orientation(struct surface *s, int32_t orientation) {
+ logdebug("genivi::surface %s @ %p o %i", __func__, this->proxy.get(),
+ orientation);
+ this->sprops[s->id].orientation = orientation;
+}
+
+void controller::surface_pixelformat(struct surface * /*s*/,
+ int32_t pixelformat) {
+ logdebug("genivi::surface %s @ %p f %i", __func__, this->proxy.get(),
+ pixelformat);