aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Michael <cpmichael@osg.samsung.com>2016-01-20 10:46:40 -0500
committerChris Michael <cpmichael@osg.samsung.com>2016-02-04 09:35:51 -0500
commit94082f54e8ce7d47402ea5d8d57e3871f8fa98a4 (patch)
tree5c24e20924f812d527303cd4a258b723469732fd
parentecore-drm: Add internal function to create planes for an output (diff)
downloadefl-94082f54e8ce7d47402ea5d8d57e3871f8fa98a4.tar.gz
ecore-drm: Add opaque type for Plane support
This adds an opaque structure to represent a hardware plane for use in rotation, setting cursor/overlay/primary plane content, etc Signed-off-by: Chris Michael <cpmichael@osg.samsung.com> ecore-drm: Add API functions for rotation support This adds 2 new API functions for getting supported rotations from an output, and for setting rotation on an output. @feature Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
-rw-r--r--src/lib/ecore_drm/Ecore_Drm.h14
1 files changed, 12 insertions, 2 deletions
diff --git a/src/lib/ecore_drm/Ecore_Drm.h b/src/lib/ecore_drm/Ecore_Drm.h
index 0366899232..249fc1711d 100644
--- a/src/lib/ecore_drm/Ecore_Drm.h
+++ b/src/lib/ecore_drm/Ecore_Drm.h
@@ -69,6 +69,13 @@ typedef enum _Ecore_Drm_Seat_Capabilities
EVDEV_SEAT_TOUCH = (1 << 2),
} Ecore_Drm_Seat_Capabilities;
+typedef enum _Ecore_Drm_Plane_Type
+{
+ ECORE_DRM_PLANE_TYPE_OVERLAY,
+ ECORE_DRM_PLANE_TYPE_PRIMARY,
+ ECORE_DRM_PLANE_TYPE_CURSOR
+} Ecore_Drm_Plane_Type;
+
/* structure for fb objects */
typedef struct _Ecore_Drm_Fb
{
@@ -208,6 +215,10 @@ typedef struct _Ecore_Drm_Event_Output Ecore_Drm_Event_Output;
/** @since 1.14 */
typedef void (*Ecore_Drm_Pageflip_Cb)(void *data);
+/* opaque structure to represent a drm hardware plane */
+/** @since 1.18 */
+typedef struct _Ecore_Drm_Plane Ecore_Drm_Plane;
+
EAPI extern int ECORE_DRM_EVENT_ACTIVATE;
EAPI extern int ECORE_DRM_EVENT_OUTPUT; /**< @since 1.14 */
@@ -1002,11 +1013,10 @@ EAPI Eina_Bool ecore_drm_output_possible_crtc_get(Ecore_Drm_Output *output, unsi
*/
EAPI Eina_Bool ecore_drm_output_mode_set(Ecore_Drm_Output *output, Ecore_Drm_Output_Mode *mode, int x, int y);
-/* TODO: doxy */
+/* TODO: Doxy */
/* @since 1.18 */
EAPI unsigned int ecore_drm_output_supported_rotations_get(Ecore_Drm_Output *output, Ecore_Drm_Plane_Type type);
-/* TODO: doxy */
/* @since 1.18 */
EAPI Eina_Bool ecore_drm_output_rotation_set(Ecore_Drm_Output *output, Ecore_Drm_Plane_Type type, unsigned int rotation);