1 /* -*- Mode: C; c-basic-offset:4 ; -*- */
5 * Copyright (C) 1997 University of Chicago.
6 * See COPYRIGHT notice in top-level directory.
9 #ifndef AD_NTFS_INCLUDE
10 #define AD_NTFS_INCLUDE
12 #include <sys/types.h>
17 #define DWORDLOW(x) ( (DWORD) ( x & (__int64) 0xFFFFFFFF ) )
18 #define DWORDHIGH(x) ( (DWORD) ( (x >> 32) & (__int64) 0xFFFFFFFF ) )
19 #define DWORDTOINT64(x,y) ( (__int64) ( ( (__int64 x) << 32 ) + (__int64) y ) )
22 #define DWORDHIGH(x) 0
23 #define DWORDTOINT64(x,y) x
26 int ADIOI_NTFS_aio(ADIO_File fd
, void *buf
, int len
, ADIO_Offset offset
,
27 int wr
, void *handle
);
29 void ADIOI_NTFS_Open(ADIO_File fd
, int *error_code
);
30 void ADIOI_NTFS_Close(ADIO_File fd
, int *error_code
);
31 void ADIOI_NTFS_ReadContig(ADIO_File fd
, void *buf
, int count
,
32 MPI_Datatype datatype
, int file_ptr_type
,
33 ADIO_Offset offset
, ADIO_Status
*status
, int
35 void ADIOI_NTFS_WriteContig(ADIO_File fd
, void *buf
, int count
,
36 MPI_Datatype datatype
, int file_ptr_type
,
37 ADIO_Offset offset
, ADIO_Status
*status
, int
39 void ADIOI_NTFS_IwriteContig(ADIO_File fd
, void *buf
, int count
,
40 MPI_Datatype datatype
, int file_ptr_type
,
41 ADIO_Offset offset
, ADIO_Request
*request
, int
43 void ADIOI_NTFS_IreadContig(ADIO_File fd
, void *buf
, int count
,
44 MPI_Datatype datatype
, int file_ptr_type
,
45 ADIO_Offset offset
, ADIO_Request
*request
, int
47 int ADIOI_NTFS_ReadDone(ADIO_Request
*request
, ADIO_Status
*status
, int
49 int ADIOI_NTFS_WriteDone(ADIO_Request
*request
, ADIO_Status
*status
, int
51 void ADIOI_NTFS_ReadComplete(ADIO_Request
*request
, ADIO_Status
*status
, int
53 void ADIOI_NTFS_WriteComplete(ADIO_Request
*request
, ADIO_Status
*status
,
55 void ADIOI_NTFS_Fcntl(ADIO_File fd
, int flag
, ADIO_Fcntl_t
*fcntl_struct
, int
57 void ADIOI_NTFS_IwriteStrided(ADIO_File fd
, void *buf
, int count
,
58 MPI_Datatype datatype
, int file_ptr_type
,
59 ADIO_Offset offset
, ADIO_Request
*request
, int
61 void ADIOI_NTFS_Flush(ADIO_File fd
, int *error_code
);
62 void ADIOI_NTFS_Resize(ADIO_File fd
, ADIO_Offset size
, int *error_code
);
64 #define FORMAT_MESSAGE_MIN_SIZE 100
65 #define ADIOI_NTFS_ERR_MSG_MAX FORMAT_MESSAGE_MIN_SIZE
66 void ADIOI_NTFS_Strerror(int error
, char *errMsg
, int errMsgLen
);