1e5afe575SCameron Smith module phio 2e5afe575SCameron Smith interface 3e5afe575SCameron Smith subroutine phio_openfile_read(fname, nfiles, handle) 4e5afe575SCameron Smith & bind(C, NAME='phio_openfile_read') 5e5afe575SCameron Smith use :: iso_c_binding 6e5afe575SCameron Smith character(c_char), intent(in) :: fname(*) 7e5afe575SCameron Smith integer(c_int), intent(in) :: nfiles 8e5afe575SCameron Smith type(c_ptr) :: handle 9e5afe575SCameron Smith end subroutine 10e5afe575SCameron Smith end interface 11e5afe575SCameron Smith interface 12*5be7d1a3SCameron Smith subroutine phio_openfile_write(fname, nfiles, nfields, 13*5be7d1a3SCameron Smith & nppf, handle) 14*5be7d1a3SCameron Smith & bind(C, NAME='phio_openfile_write') 15*5be7d1a3SCameron Smith use :: iso_c_binding 16*5be7d1a3SCameron Smith character(c_char), intent(in) :: fname(*) 17*5be7d1a3SCameron Smith integer(c_int), intent(in) :: nfiles 18*5be7d1a3SCameron Smith integer(c_int), intent(in) :: nfields 19*5be7d1a3SCameron Smith integer(c_int), intent(in) :: nppf 20*5be7d1a3SCameron Smith type(c_ptr) :: handle 21*5be7d1a3SCameron Smith end subroutine 22*5be7d1a3SCameron Smith end interface 23*5be7d1a3SCameron Smith interface 24e5afe575SCameron Smith subroutine phio_closefile_read(handle) 25e5afe575SCameron Smith & bind(C, NAME='phio_closefile_read') 26e5afe575SCameron Smith use :: iso_c_binding 27e5afe575SCameron Smith type(c_ptr), value :: handle 28e5afe575SCameron Smith end subroutine 29e5afe575SCameron Smith end interface 30e5afe575SCameron Smith interface 31*5be7d1a3SCameron Smith subroutine phio_closefile_write(handle) 32*5be7d1a3SCameron Smith & bind(C, NAME='phio_closefile_write') 33*5be7d1a3SCameron Smith use :: iso_c_binding 34*5be7d1a3SCameron Smith type(c_ptr), value :: handle 35*5be7d1a3SCameron Smith end subroutine 36*5be7d1a3SCameron Smith end interface 37*5be7d1a3SCameron Smith interface 38e5afe575SCameron Smith subroutine phio_readheader(handle, phrase, vals, nvals, 39e5afe575SCameron Smith & datatype, iotype) 40e5afe575SCameron Smith & bind(C, NAME='phio_readheader') 41e5afe575SCameron Smith use :: iso_c_binding 42e5afe575SCameron Smith type(c_ptr), value :: handle 43e5afe575SCameron Smith character(c_char), intent(in) :: phrase(*) 44e5afe575SCameron Smith type(c_ptr), value :: vals 45e5afe575SCameron Smith integer(c_int), intent(in) :: nvals 46e5afe575SCameron Smith character(c_char), intent(in) :: datatype(*) 47e5afe575SCameron Smith character(c_char), intent(in) :: iotype(*) 48e5afe575SCameron Smith end subroutine 49e5afe575SCameron Smith end interface 50bc62cfd4SCameron Smith interface 51*5be7d1a3SCameron Smith subroutine phio_writeheader(handle, phrase, vals, nitems, ndata, 52*5be7d1a3SCameron Smith & datatype, iotype) 53*5be7d1a3SCameron Smith & bind(C, NAME='phio_writeheader') 54*5be7d1a3SCameron Smith use :: iso_c_binding 55*5be7d1a3SCameron Smith type(c_ptr), value :: handle 56*5be7d1a3SCameron Smith character(c_char), intent(in) :: phrase(*) 57*5be7d1a3SCameron Smith type(c_ptr), value :: vals 58*5be7d1a3SCameron Smith integer(c_int), intent(in) :: nitems 59*5be7d1a3SCameron Smith integer(c_int), intent(in) :: ndata 60*5be7d1a3SCameron Smith character(c_char), intent(in) :: datatype(*) 61*5be7d1a3SCameron Smith character(c_char), intent(in) :: iotype(*) 62*5be7d1a3SCameron Smith end subroutine 63*5be7d1a3SCameron Smith end interface 64*5be7d1a3SCameron Smith interface 65bc62cfd4SCameron Smith subroutine phio_readdatablock(handle, phrase, vals, nvals, 66bc62cfd4SCameron Smith & datatype, iotype) 67bc62cfd4SCameron Smith & bind(C, NAME='phio_readdatablock') 68bc62cfd4SCameron Smith use :: iso_c_binding 69bc62cfd4SCameron Smith type(c_ptr), value :: handle 70bc62cfd4SCameron Smith character(c_char), intent(in) :: phrase(*) 71bc62cfd4SCameron Smith type(c_ptr), value :: vals 72bc62cfd4SCameron Smith integer(c_int), intent(in) :: nvals 73bc62cfd4SCameron Smith character(c_char), intent(in) :: datatype(*) 74bc62cfd4SCameron Smith character(c_char), intent(in) :: iotype(*) 75bc62cfd4SCameron Smith end subroutine 76bc62cfd4SCameron Smith end interface 77*5be7d1a3SCameron Smith interface 78*5be7d1a3SCameron Smith subroutine phio_writedatablock(handle, phrase, vals, nvals, 79*5be7d1a3SCameron Smith & datatype, iotype) 80*5be7d1a3SCameron Smith & bind(C, NAME='phio_writedatablock') 81*5be7d1a3SCameron Smith use :: iso_c_binding 82*5be7d1a3SCameron Smith type(c_ptr), value :: handle 83*5be7d1a3SCameron Smith character(c_char), intent(in) :: phrase(*) 84*5be7d1a3SCameron Smith type(c_ptr), value :: vals 85*5be7d1a3SCameron Smith integer(c_int), intent(in) :: nvals 86*5be7d1a3SCameron Smith character(c_char), intent(in) :: datatype(*) 87*5be7d1a3SCameron Smith character(c_char), intent(in) :: iotype(*) 88*5be7d1a3SCameron Smith end subroutine 89*5be7d1a3SCameron Smith end interface 90e5afe575SCameron Smith end module 91