medium sized dollop
[vg.git] / src / vg / vg_io.h
index afd134f45a05a76d72d0a69ee7a5076a2eeecd93..19d468b8e1ce39634cdbe31dcdac7e1447c6a363 100644 (file)
@@ -1,53 +1,15 @@
-// Copyright (C) 2021 Harry Godden (hgn) - All Rights Reserved
+/* Copyright (C) 2021-2022 Harry Godden (hgn) - All Rights Reserved */
 
-// Coloured logging
-// ===========================================================================================================
+#ifndef VG_IO_H
+#define VG_IO_H
 
-#define KNRM  "\x1B[0m"
-#define KRED  "\x1B[31m"
-#define KGRN  "\x1B[32m"
-#define KYEL  "\x1B[33m"
-#define KBLU  "\x1B[34m"
-#define KMAG  "\x1B[35m"
-#define KCYN  "\x1B[36m"
-#define KWHT  "\x1B[37m"
-
-void (*vg_log_callback)( const char *str ) = NULL;
-
-static void vg_log_write( FILE *file, const char *prefix, const char *fmt, va_list args )
-{
-       char buffer[512];
-       int i, j;
-       
-       for( i = 0; i < vg_list_size( buffer ); i ++ )
-       {
-               if( prefix[i] )
-                       buffer[i] = prefix[i];
-               else 
-                       break;
-       }
-       
-       j = i + vsnprintf( buffer + i, vg_list_size( buffer ) - i -2, fmt, args );
-       strcpy( buffer + j, KNRM );
-       
-       fputs( buffer, file );
-       
-       if( vg_log_callback )
-               vg_log_callback( buffer );
-}
-
-static void vg_success( const char *fmt, ... )
-       { va_list args; va_start( args, fmt ); vg_log_write( stdout, (KGRN "success" KWHT "| " KGRN), fmt, args ); va_end( args ); }
-static void vg_info( const char *fmt, ... )
-       { va_list args; va_start( args, fmt ); vg_log_write( stdout, (KNRM "   info" KWHT "| " KNRM), fmt, args ); va_end( args ); }
-static void vg_warn( const char *fmt, ... )
-       { va_list args; va_start( args, fmt ); vg_log_write( stdout, (KYEL "   warn" KWHT "| " KYEL), fmt, args ); va_end( args ); }
-static void vg_error( const char *fmt, ... )
-       { va_list args; va_start( args, fmt ); vg_log_write( stderr, (KRED "  error" KWHT "| " KRED), fmt, args ); va_end( args ); }
-
-// FILE IO
-// ===========================================================================================================
+#include "vg_stdint.h"
+#include "vg_platform.h"
+#include <stdio.h>
 
+/*
+ * FIle I/O
+ */
 static i64 vg_file_size( FILE *fileptr )
 {
        fseek( fileptr, 0, SEEK_END );
@@ -57,7 +19,7 @@ static i64 vg_file_size( FILE *fileptr )
        return fsize;
 }
 
-static void *vg_disk_open_read( const char *path, int const reserve_end, i64 *size )
+static void *vg_disk_open_read( const char *path, int reserve_end, i64 *size )
 {
        FILE *f = fopen( path, "rb" );
        if( f )
@@ -67,7 +29,7 @@ static void *vg_disk_open_read( const char *path, int const reserve_end, i64 *si
                
                if( buf )
                {
-                       // Invalid / corrupt read
+                       /* Invalid / corrupt read */
                        if( fread( buf, 1, fsize, f ) != fsize )
                        {
                                free( buf );
@@ -91,7 +53,7 @@ static char *vg_disk_load_text( const char *path, i64 *size )
        char *buf;
        i64 fsize;
        
-       if( (buf = vg_disk_open_read( path, 1, &fsize )) )
+       if( (buf = (char *)vg_disk_open_read( path, 1, &fsize )) )
        {
                buf[ fsize ] = 0x00;
                *size = fsize +1;
@@ -138,3 +100,5 @@ static int vg_asset_write( const char *path, void *data, i64 size )
                return 0;
        }
 }
+
+#endif /* VG_IO_H */