/**
* @mainpage TDM
* @author Boram Park, boram1288.park@samsung.com
- * @date Dec 30, 2015
- * @version 1.0.0
+ * @date Mar 17, 2016
+ * @version 1.1.0
* @par Introduction
* TDM stands for Tizen Display Manager. It's the display HAL layer for tizen
* display server. It offers the frontend APIs(@ref tdm.h) for a frontend user
* A backend module @b SHOULD define the global data symbol of which name is
* @b "tdm_backend_module_data". TDM will read this symbol, @b "tdm_backend_module_data",
* at the initial time and call init() function of #tdm_backend_module.
- * A backend module at least @b SHOULD register the #tdm_func_display functions
- * to a display object with #tdm_backend_register_func_display() function in initial time.\n
+ * A backend module at least @b SHOULD register the #tdm_func_display,
+ * #tdm_func_output, #tdm_func_layer functions to a display object via
+ * #tdm_backend_register_func_display(), #tdm_backend_register_func_output(),
+ * #tdm_backend_register_func_layer() functions in initial time.\n
* @code
#include <tdm_backend.h>
- static tdm_func_display drm_func_display =
- {
+ static tdm_func_display drm_func_display = {
drm_display_get_capabilitiy,
...
- drm_display_get_outputs,
- ...
+ };
+
+ static tdm_func_output drm_func_output = {
drm_output_get_capability,
- drm_output_get_layers,
...
+ };
+
+ static tdm_func_layer drm_func_layer = {
drm_layer_get_capability,
...
};
ret = tdm_backend_register_func_display(dpy, &drm_func_display);
if (ret != TDM_ERROR_NONE)
goto failed;
+ ret = tdm_backend_register_func_output(dpy, &drm_func_output);
+ if (ret != TDM_ERROR_NONE)
+ goto failed;
+ ret = tdm_backend_register_func_layer(dpy, &drm_func_layer);
+ if (ret != TDM_ERROR_NONE)
+ goto failed;
...
return (tdm_backend_data*)drm_data;
}
/**
* @brief The capabilities structure of a output object
- * @see The output_get_capability() function of #tdm_func_display
+ * @see The output_get_capability() function of #tdm_func_output
*/
typedef struct _tdm_caps_output {
char maker[TDM_NAME_LEN]; /**< The output maker */
/**
* @brief The capabilities structure of a layer object
- * @see The layer_get_capability() function of #tdm_func_display
+ * @see The layer_get_capability() function of #tdm_func_layer
*/
typedef struct _tdm_caps_layer {
tdm_layer_capability capabilities; /**< The capabilities of layer */
* GRAPHIC layers are non-changeable. The zpos of GRAPHIC layers starts
* from 0. If there are 4 GRAPHIC layers, The zpos SHOULD be 0, 1, 2, 3.\n
* But the zpos of VIDEO layer is changeable by layer_set_video_pos() function
- * of #tdm_func_display. And The zpos of VIDEO layers is less than GRAPHIC
+ * of #tdm_func_layer. And The zpos of VIDEO layers is less than GRAPHIC
* layers or more than GRAPHIC layers.
* ie, ..., -2, -1, 4, 5, ... (if 0 <= GRAPHIC layer's zpos < 4).
* The zpos of VIDEO layers is @b relative. It doesn't need to start
* @param[in] layer A layer object
* @param[in] info The geometry information
* @return #TDM_ERROR_NONE if success. Otherwise, error value.
- * @see output_commit() function of #tdm_func_display
+ * @see output_commit() function of #tdm_func_output
* @remark
* A backend module would apply the geometry information when the output object
* of a layer object is committed.
* @param[in] layer A layer object
* @param[in] buffer A TDM buffer
* @return #TDM_ERROR_NONE if success. Otherwise, error value.
- * @see output_commit() function of #tdm_func_display
+ * @see output_commit() function of #tdm_func_output
* @remark
* A backend module would apply a TDM buffer when the output object
* of a layer object is committed.
/**
* @brief Destroy a capture object
* @param[in] capture A capture object
- * @see output_create_capture() function of #tdm_func_display
- * @see layer_create_capture() function of #tdm_func_display
+ * @see output_create_capture() function of #tdm_func_output
+ * @see layer_create_capture() function of #tdm_func_layer
*/
void (*capture_destroy)(tdm_capture *capture);