X-Git-Url: https://de.git.xonotic.org/?p=xonotic%2Fnetradiant.git;a=blobdiff_plain;f=libs%2Fcmdlib.h;h=92d985ae5ce99632ce280ea3db1d20bb70893c31;hp=84833fcdedfae83361ac995cc1710e032b536db9;hb=ab3a99dbbe84a0d130fea4d0ceb7b79d7ed07eb7;hpb=d59e1dc131ede961a201ab8ca4b836ab9d6cc31a diff --git a/libs/cmdlib.h b/libs/cmdlib.h index 84833fcd..92d985ae 100644 --- a/libs/cmdlib.h +++ b/libs/cmdlib.h @@ -1,111 +1,111 @@ -/* -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 -*/ - -// -// start of shared cmdlib stuff -// - -#ifndef __CMDLIB__ -#define __CMDLIB__ - -#include -#include -#include -#include -#include -#include -#include -#include -#ifdef _WIN32 - #define PATH_MAX 260 -#endif - -// some easy portability crap -#ifdef _WIN32 - #include - #define Q_mkdir(a,b) _mkdir(a) -#else - #include - #define Q_mkdir(a,b) mkdir(a,b) -#endif - -#ifdef __cplusplus - typedef bool qboolean; -#endif - -// NOTE TTimo: is this worth anything? -#ifndef __BYTEBOOL__ -#define __BYTEBOOL__ - -#ifndef __cplusplus - typedef enum {false, true} boolean; -#else - typedef unsigned char boolean; -#endif - -typedef unsigned char byte; - -#endif // __BYTEBOOL__ - -void DefaultExtension( char *path, char *extension ); -void DefaultPath( char *path, char *basepath ); -void StripFilename( char *path ); -void StripExtension( char *path ); -void ExtractFilePath( const char *path, char *dest ); -void ExtractFileName( const char *path, char *dest ); -void ExtractFileBase( const char *path, char *dest ); -void ExtractFileExtension( const char *path, char *dest ); -/*! -\brief create all directories leading to a file path. if you pass a directory, terminate it with a '/' -*/ -void CreateDirectoryPath (const char *path); - -short BigShort (short l); -short LittleShort (short l); -int BigLong (int l); -int LittleLong (int l); -float BigFloat (float l); -float LittleFloat (float l); -void *qmalloc (size_t size); -void* qblockmalloc(size_t nSize); - -void ConvertDOSToUnixName( char *dst, const char *src ); -#ifdef __cplusplus - char* StrDup(char* pStr); -#endif -char* StrDup(const char* pStr); - -// TTimo started adding portability code: -// return true if spawning was successful, false otherwise -// on win32 we have a bCreateConsole flag to create a new console or run inside the current one -//boolean Q_Exec(const char* pCmd, boolean bCreateConsole); -// execute a system command: -// cmd: the command to run -// cmdline: the command line -// NOTE TTimo following are win32 specific: -// execdir: the directory to execute in -// bCreateConsole: spawn a new console or not -// return values; -// if the spawn was fine -// TODO TTimo add functionality to track the process until it dies -bool Q_Exec(const char *cmd, char *cmdline, const char *execdir, bool bCreateConsole); - -#endif +/* +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 +*/ + +// +// start of shared cmdlib stuff +// + +#ifndef __CMDLIB__ +#define __CMDLIB__ + +#include +#include +#include +#include +#include +#include +#include +#include +#ifdef _WIN32 + #define PATH_MAX 260 +#endif + +// some easy portability crap +#ifdef _WIN32 + #include + #define Q_mkdir(a,b) _mkdir(a) +#else + #include + #define Q_mkdir(a,b) mkdir(a,b) +#endif + +#ifdef __cplusplus + typedef bool qboolean; +#endif + +// NOTE TTimo: is this worth anything? +#ifndef __BYTEBOOL__ +#define __BYTEBOOL__ + +#ifndef __cplusplus + typedef enum {false, true} boolean; +#else + typedef unsigned char boolean; +#endif + +typedef unsigned char byte; + +#endif // __BYTEBOOL__ + +void DefaultExtension( char *path, char *extension ); +void DefaultPath( char *path, char *basepath ); +void StripFilename( char *path ); +void StripExtension( char *path ); +void ExtractFilePath( const char *path, char *dest ); +void ExtractFileName( const char *path, char *dest ); +void ExtractFileBase( const char *path, char *dest ); +void ExtractFileExtension( const char *path, char *dest ); +/*! +\brief create all directories leading to a file path. if you pass a directory, terminate it with a '/' +*/ +void CreateDirectoryPath (const char *path); + +short BigShort (short l); +short LittleShort (short l); +int BigLong (int l); +int LittleLong (int l); +float BigFloat (float l); +float LittleFloat (float l); +void *qmalloc (size_t size); +void* qblockmalloc(size_t nSize); + +void ConvertDOSToUnixName( char *dst, const char *src ); +#ifdef __cplusplus + char* StrDup(char* pStr); +#endif +char* StrDup(const char* pStr); + +// TTimo started adding portability code: +// return true if spawning was successful, false otherwise +// on win32 we have a bCreateConsole flag to create a new console or run inside the current one +//boolean Q_Exec(const char* pCmd, boolean bCreateConsole); +// execute a system command: +// cmd: the command to run +// cmdline: the command line +// NOTE TTimo following are win32 specific: +// execdir: the directory to execute in +// bCreateConsole: spawn a new console or not +// return values; +// if the spawn was fine +// TODO TTimo add functionality to track the process until it dies +bool Q_Exec(const char *cmd, char *cmdline, const char *execdir, bool bCreateConsole); + +#endif