xref: /phasta/phSolver/common/phIO.h (revision 66a3fa2cf7e805954547589463a2a908fd97bfd3)
1d1293ce9SCameron Smith #ifndef PHSOLVER_PHIO_H
2d1293ce9SCameron Smith #define PHSOLVER_PHIO_H
3d1293ce9SCameron Smith 
4d1293ce9SCameron Smith #include <FCMangle.h>
5d1293ce9SCameron Smith 
6d1293ce9SCameron Smith #define phio_readheader FortranCInterface_GLOBAL_(phio_readheader, PHIO_READHEADER)
7fa18c524SCameron Smith #define phio_writeheader FortranCInterface_GLOBAL_(phio_writeheader, PHIO_WRITEHEADER)
8f262839cSCameron Smith #define phio_readdatablock FortranCInterface_GLOBAL_(phio_readdatablock, PHIO_READDATABLOCK)
9*66a3fa2cSCameron Smith #define phio_writedatablock FortranCInterface_GLOBAL_(phio_writedatablock, PHIO_WRITEDATABLOCK)
1092bfab9aSCameron Smith #define phio_openfile_read FortranCInterface_GLOBAL_(phio_openfile_read, PHIO_OPENFILE_READ)
1192bfab9aSCameron Smith #define phio_openfile_write FortranCInterface_GLOBAL_(phio_openfile_write, PHIO_OPENFILE_WRITE)
1282f286aaSCameron Smith #define phio_restartname FortranCInterface_GLOBAL_(phio_restartname, PHIO_RESTARTNAME)
13a7c8a483SCameron Smith #define phio_closefile_read FortranCInterface_GLOBAL_(phio_closefile_read, PHIO_CLOSEFILE_READ)
14a7c8a483SCameron Smith #define phio_closefile_write FortranCInterface_GLOBAL_(phio_closefile_write, PHIO_CLOSEFILE_WRITE)
15d1293ce9SCameron Smith 
16d1293ce9SCameron Smith #ifdef __cplusplus
17d1293ce9SCameron Smith extern "C" {
18d1293ce9SCameron Smith #endif
19d1293ce9SCameron Smith   void phio_readheader(
20d1293ce9SCameron Smith       int* fileDescriptor,
21d1293ce9SCameron Smith       const  char keyphrase[],
22d1293ce9SCameron Smith       void* valueArray,
23d1293ce9SCameron Smith       int*  nItems,
24d1293ce9SCameron Smith       const char  datatype[],
25d1293ce9SCameron Smith       const char  iotype[] );
26fa18c524SCameron Smith   void phio_writeheader(
27fa18c524SCameron Smith       const int* fileDescriptor,
28fa18c524SCameron Smith       const char keyphrase[],
29fa18c524SCameron Smith       const void* valueArray,
30fa18c524SCameron Smith       const int* nItems,
31fa18c524SCameron Smith       const int* ndataItems,
32fa18c524SCameron Smith       const char datatype[],
33fa18c524SCameron Smith       const char iotype[] );
34f262839cSCameron Smith   void phio_readdatablock(
35f262839cSCameron Smith       int* fileDescriptor,
36f262839cSCameron Smith       const  char keyphrase[],
37f262839cSCameron Smith       void* valueArray,
38f262839cSCameron Smith       int*  nItems,
39f262839cSCameron Smith       const char  datatype[],
40f262839cSCameron Smith       const char  iotype[] );
41*66a3fa2cSCameron Smith   void phio_writedatablock(
42*66a3fa2cSCameron Smith       const int* fileDescriptor,
43*66a3fa2cSCameron Smith       const char keyphrase[],
44*66a3fa2cSCameron Smith       const void* valueArray,
45*66a3fa2cSCameron Smith       const int* nItems,
46*66a3fa2cSCameron Smith       const char datatype[],
47*66a3fa2cSCameron Smith       const char iotype[]);
4892bfab9aSCameron Smith   void phio_openfile_read(
4992bfab9aSCameron Smith       const char filename[],
5092bfab9aSCameron Smith       int* numFiles,
5192bfab9aSCameron Smith       int* fileDescriptor);
5292bfab9aSCameron Smith   void phio_openfile_write(
5392bfab9aSCameron Smith       const char filename[],
5482f286aaSCameron Smith       int* numFiles,
55ade0e30fSCameron Smith       int* numFields,
56ade0e30fSCameron Smith       int* numPPF,
5782f286aaSCameron Smith       int* fileDescriptor);
5882f286aaSCameron Smith   void phio_restartname(int* step, char* filename);
59a7c8a483SCameron Smith   void phio_closefile_read(int* fileDescriptor);
60a7c8a483SCameron Smith   void phio_closefile_write(int* fileDescriptor);
61d1293ce9SCameron Smith #ifdef __cplusplus
62d1293ce9SCameron Smith }
63d1293ce9SCameron Smith #endif
64d1293ce9SCameron Smith 
65d1293ce9SCameron Smith #endif
66d1293ce9SCameron Smith 
67