audio rework pt 1
[vg.git] / src / vg / vg.h
index a2a85fdbc06d54605f12f747da2196d749e080f4..fc6e0afda1d970ada7f555292295b4bd95ec5685 100644 (file)
@@ -1,5 +1,8 @@
 /* Copyright (C) 2021 Harry Godden (hgn) - All Rights Reserved */
 
+static void vg_exiterr( const char *err );
+static void vg_exit(void);
+
 #ifndef VG_HEADER_H
 #define VG_HEADER_H
 
@@ -30,7 +33,6 @@
 #include "vg_platform.h"
 
 void vg_register_exit( void( *funcptr )(void), const char *name );
-void vg_exiterr( const char *strErr );
 
 #include "vg_m.h"
 #include "vg_io.h"
@@ -108,7 +110,7 @@ void vg_register_exit( void( *funcptr )(void), const char *name )
    vg_on_exit[ vg_exit_count ++ ] = funcptr;
 }
 
-void vg_exit(void)
+static void vg_exit(void)
 {
    for( int i = vg_exit_count-1; i >= 0; i -- )
    {
@@ -117,13 +119,13 @@ void vg_exit(void)
    }
    
    vg_info( "done\n" );
+   exit(0);
 }
 
-void vg_exiterr( const char *strErr )
+static void vg_exiterr( const char *err )
 {
-   vg_error( "Engine Fatal: %s\n", strErr );
+   vg_error( "Engine Fatal: %s\n", err );
    vg_exit();
-   exit(0);
 }
 
 void vg_mouse_callback( GLFWwindow* ptrW, double xpos, double ypos )
@@ -241,16 +243,14 @@ static void vg_init( int argc, char *argv[], const char *window_name )
                .function = vg_shaders_recompile
        });
 
-   
+   if( !vg_audio_init() )
+      vg_exit();
+   vg_register_exit( &vg_audio_free, "vg_audio_free" );
+
    vg_start();
 
    vg_console_init();
    vg_register_exit( &vg_console_free, "Console" );
-
-   vg_audio_init();
-   vg_register_exit( &vg_audio_free, "vg_audio_free" );
-   
-   vg_debugtools_setup();
    
    /* 
     * Main gameloop
@@ -280,9 +280,9 @@ static void vg_init( int argc, char *argv[], const char *window_name )
          ui_set_mouse( &ui_global_ctx, vg_mouse[0], vg_mouse[1], 
                vg_get_button_state( "primary" ) );
          
+         audio_debug_ui();
          vg_ui();
          vg_console_draw();
-         vg_debugtools_draw();
          
          ui_resolve( &ui_global_ctx );
          ui_draw( &ui_global_ctx, NULL );