ecore-drm2: Add API function to set plane destination
authorChris Michael <cp.michael@samsung.com>
Mon, 27 Mar 2017 17:30:56 +0000 (13:30 -0400)
committerChris Michael <cp.michael@samsung.com>
Tue, 18 Apr 2017 11:55:10 +0000 (07:55 -0400)
When we do an atomic commit, we need to know where to place a given
plane (in the case of overlays) in relation to the CRTC, so provide an
API function that can be used for that purpose.

@feature

Signed-off-by: Chris Michael <cp.michael@samsung.com>
src/lib/ecore_drm2/Ecore_Drm2.h
src/lib/ecore_drm2/ecore_drm2_plane.c

index 62eebc1..6f1296d 100644 (file)
@@ -1008,6 +1008,20 @@ EAPI Ecore_Drm2_Fb *ecore_drm2_fb_dmabuf_import(int fd, int width, int height, i
  */
 EAPI Ecore_Drm2_Plane *ecore_drm2_plane_assign(Ecore_Drm2_Output *output, Ecore_Drm2_Fb *fb);
 
+/**
+ * Set plane destination values
+ *
+ * @param plane
+ * @param x
+ * @param y
+ * @param w
+ * @param h
+ *
+ * @ingroup Ecore_Drm2_Plane_Group
+ * @since 1.20
+ */
+EAPI void ecore_drm2_plane_destination_set(Ecore_Drm2_Plane *plane, int x, int y, int w, int h);
+
 # endif
 
 #endif
index ef7d813..d22bda7 100644 (file)
@@ -111,3 +111,14 @@ out:
    return NULL;
 #endif
 }
+
+EAPI void
+ecore_drm2_plane_destination_set(Ecore_Drm2_Plane *plane, int x, int y, int w, int h)
+{
+   EINA_SAFETY_ON_NULL_RETURN(plane);
+
+   plane->state->cx.value = x;
+   plane->state->cy.value = y;
+   plane->state->cw.value = w;
+   plane->state->ch.value = h;
+}