devilhorns pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=ccf064f5ae663245f2c07113ca325b2095998a5a

commit ccf064f5ae663245f2c07113ca325b2095998a5a
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Tue Feb 20 10:33:51 2018 -0500

    ecore-drm2: Add API function to retrieve output user data
    
    With the rework of Ecore_Evas drm engine, we need to get the
    ecore_evas itself in the pageflip callback so we have to reassign
    output->user_data to the ecore_evas which we can then use to retrieve
    via this function
    
    This is needed as the pageflip callback will pass us the output on
    which the pageflip completed.
    
    @feature
    
    Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/lib/ecore_drm2/Ecore_Drm2.h         | 12 ++++++++++++
 src/lib/ecore_drm2/ecore_drm2_outputs.c |  7 +++++++
 2 files changed, 19 insertions(+)

diff --git a/src/lib/ecore_drm2/Ecore_Drm2.h b/src/lib/ecore_drm2/Ecore_Drm2.h
index 8b987b920f..fb1884be2d 100644
--- a/src/lib/ecore_drm2/Ecore_Drm2.h
+++ b/src/lib/ecore_drm2/Ecore_Drm2.h
@@ -793,6 +793,18 @@ EAPI Eina_Bool 
ecore_drm2_output_rotation_set(Ecore_Drm2_Output *output, int rot
 EAPI void ecore_drm2_output_user_data_set(Ecore_Drm2_Output *o, void *data);
 
 /**
+ * Get the user data for a given output
+ *
+ * @param output The output to get user data for
+ *
+ * @return The user data associated with given output
+ *
+ * @ingroup Ecore_Drm2_Output_Group
+ * @since 1.21
+ */
+EAPI void *ecore_drm2_output_user_data_get(Ecore_Drm2_Output *output);
+
+/**
  * Get the subpixel state of the output
  * @param output the output
  * @return The state value
diff --git a/src/lib/ecore_drm2/ecore_drm2_outputs.c 
b/src/lib/ecore_drm2/ecore_drm2_outputs.c
index a27826ee1e..e39f26a6da 100644
--- a/src/lib/ecore_drm2/ecore_drm2_outputs.c
+++ b/src/lib/ecore_drm2/ecore_drm2_outputs.c
@@ -1456,6 +1456,13 @@ ecore_drm2_output_user_data_set(Ecore_Drm2_Output *o, 
void *data)
    o->user_data = data;
 }
 
+EAPI void *
+ecore_drm2_output_user_data_get(Ecore_Drm2_Output *output)
+{
+   EINA_SAFETY_ON_NULL_RETURN_VAL(output, NULL);
+   return output->user_data;
+}
+
 EAPI void
 ecore_drm2_output_gamma_set(Ecore_Drm2_Output *output, uint16_t size, uint16_t 
*red, uint16_t *green, uint16_t *blue)
 {

-- 


Reply via email to