The open source OpenXR runtime
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

u/debug_gui: Add some tracing

+26
+26
src/xrt/auxiliary/util/u_debug_gui.c
··· 45 45 #include "util/u_file.h" 46 46 #include "util/u_debug.h" 47 47 #include "util/u_debug_gui.h" 48 + #include "util/u_trace_marker.h" 48 49 49 50 #include "ogl/ogl_api.h" 50 51 ··· 94 95 static void 95 96 sdl2_window_init(struct u_debug_gui *p) 96 97 { 98 + XRT_TRACE_MARKER(); 99 + 97 100 const char *title = "Monado! ✨⚡🔥"; 98 101 int x = SDL_WINDOWPOS_UNDEFINED; 99 102 int y = SDL_WINDOWPOS_UNDEFINED; ··· 150 153 static void 151 154 sdl2_loop_events(struct u_debug_gui *p) 152 155 { 156 + XRT_TRACE_MARKER(); 157 + 153 158 SDL_Event event; 154 159 155 160 while (SDL_PollEvent(&event)) { ··· 176 181 static void 177 182 sdl2_loop_new_frame(struct u_debug_gui *p) 178 183 { 184 + XRT_TRACE_MARKER(); 185 + 179 186 // Start the Dear ImGui frame 180 187 igImGui_ImplOpenGL3_NewFrame(); 181 188 igImGui_ImplSDL2_NewFrame(p->win); ··· 187 194 static void 188 195 sdl2_loop_show_scene(struct u_debug_gui *p, struct gui_imgui *gui) 189 196 { 197 + XRT_TRACE_MARKER(); 198 + 190 199 // Render the scene into it. 191 200 gui_scene_manager_render(&p->base); 192 201 ··· 204 213 static void 205 214 sdl2_loop_render(struct u_debug_gui *p, struct gui_imgui *gui, ImGuiIO *io) 206 215 { 216 + XRT_TRACE_MARKER(); 217 + 207 218 // Build the DrawData (EndFrame). 208 219 igRender(); 209 220 ··· 264 275 u_var_add_bool(&gui, &p->base.stopped, "Exit"); 265 276 266 277 while (!p->base.stopped) { 278 + // All this counts as work. 279 + XRT_TRACE_IDENT(frame); 280 + 267 281 sdl2_loop_events(p); 268 282 269 283 sdl2_loop_new_frame(p); ··· 272 286 273 287 sdl2_loop_render(p, &gui, io); 274 288 289 + XRT_TRACE_BEGIN(swap); 275 290 SDL_GL_SwapWindow(p->win); 291 + XRT_TRACE_END(swap); 276 292 277 293 // Update prober things. 278 294 gui_prober_update(&p->base); ··· 289 305 static void 290 306 sdl2_close(struct u_debug_gui *p) 291 307 { 308 + XRT_TRACE_MARKER(); 309 + 292 310 // All scenes should be destroyed by now. 293 311 gui_scene_manager_destroy(&p->base); 294 312 ··· 312 330 static void * 313 331 u_debug_gui_run_thread(void *ptr) 314 332 { 333 + U_TRACE_SET_THREAD_NAME("Debug GUI"); 334 + 315 335 struct u_debug_gui *debug_gui = (struct u_debug_gui *)ptr; 316 336 sdl2_window_init(debug_gui); 317 337 ··· 325 345 int 326 346 u_debug_gui_create(struct u_debug_gui **out_debug_gui) 327 347 { 348 + XRT_TRACE_MARKER(); 349 + 328 350 // Enabled? 329 351 if (!debug_get_bool_option_gui()) { 330 352 return 0; ··· 348 370 void 349 371 u_debug_gui_start(struct u_debug_gui *debug_gui, struct xrt_instance *xinst, struct xrt_system_devices *xsysd) 350 372 { 373 + XRT_TRACE_MARKER(); 374 + 351 375 if (debug_gui == NULL) { 352 376 return; 353 377 } ··· 367 391 void 368 392 u_debug_gui_stop(struct u_debug_gui **debug_gui) 369 393 { 394 + XRT_TRACE_MARKER(); 395 + 370 396 struct u_debug_gui *p = *(struct u_debug_gui **)debug_gui; 371 397 if (p == NULL) { 372 398 return;