add tdm_layer_get_output
[platform/core/uifw/libtdm.git] / include / tdm.h
index 7be0a14..70c99af 100644 (file)
@@ -200,7 +200,7 @@ tdm_display_get_capture_capabilities(tdm_display *dpy,
  * @return #TDM_ERROR_NONE if success. Otherwise, error value.
  */
 tdm_error
-tdm_display_get_catpure_available_formats(tdm_display *dpy,
+tdm_display_get_capture_available_formats(tdm_display *dpy,
                                                                                  const tbm_format **formats, int *count);
 
 /**
@@ -635,6 +635,28 @@ tdm_error
 tdm_output_hwc_set_client_target_buffer(tdm_output *output, tbm_surface_h target_buffer, tdm_hwc_region damage);
 
 /**
+ * @brief Unset the client(relative to the TDM) target buffer
+ * @details TODO
+ * @param[in] output A output object
+ * @return #TDM_ERROR_NONE if success. Otherwise, error value.
+ * @since 2.0.0
+ */
+tdm_error
+tdm_output_hwc_unset_client_target_buffer(tdm_output *output);
+
+/**
+ * @brief Commit changes for a target_window
+ * @details After all change of a window object are applied, a user commit handler
+ * will be called.
+ * @param[in] hwc_window A window object
+ * @param[in] func A user commit handler
+ * @param[in] user_data The user data
+ * @return #TDM_ERROR_NONE if success. Otherwise, error value.
+ */
+tdm_error
+tdm_output_hwc_commit_client_target_buffer(tdm_output *output, tdm_output_hwc_target_buffer_commit_handler func, void *user_data);
+
+/**
  * @brief Validate the output
  * @details Instructs the device to inspect all of the layer state and
  * determine if there are any composition type changes necessary before
@@ -743,6 +765,14 @@ tdm_output_hwc_get_video_supported_formats(tdm_layer *layer, const tbm_format **
                                                                int *count);
 
 /**
+ * @brief Get a output object of a layer object
+ * @param[in] layer A layer object
+ * @return A TDM output object if success. Otherwise, NULL.
+ */
+tdm_output*
+tdm_layer_get_output(tdm_layer *layer, tdm_error *error);
+
+/**
  * @brief Get the capabilities of a layer object.
  * @param[in] layer A layer object
  * @param[out] capabilities The capabilities of a layer object
@@ -1073,6 +1103,18 @@ tdm_error
 tdm_hwc_window_unset_flags(tdm_hwc_window *hwc_window, tdm_hwc_window_flag flags);
 
 /**
+ * @brief Commit changes for a window object
+ * @details After all change of a window object are applied, a user commit handler
+ * will be called.
+ * @param[in] hwc_window A window object
+ * @param[in] func A user commit handler
+ * @param[in] user_data The user data
+ * @return #TDM_ERROR_NONE if success. Otherwise, error value.
+ */
+tdm_error
+tdm_hwc_window_commit(tdm_hwc_window *hwc_window, tdm_hwc_window_commit_handler func, void *user_data);
+
+/**
  * @brief Get the available property array  of a video hwc window object.
  * @param[in] hwc window A video hwc window object
  * @param[out] props The available property array