1 /* File: "os_files.h", Time-stamp: <2008-12-09 16:15:30 feeley> */
3 /* Copyright (c) 1994-2008 by Marc Feeley, All Rights Reserved. */
9 /*---------------------------------------------------------------------------*/
11 /**********************************/
14 typedef struct ___files_module_struct
21 extern ___files_module ___files_mod
;
24 /*---------------------------------------------------------------------------*/
26 /* File system path expansion. */
29 /* Max length of a path, not including null. */
31 #define ___PATH_MAX_LENGTH 1024
36 #define ___PATH_CE_SELECT(latin1,utf8,ucs2,ucs4,wchar,native) ucs2
38 #define ___PATH_CE_SELECT(latin1,utf8,ucs2,ucs4,wchar,native) native
42 #ifndef ___PATH_CE_SELECT
43 #define ___PATH_CE_SELECT(latin1,utf8,ucs2,ucs4,wchar,native) native
47 extern ___SCMOBJ ___os_path_homedir ___PVOID
;
49 extern ___SCMOBJ ___os_path_gambcdir ___PVOID
;
51 extern ___SCMOBJ ___os_path_gambcdir_map_lookup
55 extern ___SCMOBJ ___os_path_normalize_directory
56 ___P((___SCMOBJ path
),
60 /*---------------------------------------------------------------------------*/
62 /* File system operations. */
65 extern ___SCMOBJ ___os_create_directory
70 extern ___SCMOBJ ___os_create_fifo
75 extern ___SCMOBJ ___os_create_link
76 ___P((___SCMOBJ path1
,
80 extern ___SCMOBJ ___os_create_symbolic_link
81 ___P((___SCMOBJ path1
,
85 extern ___SCMOBJ ___os_delete_directory
86 ___P((___SCMOBJ path
),
89 extern ___SCMOBJ ___os_set_current_directory
90 ___P((___SCMOBJ path
),
93 extern ___SCMOBJ ___os_rename_file
94 ___P((___SCMOBJ path1
,
98 extern ___SCMOBJ ___os_copy_file
99 ___P((___SCMOBJ path1
,
103 extern ___SCMOBJ ___os_delete_file
104 ___P((___SCMOBJ path
),
108 /*---------------------------------------------------------------------------*/
110 /* File system module initialization/finalization. */
113 extern ___SCMOBJ ___setup_files_module ___PVOID
;
115 extern void ___cleanup_files_module ___PVOID
;
118 /*---------------------------------------------------------------------------*/