1 #ifndef EAF_H
2 #define EAF_H
3 
4 #if 0
5 /* This section used by both C and Fortran */
6 #endif
7 
8 #define   EAF_RW -1
9 #define   EAF_W  -2
10 #define   EAF_R  -3
11 
12 #ifndef EAF_FORTRAN
13 
14 /* This section used by only C */
15 
16 /* This to ensure size_t is defined */
17 #include <stdio.h>
18 #include <sys/types.h>
19 
20 typedef double eaf_off_t;
21 
22 int  EAF_Aread(int fd, eaf_off_t offset, void *buf, size_t bytes, int *req_id);
23 int  EAF_Awrite(int fd, eaf_off_t offset, const void *buf, size_t bytes, int *req_id);
24 int  EAF_Close(int fd);
25 int  EAF_Delete(const char *fname);
26 int  EAF_Eof(int code);
27 void EAF_Errmsg(int code, char *msg);
28 int  EAF_Length(int fd, eaf_off_t *length);
29 int  EAF_Length(int fd, eaf_off_t *length);
30 int  EAF_Open(const char *fname, int type, int *fd);
31 void EAF_Print_stats(int fd);
32 int  EAF_Probe(int id, int *status);
33 int  EAF_Read(int fd, eaf_off_t offset, void *buf, size_t bytes);
34 int  EAF_Stat(const char *path, long *avail_kb, char *fstype, int fslen);
35 int  EAF_Truncate(int fd, eaf_off_t length);
36 int  EAF_Wait(int fd, int id);
37 int  EAF_Write(int fd, eaf_off_t offset, const void *buf, size_t bytes);
38 
39 #endif
40 #endif
41