]> git.xonotic.org Git - xonotic/netradiant.git/blobdiff - tools/quake2/common/cmdlib.h
transfer from internal tree r5311 branches/1.4-gpl
[xonotic/netradiant.git] / tools / quake2 / common / cmdlib.h
diff --git a/tools/quake2/common/cmdlib.h b/tools/quake2/common/cmdlib.h
new file mode 100644 (file)
index 0000000..c3a5698
--- /dev/null
@@ -0,0 +1,170 @@
+/*\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