00001 /*************************************************************************** 00002 $RCSfile: directory.h,v $ 00003 ------------------- 00004 cvs : $Id: directory.h,v 1.14 2005/04/13 21:22:21 aquamaniac Exp $ 00005 begin : Tue Dec 03 2002 00006 copyright : (C) 2002 by Martin Preuss 00007 email : martin@libchipcard.de 00008 00009 *************************************************************************** 00010 * * 00011 * This library is free software; you can redistribute it and/or * 00012 * modify it under the terms of the GNU Lesser General Public * 00013 * License as published by the Free Software Foundation; either * 00014 * version 2.1 of the License, or (at your option) any later version. * 00015 * * 00016 * This library is distributed in the hope that it will be useful, * 00017 * but WITHOUT ANY WARRANTY; without even the implied warranty of * 00018 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * 00019 * Lesser General Public License for more details. * 00020 * * 00021 * You should have received a copy of the GNU Lesser General Public * 00022 * License along with this library; if not, write to the Free Software * 00023 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, * 00024 * MA 02111-1307 USA * 00025 * * 00026 ***************************************************************************/ 00027 00034 #ifndef GWEN_DIRECTORY_H 00035 #define GWEN_DIRECTORY_H 00036 00037 00038 #include <gwenhywfar/gwenhywfarapi.h> 00039 #include <gwenhywfar/buffer.h> 00040 00041 #ifdef __cplusplus 00042 extern "C" { 00043 #endif 00044 00045 typedef struct GWEN_DIRECTORYDATASTRUCT GWEN_DIRECTORYDATA; 00046 00047 00052 #define GWEN_DIR_FLAGS_PUBLIC_PATH 0x00010000 00053 #define GWEN_DIR_FLAGS_PUBLIC_NAME 0x00020000 00054 00065 00069 GWENHYWFAR_API GWEN_DIRECTORYDATA *GWEN_Directory_new(); 00070 00074 GWENHYWFAR_API void GWEN_Directory_free(GWEN_DIRECTORYDATA *d); 00075 00084 GWENHYWFAR_API 00085 int GWEN_Directory_Open(GWEN_DIRECTORYDATA *d, const char *n); 00086 00094 GWENHYWFAR_API int GWEN_Directory_Close(GWEN_DIRECTORYDATA *d); 00095 00107 GWENHYWFAR_API int GWEN_Directory_Read(GWEN_DIRECTORYDATA *d, 00108 char *buffer, 00109 unsigned int len); 00110 00119 GWENHYWFAR_API int GWEN_Directory_Rewind(GWEN_DIRECTORYDATA *d); 00120 00121 00126 GWENHYWFAR_API 00127 int GWEN_Directory_GetHomeDirectory(char *buffer, unsigned int size); 00128 00136 GWENHYWFAR_API 00137 int GWEN_Directory_GetPath(const char *path, unsigned int flags); 00138 00139 00143 GWENHYWFAR_API 00144 int GWEN_Directory_Create(const char *path); 00145 00150 GWENHYWFAR_API 00151 int GWEN_Directory_CreatePublic(const char *path); 00152 00166 GWENHYWFAR_API 00167 int GWEN_Directory_OsifyPath(const char *path, GWEN_BUFFER *pbuf, 00168 int transformDriveElement); 00169 00170 /* defgroup */ 00172 00173 00174 #ifdef __cplusplus 00175 } 00176 #endif 00177 00178 00179 #endif /* GWEN_DIRECTORY_H */ 00180 00181 00182 00183