00001 // $Id: fileio.h,v 1.1 2004-07-12 18:15:10 mbickel Exp $ 00002 // 00003 // $Log: fileio.h,v $ 00004 // Revision 1.1 2004-07-12 18:15:10 mbickel 00005 // Lots of tweaks and fixed for more portability and compilation with mingw 00006 // 00007 // Revision 1.7 2002/10/19 16:11:31 mbickel 00008 // Made listing of directories more portable 00009 // 00010 // Revision 1.6 2002/01/29 20:42:17 mbickel 00011 // Improved finding of files with relative path 00012 // Added wildcards to music playlist files 00013 // 00014 // Revision 1.5 2001/10/11 10:41:06 mbickel 00015 // Restructured platform fileio handling 00016 // Added map archival information to mapeditor 00017 // 00018 // Revision 1.4 2001/05/18 22:30:30 mbickel 00019 // The data file is now installed in the correct directory 00020 // If the installation directory is changed with configure, the new path 00021 // will now be compiled directly into ASC 00022 // 00023 // Revision 1.3 2001/02/26 21:14:32 mbickel 00024 // Added two small editors to the linux makefiles 00025 // Added some more truecolor hacks to the graphics engine 00026 // 00027 // Revision 1.2 2000/10/12 21:37:57 mbickel 00028 // Further restructured platform dependant routines 00029 // 00030 // Revision 1.1 2000/10/12 20:21:43 mbickel 00031 // Restructuring operating system dependant files 00032 // 00033 // 00034 /* 00035 This file is part of Advanced Strategic Command; http://www.asc-hq.de 00036 Copyright (C) 1994-1999 Martin Bickel and Marc Schellenberger 00037 00038 This program is free software; you can redistribute it and/or modify 00039 it under the terms of the GNU General Public License as published by 00040 the Free Software Foundation; either version 2 of the License, or 00041 (at your option) any later version. 00042 00043 This program is distributed in the hope that it will be useful, 00044 but WITHOUT ANY WARRANTY; without even the implied warranty of 00045 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00046 GNU General Public License for more details. 00047 00048 You should have received a copy of the GNU General Public License 00049 along with this program; see the file COPYING. If not, write to the 00050 Free Software Foundation, Inc., 59 Temple Place, Suite 330, 00051 Boston, MA 02111-1307 USA 00052 */ 00053 00054 // this file takes care that the necessary header files for opendir / readdir 00055 // are being included in basestrm.cpp 00056 00057 #ifndef fileio_h_included 00058 #define fileio_h_included 00059 00060 #include <vector> 00061 #include "../../ASCString.h" 00062 00063 #ifdef HAVE_SYS_DIRENT_H 00064 #include <sys/dirent.h> 00065 #endif 00066 00067 #ifdef HAVE_DIRENT_H 00068 # include <dirent.h> 00069 # define NAMLEN(dirent) strlen((dirent)->d_name) 00070 #else 00071 # define dirent direct 00072 # define NAMLEN(dirent) (dirent)->d_namlen 00073 # if HAVE_SYS_NDIR_H 00074 # include <sys/ndir.h> 00075 # endif 00076 # if HAVE_SYS_DIR_H 00077 # include <sys/dir.h> 00078 # endif 00079 # if HAVE_NDIR_H 00080 # include <ndir.h> 00081 # endif 00082 #endif 00083 #define ASC_direct dirent 00084 00085 extern const char* filereadmode; 00086 extern const char* filewritemode; 00087 extern const char* filereadmodetext; 00088 extern const char* filewritemodetext; 00089 extern const char pathdelimitter; 00090 extern const char* pathdelimitterstring; 00091 extern const char foreignPathDelimitter; 00092 extern const char* foreignPathDelimitterString; 00093 00094 extern const int maxfilenamelength; 00095 extern const char* asc_configurationfile; 00096 00097 #endif
1.4.2