xref: /phasta/phSolver/common/test/phIOposixMultiTopo.cc (revision b184aa6d5f1801601db0504e0b81ab0f6416a9a2)
1*b184aa6dSCameron Smith #include <mpi.h>
2*b184aa6dSCameron Smith #include <stdio.h>
3*b184aa6dSCameron Smith #include <stdlib.h>
4*b184aa6dSCameron Smith #include <unistd.h>
5*b184aa6dSCameron Smith #include "phIO.h"
6*b184aa6dSCameron Smith #include "syncio.h"
7*b184aa6dSCameron Smith #include "posixio.h"
8*b184aa6dSCameron Smith 
9*b184aa6dSCameron Smith int main(int argc, char* argv[]) {
10*b184aa6dSCameron Smith   MPI_Init(&argc,&argv);
11*b184aa6dSCameron Smith   int rank;
12*b184aa6dSCameron Smith   MPI_Comm_rank(MPI_COMM_WORLD, &rank);
13*b184aa6dSCameron Smith   const char* iotype = "binary";
14*b184aa6dSCameron Smith   int seven = 7;
15*b184aa6dSCameron Smith   int headerData[7] = {0,0,0,0,0,0,0};
16*b184aa6dSCameron Smith   int blocksRead = 0;
17*b184aa6dSCameron Smith   phio_fp file;
18*b184aa6dSCameron Smith   posixio_setup(&file, 'r');
19*b184aa6dSCameron Smith   phio_openfile("geombc.dat.", file);
20*b184aa6dSCameron Smith   MPI_Barrier(MPI_COMM_WORLD);
21*b184aa6dSCameron Smith   do {
22*b184aa6dSCameron Smith     phio_readheader(file, "connectivity interior",
23*b184aa6dSCameron Smith         headerData, &seven, "integer", iotype);
24*b184aa6dSCameron Smith     fprintf(stderr, "rank %d data[0] %d\n", rank, headerData[0]);
25*b184aa6dSCameron Smith     blocksRead += (headerData[0] > 0);
26*b184aa6dSCameron Smith   } while( headerData[0] > 0 );
27*b184aa6dSCameron Smith   phio_closefile(file);
28*b184aa6dSCameron Smith   MPI_Barrier(MPI_COMM_WORLD);
29*b184aa6dSCameron Smith   fprintf(stderr, "rank %d number of blocks read %d\n", rank, blocksRead);
30*b184aa6dSCameron Smith   MPI_Finalize();
31*b184aa6dSCameron Smith   return (blocksRead==2);
32*b184aa6dSCameron Smith }
33