The open source OpenXR runtime

c/main: Fix doxygen warning

Co-authored-by: Jakob Bornecrantz <jakob@collabora.com>

authored by

Ryan Pavlik
Jakob Bornecrantz
and committed by
Jakob Bornecrantz
5b0f7cb5 a57c7a24

+34 -17
+34 -17
src/xrt/compositor/main/comp_target.h
··· 53 53 }; 54 54 55 55 /*! 56 + * Collection of semaphores needed for a target. 57 + * 58 + * @ingroup comp_main 59 + */ 60 + struct comp_target_semaphores 61 + { 62 + /*! 63 + * Optional semaphore the target should signal when present is complete. 64 + */ 65 + VkSemaphore present_complete; 66 + 67 + /*! 68 + * Semaphore the renderer (consuming this target) 69 + * should signal when rendering is complete. 70 + */ 71 + VkSemaphore render_complete; 72 + 73 + /*! 74 + * If true, @ref render_complete is a timeline 75 + * semaphore instead of a binary semaphore. 76 + */ 77 + bool render_complete_is_timeline; 78 + }; 79 + 80 + /*! 56 81 * @brief A compositor target: where the compositor renders to. 57 82 * 58 83 * A target is essentially a swapchain, but it is such a overloaded term so ··· 86 111 //! Transformation of the current surface, required for pre-rotation 87 112 VkSurfaceTransformFlagBitsKHR surface_transform; 88 113 89 - struct 90 - { 91 - //! Optional semaphore the target should signal when present is complete. 92 - VkSemaphore present_complete; 93 - 94 - //! Semaphore the renderer (consuming this target) should signal when rendering is complete. 95 - VkSemaphore render_complete; 96 - 97 - //! If true, @ref render_complete is a timeline semaphore instead of a binary semaphore 98 - bool render_complete_is_timeline; 99 - } semaphores; 114 + // Holds semaphore information. 115 + struct comp_target_semaphores semaphores; 100 116 101 117 /* 102 118 * ··· 140 156 /*! 141 157 * Has this target successfully had images created? 142 158 * 143 - * Call before calling @ref acquire - if false but @ref check_ready is true, you'll need to call @ref 144 - * create_images 159 + * Call before calling @ref acquire - if false but @ref check_ready is 160 + * true, you'll need to call @ref create_images. 145 161 */ 146 162 bool (*has_images)(struct comp_target *ct); 147 163 148 164 /*! 149 165 * Acquire the next image for rendering. 150 166 * 151 - * If @ref semaphores::present_complete is not null, your use of this image should wait on it. 167 + * If @ref comp_target_semaphores::present_complete is not null, 168 + * your use of this image should wait on it.. 152 169 * 153 - * @pre @ref has_images returns true 170 + * @pre @ref has_images() returns true 154 171 */ 155 172 VkResult (*acquire)(struct comp_target *ct, uint32_t *out_index); 156 173 ··· 162 179 * @param ct self 163 180 * @param queue The Vulkan queue being used 164 181 * @param index The swapchain image index to present 165 - * @param timeline_semaphore_value The value to await on @ref semaphores::render_complete if @ref 166 - * semaphores::render_complete_is_timeline is true. 182 + * @param timeline_semaphore_value The value to await on @ref comp_target_semaphores::render_complete 183 + * if @ref comp_target_semaphores::render_complete_is_timeline is true. 167 184 * @param desired_present_time_ns The timestamp to present at, ideally. 168 185 * @param present_slop_ns TODO 169 186 */