1*064bab1dSCameron Smith #include <stdio.h> 2*064bab1dSCameron Smith #include <stdlib.h> 3*064bab1dSCameron Smith #include <string> 4d1293ce9SCameron Smith #include "phIO.h" 5d1293ce9SCameron Smith #include "phComm.h" 6*064bab1dSCameron Smith #include "phio_base.h" 7*064bab1dSCameron Smith #include "phio_sync.h" 8*064bab1dSCameron Smith #include "phio_posix.h" 9f262839cSCameron Smith 1082f286aaSCameron Smith void phio_readheader( 11*064bab1dSCameron Smith phio_fp f, 12d1293ce9SCameron Smith const char keyphrase[], 13d1293ce9SCameron Smith void* valueArray, 14d1293ce9SCameron Smith int* nItems, 15d1293ce9SCameron Smith const char datatype[], 16d1293ce9SCameron Smith const char iotype[] ) { 17*064bab1dSCameron Smith f->ops->readheader(f->file, keyphrase, valueArray, 18*064bab1dSCameron Smith nItems, datatype, iotype); 19d1293ce9SCameron Smith } 20fa18c524SCameron Smith void phio_writeheader( 21fa18c524SCameron Smith const int* fileDescriptor, 22fa18c524SCameron Smith const char keyphrase[], 23fa18c524SCameron Smith const void* valueArray, 24fa18c524SCameron Smith const int* nItems, 25fa18c524SCameron Smith const int* ndataItems, 26fa18c524SCameron Smith const char datatype[], 27fa18c524SCameron Smith const char iotype[] ) { 28fa18c524SCameron Smith } 29f262839cSCameron Smith void phio_readdatablock( 30*064bab1dSCameron Smith phio_fp f, 31f262839cSCameron Smith const char keyphrase[], 32f262839cSCameron Smith void* valueArray, 33f262839cSCameron Smith int* nItems, 34f262839cSCameron Smith const char datatype[], 35f262839cSCameron Smith const char iotype[] ) { 36*064bab1dSCameron Smith f->ops->readdatablock(f->file, keyphrase, valueArray, 37*064bab1dSCameron Smith nItems, datatype, iotype); 38f262839cSCameron Smith } 3966a3fa2cSCameron Smith void phio_writedatablock( 4066a3fa2cSCameron Smith const int* fileDescriptor, 4166a3fa2cSCameron Smith const char keyphrase[], 4266a3fa2cSCameron Smith const void* valueArray, 4366a3fa2cSCameron Smith const int* nItems, 4466a3fa2cSCameron Smith const char datatype[], 4566a3fa2cSCameron Smith const char iotype[]) { 4666a3fa2cSCameron Smith } 4792bfab9aSCameron Smith void phio_openfile_read( 4882f286aaSCameron Smith const char filename[], 4992bfab9aSCameron Smith int* numFiles, 50*064bab1dSCameron Smith phio_fp* fileDescriptor) { 51*064bab1dSCameron Smith std::string fn(filename); 52*064bab1dSCameron Smith std::string syncSuffix("-dat"); 53*064bab1dSCameron Smith std::string posixSuffix(".dat"); 54*064bab1dSCameron Smith if( fn.find(syncSuffix) != std::string::npos ) 55*064bab1dSCameron Smith sync_openfile_read(filename, numFiles, fileDescriptor); 56*064bab1dSCameron Smith else if( fn.find(posixSuffix) != std::string::npos ) 57*064bab1dSCameron Smith posix_openfile_read(filename, numFiles, fileDescriptor); 58*064bab1dSCameron Smith else { 59*064bab1dSCameron Smith fprintf(stderr, 60*064bab1dSCameron Smith "type of file %s is unknown... exiting\n", filename); 61*064bab1dSCameron Smith exit(1); 6292bfab9aSCameron Smith } 63*064bab1dSCameron Smith } 6492bfab9aSCameron Smith void phio_openfile_write( 6592bfab9aSCameron Smith const char filename[], 6682f286aaSCameron Smith int* numFiles, 67ade0e30fSCameron Smith int* numFields, 68ade0e30fSCameron Smith int* numPPF, 6982f286aaSCameron Smith int* fileDescriptor) { 7082f286aaSCameron Smith } 7182f286aaSCameron Smith void phio_restartname(int* step, char* filename) { 7282f286aaSCameron Smith } 73*064bab1dSCameron Smith void phio_closefile_read(phio_fp f) { 74*064bab1dSCameron Smith f->ops->closefile_read(f); 75a7c8a483SCameron Smith } 76a7c8a483SCameron Smith void phio_closefile_write(int* fileDescriptor) { 77a7c8a483SCameron Smith } 78*064bab1dSCameron Smith 79