tdm_display_handle_events(tdm_display *dpy);
/**
+ * @brief Flush the all events to clients
+ * @param[in] dpy A display object
+ */
+void
+tdm_display_flush(tdm_display *dpy);
+
+/**
* @brief Get the capabilities of a display object.
* @details A frontend user can get whether TDM supports pp/capture functionality with this function.
* @param[in] dpy A display object
tdm_display_get_output(tdm_display *dpy, int index, tdm_error *error);
/**
+ * @brief Find a output object which has the given name.
+ * @param[in] dpy A display object
+ * @param[in] name The name of a output object
+ * @param[out] error #TDM_ERROR_NONE if success. Otherwise, error value.
+ * @return A output object if success. Otherwise, NULL.
+ */
+tdm_output *
+tdm_display_find_output(tdm_display *dpy, const char *name, tdm_error *error);
+
+/**
* @brief Create a pp object.
* @param[in] dpy A display object
* @param[out] error #TDM_ERROR_NONE if success. Otherwise, error value.
/**
* @brief Get the information of the TDM backend module.
- * @param[in] backend A backend object
+ * @param[in] module A backend module object
* @param[out] name The name of the TDM backend module
* @param[out] vendor The vendor of the TDM backend module
* @param[out] version The version of the TDM backend module
* @return #TDM_ERROR_NONE if success. Otherwise, error value.
*/
tdm_error
-tdm_backend_get_info(tdm_backend *backend, const char **name,
- const char **vendor, int *major, int *minor);
+tdm_module_get_info(tdm_module *module, const char **name,
+ const char **vendor, int *major, int *minor);
/**
- * @brief Get a backend object of the given output.
+ * @brief Get a backend module object of the given output.
* @param[in] output A output object
* @param[out] error #TDM_ERROR_NONE if success. Otherwise, error value.
* @return A backend object if success. Otherwise, NULL.
*/
-tdm_backend *
-tdm_output_get_backend(tdm_output *output, tdm_error *error);
+tdm_module *
+tdm_output_get_backend_module(tdm_output *output, tdm_error *error);
/**
* @brief Get the capabilities of a output object.
tdm_output_get_dpms(tdm_output *output, tdm_output_dpms *dpms_value);
/**
+ * @brief Check if a output object has the capture capability
+ * @param[in] output A output object
+ * @param[out] has_capability 1: has the capability, 0: not has the capability
+ * @return #TDM_ERROR_NONE if success. Otherwise, error value.
+ */
+tdm_error
+tdm_output_has_capture_capability(tdm_output *output, unsigned int *has_capability);
+
+/**
* @brief Create a capture object of a output object
* @param[in] output A output object
* @param[out] error #TDM_ERROR_NONE if success. Otherwise, error value.
tdm_layer_get_output(tdm_layer *layer, tdm_error *error);
/**
+ * @brief Get the index of a layer object.
+ * @param[in] layer A layer object
+ * @param[out] index The index of a layer object
+ * @return #TDM_ERROR_NONE if success. Otherwise, error value.
+ */
+tdm_error
+tdm_layer_get_index(tdm_layer *layer, int *index);
+
+/**
* @brief Get the capabilities of a layer object.
* @param[in] layer A layer object
* @param[out] capabilities The capabilities of a layer object