···77 * @ingroup gui
88 */
991010+#include "util/u_var.h"
1011#include "gui_common.h"
11121213···1617 struct program p = {0};
1718 int ret;
18192020+ // Need to do this as early as possible.
2121+ u_var_force_on();
2222+1923 ret = gui_sdl2_init(&p);
2024 if (ret != 0) {
2125 gui_sdl2_quit(&p);
2226 return ret;
2327 }
24282525- gui_sdl2_loop(&p);
2929+ // To manage the scenes.
3030+ gui_scene_manager_init(&p);
3131+3232+ // Start all of the devices.
3333+ gui_prober_init(&p);
3434+3535+ // First scene to start with.
3636+ gui_scene_select_video(&p);
3737+3838+ // Main loop.
3939+ gui_imgui_loop(&p);
4040+4141+ // Clean up after us.
4242+ gui_prober_teardown(&p);
4343+4444+ // All scenes should be destroyed by now.
4545+ gui_scene_manager_destroy(&p);
26464747+ // Final close.
2748 gui_sdl2_quit(&p);
28492950 return 0;