[xbuild] Rename method to make it more consistent.
[mono.git] / mono / io-layer / io.h
index abab516c89f2b2f27992f5e8a9345589ef472ee9..dbdc1851a861400866bf045b6c828bef0074f76f 100644 (file)
@@ -82,6 +82,9 @@ typedef void (*WapiOverlappedCB) (guint32 error, guint32 numbytes,
 #define FILE_FLAG_OVERLAPPED                   0x40000000
 #define FILE_FLAG_WRITE_THROUGH                        0x80000000
 
+#define REPLACEFILE_WRITE_THROUGH       0x00000001
+#define REPLACEFILE_IGNORE_MERGE_ERRORS 0x00000002
+
 #define MAX_PATH       260
 
 typedef enum {
@@ -104,6 +107,16 @@ typedef enum {
        FILE_TYPE_REMOTE=0x8000
 } WapiFileType;
 
+typedef enum {
+       DRIVE_UNKNOWN=0,
+       DRIVE_NO_ROOT_DIR=1,
+       DRIVE_REMOVABLE=2,
+       DRIVE_FIXED=3,
+       DRIVE_REMOTE=4,
+       DRIVE_CDROM=5,
+       DRIVE_RAMDISK=6
+} WapiDriveType;
+
 typedef enum {
        GetFileExInfoStandard=0x0000,
        GetFileExMaxInfoLevel=0x0001
@@ -185,6 +198,9 @@ extern gboolean RemoveDirectory (const gunichar2 *name);
 extern gboolean MoveFile (const gunichar2 *name, const gunichar2 *dest_name);
 extern gboolean CopyFile (const gunichar2 *name, const gunichar2 *dest_name,
                          gboolean fail_if_exists);
+extern gboolean ReplaceFile (const gunichar2 *replacedFileName, const gunichar2 *replacementFileName,
+                            const gunichar2 *backupFileName, guint32 replaceFlags, 
+                            gpointer exclude, gpointer reserved);
 extern guint32 GetFileAttributes (const gunichar2 *name);
 extern gboolean GetFileAttributesEx (const gunichar2 *name,
                                     WapiGetFileExInfoLevels level,
@@ -196,6 +212,10 @@ extern gboolean CreatePipe (gpointer *readpipe, gpointer *writepipe,
                            WapiSecurityAttributes *security, guint32 size);
 extern guint32 GetTempPath (guint32 len, gunichar2 *buf);
 extern gint32 GetLogicalDriveStrings (guint32 len, gunichar2 *buf);
+extern gboolean GetDiskFreeSpaceEx(const gunichar2 *path_name, WapiULargeInteger *free_bytes_avail,
+                                  WapiULargeInteger *total_number_of_bytes,
+                                  WapiULargeInteger *total_number_of_free_bytes);
+extern guint32 GetDriveType(const gunichar2 *root_path_name);
 extern gboolean LockFile (gpointer handle, guint32 offset_low,
                          guint32 offset_high, guint32 length_low,
                          guint32 length_high);