xref: /phasta/phSolver/common/phIO.h (revision fa18c5243221299308e719e7cfa85c9f753bb3b4)
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)
7*fa18c524SCameron Smith #define phio_writeheader FortranCInterface_GLOBAL_(phio_writeheader, PHIO_WRITEHEADER)
8f262839cSCameron Smith #define phio_readdatablock FortranCInterface_GLOBAL_(phio_readdatablock, PHIO_READDATABLOCK)
992bfab9aSCameron Smith #define phio_openfile_read FortranCInterface_GLOBAL_(phio_openfile_read, PHIO_OPENFILE_READ)
1092bfab9aSCameron Smith #define phio_openfile_write FortranCInterface_GLOBAL_(phio_openfile_write, PHIO_OPENFILE_WRITE)
1182f286aaSCameron Smith #define phio_restartname FortranCInterface_GLOBAL_(phio_restartname, PHIO_RESTARTNAME)
12a7c8a483SCameron Smith #define phio_closefile_read FortranCInterface_GLOBAL_(phio_closefile_read, PHIO_CLOSEFILE_READ)
13a7c8a483SCameron Smith #define phio_closefile_write FortranCInterface_GLOBAL_(phio_closefile_write, PHIO_CLOSEFILE_WRITE)
14d1293ce9SCameron Smith 
15d1293ce9SCameron Smith #ifdef __cplusplus
16d1293ce9SCameron Smith extern "C" {
17d1293ce9SCameron Smith #endif
18d1293ce9SCameron Smith   void phio_readheader(
19d1293ce9SCameron Smith       int* fileDescriptor,
20d1293ce9SCameron Smith       const  char keyphrase[],
21d1293ce9SCameron Smith       void* valueArray,
22d1293ce9SCameron Smith       int*  nItems,
23d1293ce9SCameron Smith       const char  datatype[],
24d1293ce9SCameron Smith       const char  iotype[] );
25*fa18c524SCameron Smith   void phio_writeheader(
26*fa18c524SCameron Smith       const int* fileDescriptor,
27*fa18c524SCameron Smith       const char keyphrase[],
28*fa18c524SCameron Smith       const void* valueArray,
29*fa18c524SCameron Smith       const int* nItems,
30*fa18c524SCameron Smith       const int* ndataItems,
31*fa18c524SCameron Smith       const char datatype[],
32*fa18c524SCameron Smith       const char iotype[] );
33f262839cSCameron Smith   void phio_readdatablock(
34f262839cSCameron Smith       int* fileDescriptor,
35f262839cSCameron Smith       const  char keyphrase[],
36f262839cSCameron Smith       void* valueArray,
37f262839cSCameron Smith       int*  nItems,
38f262839cSCameron Smith       const char  datatype[],
39f262839cSCameron Smith       const char  iotype[] );
4092bfab9aSCameron Smith   void phio_openfile_read(
4192bfab9aSCameron Smith       const char filename[],
4292bfab9aSCameron Smith       int* numFiles,
4392bfab9aSCameron Smith       int* fileDescriptor);
4492bfab9aSCameron Smith   void phio_openfile_write(
4592bfab9aSCameron Smith       const char filename[],
4682f286aaSCameron Smith       int* numFiles,
47ade0e30fSCameron Smith       int* numFields,
48ade0e30fSCameron Smith       int* numPPF,
4982f286aaSCameron Smith       int* fileDescriptor);
5082f286aaSCameron Smith   void phio_restartname(int* step, char* filename);
51a7c8a483SCameron Smith   void phio_closefile_read(int* fileDescriptor);
52a7c8a483SCameron Smith   void phio_closefile_write(int* fileDescriptor);
53d1293ce9SCameron Smith #ifdef __cplusplus
54d1293ce9SCameron Smith }
55d1293ce9SCameron Smith #endif
56d1293ce9SCameron Smith 
57d1293ce9SCameron Smith #endif
58d1293ce9SCameron Smith 
59