| 
| 
static struct vk_bundle *  | get_vk (struct comp_target_swapchain *cts) | 
|   | 
| 
static void  | destroy_old (struct comp_target_swapchain *cts, VkSwapchainKHR old) | 
|   | 
| 
static void  | destroy_image_views (struct comp_target_swapchain *cts) | 
|   | 
| 
static void  | create_image_views (struct comp_target_swapchain *cts) | 
|   | 
| 
static VkExtent2D  | select_extent (struct comp_target_swapchain *cts, VkSurfaceCapabilitiesKHR caps, VkExtent2D preferred) | 
|   | 
| 
static uint32_t  | select_image_count (struct comp_target_swapchain *cts, VkSurfaceCapabilitiesKHR caps, uint32_t preferred_at_least_image_count) | 
|   | 
| 
static bool  | check_surface_present_mode (struct comp_target_swapchain *cts, const struct vk_surface_info *info, VkPresentModeKHR present_mode) | 
|   | 
| 
static bool  | pick_first_matching_surface_format (const struct comp_target_create_images_info *create_info, VkSurfaceFormatKHR *surface_formats, uint32_t surface_format_count, VkSurfaceFormatKHR *out_surface_format) | 
|   | 
| 
static bool  | find_surface_format (struct comp_target_swapchain *cts, const struct comp_target_create_images_info *create_info, const struct vk_surface_info *info, VkSurfaceFormatKHR *out_surface_format) | 
|   | 
| 
static void  | do_update_timings_google_display_timing (struct comp_target_swapchain *cts) | 
|   | 
| 
static void  | do_update_timings_vblank_thread (struct comp_target_swapchain *cts) | 
|   | 
| 
static void  | target_fini_semaphores (struct comp_target_swapchain *cts) | 
|   | 
| 
static void  | target_init_semaphores (struct comp_target_swapchain *cts) | 
|   | 
| 
static void  | comp_target_swapchain_create_images (struct comp_target *ct, const struct comp_target_create_images_info *create_info) | 
|   | 
| 
static bool  | comp_target_swapchain_has_images (struct comp_target *ct) | 
|   | 
| static VkResult  | comp_target_swapchain_acquire_next_image (struct comp_target *ct, uint32_t *out_index) | 
|   | 
| 
static VkResult  | comp_target_swapchain_present (struct comp_target *ct, VkQueue queue, uint32_t index, uint64_t timeline_semaphore_value, int64_t desired_present_time_ns, int64_t present_slop_ns) | 
|   | 
| 
static VkResult  | comp_target_swapchain_wait_for_present (struct comp_target *ct, time_duration_ns timeout_ns) | 
|   | 
| 
static bool  | comp_target_swapchain_check_ready (struct comp_target *ct) | 
|   | 
| 
static void  | comp_target_swapchain_calc_frame_pacing (struct comp_target *ct, int64_t *out_frame_id, int64_t *out_wake_up_time_ns, int64_t *out_desired_present_time_ns, int64_t *out_present_slop_ns, int64_t *out_predicted_display_time_ns) | 
|   | 
| 
static void  | comp_target_swapchain_mark_timing_point (struct comp_target *ct, enum comp_target_timing_point point, int64_t frame_id, int64_t when_ns) | 
|   | 
| 
static VkResult  | comp_target_swapchain_update_timings (struct comp_target *ct) | 
|   | 
| 
static void  | comp_target_swapchain_info_gpu (struct comp_target *ct, int64_t frame_id, int64_t gpu_start_ns, int64_t gpu_end_ns, int64_t when_ns) | 
|   | 
| 
void  | comp_target_swapchain_override_extents (struct comp_target_swapchain *cts, VkExtent2D extent) | 
|   | 
| 
void  | comp_target_swapchain_cleanup (struct comp_target_swapchain *cts) | 
|   | 
| 
void  | comp_target_swapchain_init_and_set_fnptrs (struct comp_target_swapchain *cts, enum comp_target_display_timing_usage timing_usage) | 
|   |