# directory.h

Go to the documentation of this file.

    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