tdm_private_output *
tdm_display_find_private_output(tdm_private_display *private_display, tdm_output *output_backend);
+void *
+tdm_display_find_hwc_stamp(tdm_private_display *private_display, double stamp);
+tdm_private_hwc *
+tdm_display_find_private_hwc(tdm_private_display *private_display, tdm_hwc *hwc_backend);
+
tdm_error
tdm_output_init(tdm_private_display *private_display);
void
tdm_output_cb_dpms(tdm_output *output_backend, tdm_output_dpms dpms,
void *user_data);
-tdm_error
-tdm_output_cb_need_validate(tdm_private_output *private_output);
void
tdm_output_vblank_print_wait_information(tdm_private_output *private_output, void *user_data);
tdm_output_get_dpms_internal(tdm_output *output, tdm_output_dpms *dpms_value);
tdm_error
-tdm_output_need_validate_event_init(tdm_output *output);
-void
-tdm_output_need_validate_handler_thread(tdm_private_display *private_display, void *object, tdm_thread_cb_base *cb_base, void *user_data);
-tdm_error
tdm_output_choose_commit_per_vblank_mode(tdm_private_output *private_output, int mode);
void
void
tdm_pp_destroy_internal(tdm_private_pp *private_pp);
-tdm_hwc_window *
-tdm_hwc_window_create_internal(tdm_private_output *private_output, int is_video, tdm_error *error);
tdm_error
+tdm_hwc_init(tdm_private_display *private_display);
+tdm_hwc_window *
+tdm_hwc_window_create_internal(tdm_private_hwc *private_hwc, tdm_error *error);
+void
tdm_hwc_window_destroy_internal(tdm_private_hwc_window * private_hwc_window);
tdm_error