From: Seunghun Lee Date: Wed, 27 Jun 2018 10:23:33 +0000 (+0900) Subject: tdm_client: Introduce header of tdm_virtual_output. X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Flibtdm.git;a=commitdiff_plain;h=9ee614f0bb439952510a6b58b119f0da04772b04 tdm_client: Introduce header of tdm_virtual_output. Change-Id: I6365c41f02a015f31f9e19f8c3379a902181df55 --- diff --git a/client/tdm_client.h b/client/tdm_client.h index a13bf2a..4ffe435 100644 --- a/client/tdm_client.h +++ b/client/tdm_client.h @@ -429,6 +429,43 @@ tdm_client_vblank_wait_seq(tdm_client_vblank *vblank, unsigned int sequence, tdm unsigned int tdm_client_vblank_is_waiting(tdm_client_vblank *vblank); +/* Virtual Output */ +#include + +tdm_client_voutput * +tdm_client_create_voutput(tdm_client *client, const char *name, tdm_error *error); + +void +tdm_client_voutput_destroy(tdm_client_voutput *voutput); + +tdm_error +tdm_client_voutput_set_available_modes(tdm_client_voutput *voutput, const tdm_client_output_mode *modes, int count); + +tdm_error +tdm_client_voutput_set_physical_size(tdm_client_voutput *voutput, int mmWidth, int mmHeight); + +tdm_error +tdm_client_voutput_add_commit_handler(tdm_client_voutput *voutput, tdm_client_voutput_commit_handler *func); + +tdm_error +tdm_client_voutput_get_committed_tbm_surface(tdm_client_voutput *voutput, tbm_surface_h surface); + +tdm_client_output * +tdm_client_voutput_get_client_output(tdm_client_voutput *voutput, tdm_error *error); + +tdm_error +tdm_client_output_get_available_modes(tdm_client_output *output, tdm_client_output_mode **modes, int *count); + +tdm_error +tdm_client_output_set_mode(tdm_client_output *output, const tdm_client_output_mode *mode); + +tdm_error +tdm_client_output_connect(tdm_client_output *output); + +tdm_error +tdm_client_output_disconnect(tdm_client_output *output); +/* End of Virtual Output */ + #ifdef __cplusplus } #endif diff --git a/client/tdm_client_types.h b/client/tdm_client_types.h index bd7e8a5..cb4e96d 100644 --- a/client/tdm_client_types.h +++ b/client/tdm_client_types.h @@ -109,6 +109,21 @@ typedef void unsigned int tv_usec, void *user_data); +/* Virtual Output */ +typedef struct _tdm_client_output_mode { + char name[TDM_NAME_LEN]; /**< The output name */ + unsigned int mode_count; /**< The count of available modes */ + unsigned int prop_count; /**< The count of available properties */ + unsigned int mmWidth; /**< The physical width (milimeter) */ + unsigned int mmHeight; /**< The physical height (milimeter) */ + unsigned int subpixel; /**< The subpixel */ +} tdm_client_output_mode; + +typedef void tdm_client_voutput; + +typedef void (*tdm_client_voutput_commit_handler)(tdm_client_voutput *voutput, + void *user_data); +/* End of Virtual Output */ #ifdef __cplusplus } #endif