1 #ifndef PHSOLVER_PHIO_H 2 #define PHSOLVER_PHIO_H 3 4 #include <FCMangle.h> 5 6 #ifdef __cplusplus 7 extern "C" { 8 #endif 9 typedef struct phio_file* phio_fp; 10 void phio_openfile( 11 const char filename[], 12 phio_fp fileDescriptor); 13 void phio_closefile(phio_fp fileDescriptor); 14 void phio_readheader( 15 phio_fp fileDescriptor, 16 const char keyphrase[], 17 void* valueArray, 18 int* nItems, 19 const char datatype[], 20 const char iotype[] ); 21 void phio_writeheader( 22 phio_fp fileDescriptor, 23 const char keyphrase[], 24 const void* valueArray, 25 const int* nItems, 26 const int* ndataItems, 27 const char datatype[], 28 const char iotype[] ); 29 void phio_readdatablock( 30 phio_fp fileDescriptor, 31 const char keyphrase[], 32 void* valueArray, 33 int* nItems, 34 const char datatype[], 35 const char iotype[] ); 36 void phio_writedatablock( 37 phio_fp fileDescriptor, 38 const char keyphrase[], 39 const void* valueArray, 40 const int* nItems, 41 const char datatype[], 42 const char iotype[]); 43 typedef enum {PHIO_SYNC,PHIO_POSIX,PHIO_STREAM} phio_format; 44 void phio_constructName( 45 phio_format format, 46 const char* inName, 47 const char* outName); 48 void phio_appendStep(char* dest, int v); 49 #ifdef __cplusplus 50 } 51 #endif 52 53 #endif 54 55