00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #if !defined (octave_file_ops_h)
00024 #define octave_file_ops_h 1
00025
00026 #include <string>
00027
00028 #ifdef HAVE_SYS_TYPES_H
00029 #include <sys/types.h>
00030 #endif
00031
00032 #include "str-vec.h"
00033
00034 struct
00035 file_ops
00036 {
00037 static int mkdir (const std::string&, mode_t);
00038 static int mkdir (const std::string&, mode_t, std::string&);
00039
00040 static int mkfifo (const std::string&, mode_t);
00041 static int mkfifo (const std::string&, mode_t, std::string&);
00042
00043 static int link (const std::string&, const std::string&);
00044 static int link (const std::string&, const std::string&, std::string&);
00045
00046 static int symlink (const std::string&, const std::string&);
00047 static int symlink (const std::string&, const std::string&, std::string&);
00048
00049 static int readlink (const std::string&, std::string&);
00050 static int readlink (const std::string&, std::string&, std::string&);
00051
00052 static int rename (const std::string&, const std::string&);
00053 static int rename (const std::string&, const std::string&, std::string&);
00054
00055 static int rmdir (const std::string&);
00056 static int rmdir (const std::string&, std::string&);
00057
00058 static std::string tempnam (const std::string&, const std::string&);
00059 static std::string tempnam (const std::string&, const std::string&,
00060 std::string&);
00061
00062 typedef std::string (*tilde_expansion_hook) (const std::string&);
00063
00064 static tilde_expansion_hook tilde_expansion_preexpansion_hook;
00065
00066 static tilde_expansion_hook tilde_expansion_failure_hook;
00067
00068 static string_vector tilde_additional_prefixes;
00069
00070 static string_vector tilde_additional_suffixes;
00071
00072 static std::string tilde_expand (const std::string&);
00073 static string_vector tilde_expand (const string_vector&);
00074
00075 static int umask (mode_t);
00076
00077 static int unlink (const std::string&);
00078 static int unlink (const std::string&, std::string&);
00079
00080 static bool is_dir_sep (char);
00081
00082 static char dir_sep_char;
00083 static std::string dir_sep_str;
00084 static std::string dir_sep_chars;
00085 };
00086
00087 #endif
00088
00089
00090
00091
00092
00093