ds_output: Add ds_output_set_custom_mode
[platform/core/uifw/libds-tizen.git] / include / libds / interfaces / output.h
index 6fb2909..53a4e0c 100644 (file)
@@ -23,6 +23,12 @@ enum ds_output_state_field
     DS_OUTPUT_STATE_TRANSFORM = 1 << 5,
 };
 
+enum ds_output_state_mode_type
+{
+    DS_OUTPUT_STATE_MODE_FIXED,
+    DS_OUTPUT_STATE_MODE_CUSTOM,
+};
+
 struct ds_output_interface
 {
     void (*destroy)(struct ds_output *output);
@@ -33,7 +39,13 @@ struct ds_output_state
 {
     enum ds_output_state_field committed;
     struct ds_buffer *buffer;
+
+    enum ds_output_state_mode_type mode_type;
     const struct ds_output_mode *mode;
+    struct {
+        int32_t width, height;
+        int32_t refresh; // mHz, may be zero
+    } custom_mode;
 
     bool enabled;
 };
@@ -49,6 +61,8 @@ struct ds_output
 
     struct ds_buffer *back_buffer, *front_buffer;
     const struct ds_output_mode *current_mode;
+    int32_t width, height;
+    int32_t refresh; // mHz, may be zero
     struct ds_output_state pending;
 
     struct wl_list modes;