xref: /phasta/phSolver/common/phIO.f (revision 7acde132a6def0fe2daaec0d1a712dff0e5c6636)
1e5afe575SCameron Smith      module phio
2d5d2f64dSCameron Smith      use :: iso_c_binding
3d5d2f64dSCameron Smith      type(c_ptr) :: fhandle
4e5afe575SCameron Smith      interface
5ab645d52SCameron Smith        subroutine phio_openfile(fname, handle)
6ab645d52SCameron Smith     &   bind(C, NAME='phio_openfile')
7e5afe575SCameron Smith        use :: iso_c_binding
8e5afe575SCameron Smith          character(c_char), intent(in) :: fname(*)
9e5afe575SCameron Smith          type(c_ptr), value :: handle
10e5afe575SCameron Smith        end subroutine
11e5afe575SCameron Smith      end interface
12e5afe575SCameron Smith      interface
13ab645d52SCameron Smith        subroutine phio_closefile(handle)
14ab645d52SCameron Smith     &   bind(C, NAME='phio_closefile')
155be7d1a3SCameron Smith        use :: iso_c_binding
165be7d1a3SCameron Smith          type(c_ptr), value :: handle
175be7d1a3SCameron Smith        end subroutine
185be7d1a3SCameron Smith      end interface
195be7d1a3SCameron Smith      interface
20e5afe575SCameron Smith        subroutine phio_readheader(handle, phrase, vals, nvals,
21e5afe575SCameron Smith     &                             datatype, iotype)
22e5afe575SCameron Smith     &   bind(C, NAME='phio_readheader')
23e5afe575SCameron Smith        use :: iso_c_binding
24e5afe575SCameron Smith          type(c_ptr), value :: handle
25e5afe575SCameron Smith          character(c_char), intent(in) :: phrase(*)
26e5afe575SCameron Smith          type(c_ptr), value :: vals
27e5afe575SCameron Smith          integer(c_int), intent(in) :: nvals
28e5afe575SCameron Smith          character(c_char), intent(in) :: datatype(*)
29e5afe575SCameron Smith          character(c_char), intent(in) :: iotype(*)
30e5afe575SCameron Smith        end subroutine
31e5afe575SCameron Smith      end interface
32bc62cfd4SCameron Smith      interface
335be7d1a3SCameron Smith        subroutine phio_writeheader(handle, phrase, vals, nitems, ndata,
345be7d1a3SCameron Smith     &                             datatype, iotype)
355be7d1a3SCameron Smith     &   bind(C, NAME='phio_writeheader')
365be7d1a3SCameron Smith        use :: iso_c_binding
375be7d1a3SCameron Smith          type(c_ptr), value :: handle
385be7d1a3SCameron Smith          character(c_char), intent(in) :: phrase(*)
395be7d1a3SCameron Smith          type(c_ptr), value :: vals
405be7d1a3SCameron Smith          integer(c_int), intent(in) :: nitems
415be7d1a3SCameron Smith          integer(c_int), intent(in) :: ndata
425be7d1a3SCameron Smith          character(c_char), intent(in) :: datatype(*)
435be7d1a3SCameron Smith          character(c_char), intent(in) :: iotype(*)
445be7d1a3SCameron Smith        end subroutine
455be7d1a3SCameron Smith      end interface
465be7d1a3SCameron Smith      interface
47bc62cfd4SCameron Smith        subroutine phio_readdatablock(handle, phrase, vals, nvals,
48bc62cfd4SCameron Smith     &                                datatype, iotype)
49bc62cfd4SCameron Smith     &   bind(C, NAME='phio_readdatablock')
50bc62cfd4SCameron Smith        use :: iso_c_binding
51bc62cfd4SCameron Smith          type(c_ptr), value :: handle
52bc62cfd4SCameron Smith          character(c_char), intent(in) :: phrase(*)
53bc62cfd4SCameron Smith          type(c_ptr), value :: vals
54bc62cfd4SCameron Smith          integer(c_int), intent(in) :: nvals
55bc62cfd4SCameron Smith          character(c_char), intent(in) :: datatype(*)
56bc62cfd4SCameron Smith          character(c_char), intent(in) :: iotype(*)
57bc62cfd4SCameron Smith        end subroutine
58bc62cfd4SCameron Smith      end interface
595be7d1a3SCameron Smith      interface
605be7d1a3SCameron Smith        subroutine phio_writedatablock(handle, phrase, vals, nvals,
615be7d1a3SCameron Smith     &                                datatype, iotype)
625be7d1a3SCameron Smith     &   bind(C, NAME='phio_writedatablock')
635be7d1a3SCameron Smith        use :: iso_c_binding
645be7d1a3SCameron Smith          type(c_ptr), value :: handle
655be7d1a3SCameron Smith          character(c_char), intent(in) :: phrase(*)
665be7d1a3SCameron Smith          type(c_ptr), value :: vals
675be7d1a3SCameron Smith          integer(c_int), intent(in) :: nvals
685be7d1a3SCameron Smith          character(c_char), intent(in) :: datatype(*)
695be7d1a3SCameron Smith          character(c_char), intent(in) :: iotype(*)
705be7d1a3SCameron Smith        end subroutine
715be7d1a3SCameron Smith      end interface
7236adee64SCameron Smith      interface
73e81a6dc1SCameron Smith        subroutine phio_appendInt(str, val)
74e81a6dc1SCameron Smith     &   bind(C, NAME='phio_appendInt')
7536adee64SCameron Smith        use :: iso_c_binding
7636adee64SCameron Smith          character(c_char) :: str(*)
7736adee64SCameron Smith          integer(c_int), value, intent(in) :: val
7836adee64SCameron Smith        end subroutine
7936adee64SCameron Smith      end interface
80d7abaf6cSCameron Smith      interface
81*a93de25bSCameron Smith        subroutine phio_constructName(handle, inName, outName)
82d7abaf6cSCameron Smith     &   bind(C, NAME='phio_constructName')
83d7abaf6cSCameron Smith        use :: iso_c_binding
84*a93de25bSCameron Smith          type(c_ptr), value :: handle
85d7abaf6cSCameron Smith          character(c_char) :: inName(*)
86d7abaf6cSCameron Smith          character(c_char) :: outName(*)
87d7abaf6cSCameron Smith        end subroutine
88d7abaf6cSCameron Smith      end interface
89d7abaf6cSCameron Smith
90e5afe575SCameron Smith      end module
91