]> de.git.xonotic.org Git - xonotic/netradiant.git/blobdiff - tools/quake2/common/cmdlib.h
Merge branch 'nomagicpath' into 'master'
[xonotic/netradiant.git] / tools / quake2 / common / cmdlib.h
index c3a5698f74fd8b210cbf9052b9805ee4042181d6..f8d8e0d361a415c2e4996fd651a0cad789393e79 100644 (file)
-/*\r
-Copyright (C) 1999-2007 id Software, Inc. and contributors.\r
-For a list of contributors, see the accompanying CONTRIBUTORS file.\r
-\r
-This file is part of GtkRadiant.\r
-\r
-GtkRadiant is free software; you can redistribute it and/or modify\r
-it under the terms of the GNU General Public License as published by\r
-the Free Software Foundation; either version 2 of the License, or\r
-(at your option) any later version.\r
-\r
-GtkRadiant is distributed in the hope that it will be useful,\r
-but WITHOUT ANY WARRANTY; without even the implied warranty of\r
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
-GNU General Public License for more details.\r
-\r
-You should have received a copy of the GNU General Public License\r
-along with GtkRadiant; if not, write to the Free Software\r
-Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA\r
-*/\r
-\r
-// cmdlib.h\r
-\r
-#ifndef __CMDLIB__\r
-#define __CMDLIB__\r
-\r
-#include <stdio.h>\r
-#include <string.h>\r
-#include <stdlib.h>\r
-#include <errno.h>\r
-#include <ctype.h>\r
-#include <time.h>\r
-#include <stdarg.h>\r
-\r
-#ifdef _WIN32\r
-       #ifdef NDEBUG                                                   // Don't show in a Release build\r
-               #pragma warning(disable : 4305)     // truncate from double to float\r
-               #pragma warning(disable : 4244)     // conversion from double to float\r
-               #pragma warning(disable : 4018)     // signed/unsigned mismatch\r
-       #endif\r
-#endif\r
-\r
-#ifdef _WIN32\r
-       #pragma intrinsic( memset, memcpy )\r
-#endif\r
-\r
-#ifndef __BYTEBOOL__\r
-  #define __BYTEBOOL__\r
-  typedef enum {false, true} qboolean;\r
-  typedef unsigned char byte;\r
-#endif\r
-\r
-#define        MAX_OS_PATH             1024\r
-#define MEM_BLOCKSIZE 4096\r
-\r
-/*\r
-extern qboolean verbose;\r
-#define SYS_VRB 0 // verbose support (on/off)\r
-#define SYS_STD 1 // standard print level\r
-#define SYS_WRN 2 // warnings\r
-#define SYS_ERR 3 // error\r
-*/\r
-\r
-// the dec offsetof macro doesnt work very well...\r
-#define myoffsetof(type,identifier) ((size_t)&((type *)0)->identifier)\r
-\r
-#define SAFE_MALLOC\r
-#ifdef SAFE_MALLOC\r
-void *safe_malloc( size_t size );\r
-void *safe_malloc_info( size_t size, char* info );\r
-#else\r
-#define safe_malloc(a) malloc(a)\r
-#endif /* SAFE_MALLOC */\r
-\r
-// set these before calling CheckParm\r
-extern int myargc;\r
-extern char **myargv;\r
-\r
-char *strlower (char *in);\r
-int Q_strncasecmp( const char *s1, const char *s2, int n );\r
-int Q_strcasecmp( const char *s1, const char *s2 );\r
-int Q_stricmp( const char *s1, const char *s2 );\r
-void Q_getwd( char *out );\r
-\r
-int Q_filelength (FILE *f);\r
-int    FileTime( const char *path );\r
-\r
-void   Q_mkdir( const char *path );\r
-\r
-extern char            qdir[1024];\r
-extern char            gamedir[1024];\r
-extern  char           writedir[1024];\r
-extern  char    *moddirparam;\r
-void SetQdirFromPath( const char *path);\r
-char *ExpandArg( const char *path );   // from cmd line\r
-char *ExpandPath( const char *path );  // from scripts\r
-char *ExpandGamePath (const char *path);\r
-char *ExpandPathAndArchive( const char *path );\r
-void ExpandWildcards( int *argc, char ***argv );\r
-\r
-\r
-double I_FloatTime( void );\r
-\r
-int            CheckParm( const char *check );\r
-\r
-FILE   *SafeOpenWrite( const char *filename );\r
-FILE   *SafeOpenRead( const char *filename );\r
-void   SafeRead (FILE *f, void *buffer, int count);\r
-void   SafeWrite (FILE *f, const void *buffer, int count);\r
-\r
-int            LoadFile( const char *filename, void **bufferptr );\r
-int   LoadFileBlock( const char *filename, void **bufferptr );\r
-int            TryLoadFile( const char *filename, void **bufferptr );\r
-void   SaveFile( const char *filename, const void *buffer, int count );\r
-qboolean       FileExists( const char *filename );\r
-\r
-void   DefaultExtension( char *path, const char *extension );\r
-void   DefaultPath( char *path, const char *basepath );\r
-void   StripFilename( char *path );\r
-void   StripExtension( char *path );\r
-\r
-void   ExtractFilePath( const char *path, char *dest );\r
-void   ExtractFileBase( const char *path, char *dest );\r
-void   ExtractFileExtension( const char *path, char *dest );\r
-\r
-int    ParseNum (const char *str);\r
-\r
-//void Sys_Printf (const char *text, ...);\r
-//void Sys_FPrintf (int flag, const char *text, ...);\r
-//void Error( const char *error, ... );\r
-\r
-short  BigShort (short l);\r
-short  LittleShort (short l);\r
-int            BigLong (int l);\r
-int            LittleLong (int l);\r
-float  BigFloat (float l);\r
-float  LittleFloat (float l);\r
-\r
-\r
-char *COM_Parse (char *data);\r
-\r
-extern char            com_token[1024];\r
-extern qboolean        com_eof;\r
-\r
-char *copystring(const char *s);\r
-\r
-\r
-void CRC_Init(unsigned short *crcvalue);\r
-void CRC_ProcessByte(unsigned short *crcvalue, byte data);\r
-unsigned short CRC_Value(unsigned short crcvalue);\r
-\r
-void   CreatePath( const char *path );\r
-void   QCopyFile( const char *from, const char *to );\r
-\r
-extern qboolean                archive;\r
-extern char                    archivedir[1024];\r
-\r
-// sleep for the given amount of milliseconds\r
-void Sys_Sleep(int n);\r
-\r
-// for compression routines\r
-typedef struct\r
-{\r
-       byte    *data;\r
-       int             count;\r
-} cblock_t;\r
-\r
-extern char    game[64];\r
-\r
-#endif\r
+/*
+   Copyright (C) 1999-2007 id Software, Inc. and contributors.
+   For a list of contributors, see the accompanying CONTRIBUTORS file.
+
+   This file is part of GtkRadiant.
+
+   GtkRadiant is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 2 of the License, or
+   (at your option) any later version.
+
+   GtkRadiant is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with GtkRadiant; if not, write to the Free Software
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+ */
+
+// cmdlib.h
+
+#ifndef __CMDLIB__
+#define __CMDLIB__
+
+#include "globaldefs.h"
+
+#include <stdio.h>
+#include <string.h>
+#include <stdlib.h>
+#include <errno.h>
+#include <ctype.h>
+#include <time.h>
+#include <stdarg.h>
+
+#if GDEF_COMPILER_MSVC
+       #ifdef NDEBUG                           // Don't show in a Release build
+               #pragma warning(disable : 4305)     // truncate from double to float
+               #pragma warning(disable : 4244)     // conversion from double to float
+               #pragma warning(disable : 4018)     // signed/unsigned mismatch
+       #endif
+#endif
+
+#if GDEF_COMPILER_MSVC
+       #pragma intrinsic( memset, memcpy )
+#endif
+
+#ifndef __BYTEBOOL__
+  #define __BYTEBOOL__
+typedef enum {false, true} qboolean;
+typedef unsigned char byte;
+#endif
+
+#ifdef PATH_MAX
+#define MAX_OS_PATH     PATH_MAX
+#else
+#define MAX_OS_PATH     1024
+#endif
+#define MEM_BLOCKSIZE 4096
+
+/*
+   extern      qboolean verbose;
+   #define SYS_VRB 0 // verbose support (on/off)
+   #define SYS_STD 1 // standard print level
+   #define SYS_WRN 2 // warnings
+   #define SYS_ERR 3 // error
+ */
+
+// the dec offsetof macro doesnt work very well...
+#define myoffsetof( type,identifier ) ( (size_t)& ( (type *)0 )->identifier )
+
+#define SAFE_MALLOC
+#ifdef SAFE_MALLOC
+void *safe_malloc( size_t size );
+void *safe_malloc_info( size_t size, char* info );
+#else
+#define safe_malloc( a ) malloc( a )
+#endif /* SAFE_MALLOC */
+
+// set these before calling CheckParm
+extern int myargc;
+extern char **myargv;
+
+char *strlower( char *in );
+int Q_strncasecmp( const char *s1, const char *s2, int n );
+int Q_strcasecmp( const char *s1, const char *s2 );
+int Q_stricmp( const char *s1, const char *s2 );
+void Q_getwd( char *out );
+
+int Q_filelength( FILE *f );
+int FileTime( const char *path );
+
+void    Q_mkdir( const char *path );
+
+extern char qdir[1024];
+extern char gamedir[1024];
+extern char writedir[1024];
+extern char    *moddirparam;
+void SetQdirFromPath( const char *path );
+char *ExpandArg( const char *path );    // from cmd line
+char *ExpandPath( const char *path );   // from scripts
+char *ExpandGamePath( const char *path );
+char *ExpandPathAndArchive( const char *path );
+void ExpandWildcards( int *argc, char ***argv );
+
+
+double I_FloatTime( void );
+
+int     CheckParm( const char *check );
+
+FILE    *SafeOpenWrite( const char *filename );
+FILE    *SafeOpenRead( const char *filename );
+void    SafeRead( FILE *f, void *buffer, int count );
+void    SafeWrite( FILE *f, const void *buffer, int count );
+
+int     LoadFile( const char *filename, void **bufferptr );
+int   LoadFileBlock( const char *filename, void **bufferptr );
+int     TryLoadFile( const char *filename, void **bufferptr );
+void    SaveFile( const char *filename, const void *buffer, int count );
+qboolean    FileExists( const char *filename );
+
+void    DefaultExtension( char *path, const char *extension );
+void    DefaultPath( char *path, const char *basepath );
+void    StripFilename( char *path );
+void    StripExtension( char *path );
+
+void    ExtractFilePath( const char *path, char *dest );
+void    ExtractFileBase( const char *path, char *dest );
+void    ExtractFileExtension( const char *path, char *dest );
+
+int     ParseNum( const char *str );
+
+//void Sys_Printf (const char *text, ...);
+//void Sys_FPrintf (int flag, const char *text, ...);
+//void Error( const char *error, ... );
+
+short   BigShort( short l );
+short   LittleShort( short l );
+int     BigLong( int l );
+int     LittleLong( int l );
+float   BigFloat( float l );
+float   LittleFloat( float l );
+
+
+char *COM_Parse( char *data );
+
+extern char com_token[1024];
+extern qboolean com_eof;
+
+char *copystring( const char *s );
+
+
+void CRC_Init( unsigned short *crcvalue );
+void CRC_ProcessByte( unsigned short *crcvalue, byte data );
+unsigned short CRC_Value( unsigned short crcvalue );
+
+void    CreatePath( const char *path );
+void    QCopyFile( const char *from, const char *to );
+
+extern qboolean archive;
+extern char archivedir[1024];
+
+// sleep for the given amount of milliseconds
+void Sys_Sleep( int n );
+
+// for compression routines
+typedef struct
+{
+       byte    *data;
+       int count;
+} cblock_t;
+
+extern char game[64];
+
+#endif