00001
00002
00003
00004
00005
00006
00007
00019 #ifndef OSCL_FILE_DIR_UTILS_H_INCLUDED
00020 #define OSCL_FILE_DIR_UTILS_H_INCLUDED
00021
00022 #ifndef OSCLCONFIG_IO_H_INCLUDED
00023 #include "osclconfig_io.h"
00024 #endif
00025
00026 #ifndef OSCL_BASE_H_INCLUDED
00027 #include "oscl_base.h"
00028 #endif
00029
00030
00031
00032 typedef struct oscl_fsstat
00033 {
00034 uint64 freebytes;
00035 uint64 totalbytes;
00036 } OSCL_FSSTAT;
00037
00038 typedef enum
00039 {
00040 OSCL_FILEMGMT_PERMS_READ = 0x1,
00041 OSCL_FILEMGMT_PERMS_WRITE = 0x2,
00042 OSCL_FILEMGMT_PERMS_EXECUTE = 0x4,
00043 } OSCL_FILEMGMT_PERMS;
00044
00045 typedef enum
00046 {
00047 OSCL_FILEMGMT_MODE_DIR = 0x1
00048 } OSCL_FILEMGMT_MODES;
00049
00050 typedef struct oscl_stat_buf
00051 {
00052 uint32 mode;
00053 uint32 perms;
00054 } OSCL_STAT_BUF;
00055
00056 typedef enum
00057 {
00058 OSCL_FILEMGMT_E_OK = 0,
00059 OSCL_FILEMGMT_E_PATH_TOO_LONG,
00060 OSCL_FILEMGMT_E_PATH_NOT_FOUND,
00061 OSCL_FILEMGMT_E_ALREADY_EXISTS,
00062 OSCL_FILEMGMT_E_NOT_EMPTY,
00063 OSCL_FILEMGMT_E_PERMISSION_DENIED,
00064 OSCL_FILEMGMT_E_NO_MATCH,
00065 OSCL_FILEMGMT_E_UNKNOWN,
00066 OSCL_FILEMGMT_E_SYS_SPECIFIC,
00067 OSCL_FILEMGMT_E_NOT_IMPLEMENTED
00068 } OSCL_FILEMGMT_ERR_TYPE;
00069
00077 OSCL_IMPORT_REF OSCL_FILEMGMT_ERR_TYPE oscl_getcwd(oscl_wchar *path, uint32 size);
00078
00079
00087 OSCL_IMPORT_REF OSCL_FILEMGMT_ERR_TYPE oscl_getcwd(char *path, uint32 size);
00088
00089
00090
00097 OSCL_IMPORT_REF OSCL_FILEMGMT_ERR_TYPE oscl_stat(const oscl_wchar *path, OSCL_STAT_BUF *statbuf);
00098
00099
00106 OSCL_IMPORT_REF OSCL_FILEMGMT_ERR_TYPE oscl_stat(const char *path, OSCL_STAT_BUF *statbuf);
00107
00108
00115 OSCL_IMPORT_REF OSCL_FILEMGMT_ERR_TYPE oscl_mkdir(const oscl_wchar *path);
00116
00123 OSCL_IMPORT_REF OSCL_FILEMGMT_ERR_TYPE oscl_mkdir(const char *path);
00124
00130 OSCL_IMPORT_REF OSCL_FILEMGMT_ERR_TYPE oscl_rmdir(const oscl_wchar *path);
00131
00137 OSCL_IMPORT_REF OSCL_FILEMGMT_ERR_TYPE oscl_rmdir(const char *path);
00138
00144 OSCL_IMPORT_REF OSCL_FILEMGMT_ERR_TYPE oscl_chdir(const oscl_wchar *path);
00145
00151 OSCL_IMPORT_REF OSCL_FILEMGMT_ERR_TYPE oscl_chdir(const char *path);
00152
00162 OSCL_IMPORT_REF OSCL_FILEMGMT_ERR_TYPE oscl_rename(const oscl_wchar *oldpath, const oscl_wchar *newpath);
00163
00170 OSCL_IMPORT_REF OSCL_FILEMGMT_ERR_TYPE oscl_rename(const char *oldpath, const char *newpath);
00171
00179 OSCL_IMPORT_REF OSCL_FILEMGMT_ERR_TYPE oscl_statfs(OSCL_FSSTAT *stats, const char *path);
00187 OSCL_IMPORT_REF OSCL_FILEMGMT_ERR_TYPE oscl_statfs(OSCL_FSSTAT *stats, const oscl_wchar *path);
00188
00189
00190 #endif // OSCL_FILE_DIR_UTILS_H_INCLUDED
00191