1
2
3
4
5
6
7 #ifndef AD_NFS_INCLUDE
8 #define AD_NFS_INCLUDE
9
10 #include "adio.h"
11
12 #include <unistd.h>
13 #include <sys/types.h>
14 #include <fcntl.h>
15
16 #ifdef HAVE_SIGNAL_H
17 #include <signal.h>
18 #endif
19 #ifdef HAVE_SYS_TYPES_H
20 #include <sys/types.h>
21 #endif
22 #ifdef HAVE_AIO_LITE_H
23 #include <aio-lite.h>
24 #else
25 #ifdef HAVE_AIO_H
26 #include <aio.h>
27 #endif
28 #ifdef HAVE_SYS_AIO_H
29 #include <sys/aio.h>
30 #endif
31 #endif
32
33
34
35 #if !defined(__REDIRECT) && defined(__USE_FILE_OFFSET64)
36 #define aiocb aiocb64
37 #endif
38
39 int ADIOI_NFS_aio(ADIO_File fd, void *buf, int len, ADIO_Offset offset,
40 int wr, MPI_Request *request);
41
42 #ifdef SX4
43 #define lseek llseek
44 #endif
45
46 void ADIOI_NFS_Open(ADIO_File fd, int *error_code);
47 void ADIOI_NFS_ReadContig(ADIO_File fd, void *buf, int count,
48 MPI_Datatype datatype, int file_ptr_type,
49 ADIO_Offset offset, ADIO_Status *status, int
50 *error_code);
51 void ADIOI_NFS_WriteContig(ADIO_File fd, const void *buf, int count,
52 MPI_Datatype datatype, int file_ptr_type,
53 ADIO_Offset offset, ADIO_Status *status, int
54 *error_code);
55 void ADIOI_NFS_IwriteContig(ADIO_File fd, void *buf, int count,
56 MPI_Datatype datatype, int file_ptr_type,
57 ADIO_Offset offset, ADIO_Request *request, int
58 *error_code);
59 void ADIOI_NFS_IreadContig(ADIO_File fd, void *buf, int count,
60 MPI_Datatype datatype, int file_ptr_type,
61 ADIO_Offset offset, ADIO_Request *request, int
62 *error_code);
63 int ADIOI_NFS_ReadDone(ADIO_Request *request, ADIO_Status *status, int
64 *error_code);
65 int ADIOI_NFS_WriteDone(ADIO_Request *request, ADIO_Status *status, int
66 *error_code);
67 void ADIOI_NFS_ReadComplete(ADIO_Request *request, ADIO_Status *status, int
68 *error_code);
69 void ADIOI_NFS_WriteComplete(ADIO_Request *request, ADIO_Status *status,
70 int *error_code);
71 void ADIOI_NFS_Fcntl(ADIO_File fd, int flag, ADIO_Fcntl_t *fcntl_struct, int
72 *error_code);
73 void ADIOI_NFS_WriteStrided(ADIO_File fd, const void *buf, int count,
74 MPI_Datatype datatype, int file_ptr_type,
75 ADIO_Offset offset, ADIO_Status *status, int
76 *error_code);
77 void ADIOI_NFS_ReadStrided(ADIO_File fd, void *buf, int count,
78 MPI_Datatype datatype, int file_ptr_type,
79 ADIO_Offset offset, ADIO_Status *status, int
80 *error_code);
81 void ADIOI_NFS_SetInfo(ADIO_File fd, MPI_Info users_info, int *error_code);
82 void ADIOI_NFS_Get_shared_fp(ADIO_File fd, ADIO_Offset size, ADIO_Offset *shared_fp,
83 int *error_code);
84 void ADIOI_NFS_Set_shared_fp(ADIO_File fd, ADIO_Offset offset, int *error_code);
85 void ADIOI_NFS_Resize(ADIO_File fd, ADIO_Offset size, int *error_code);
86 int ADIOI_NFS_Feature(ADIO_File fd, int feature_flag);
87
88 #endif