1
0
mirror of https://github.com/TREX-CoE/trexio.git synced 2024-12-23 12:56:53 +01:00

Add trexio_set_one_based in fortran interface

This commit is contained in:
Anthony Scemama 2021-06-04 15:00:13 +02:00
parent 77f2858548
commit 4549276e86

View File

@ -612,6 +612,15 @@ trexio_exit_code trexio_set_one_based(trexio_t* file)
} }
#+end_src #+end_src
#+begin_src f90 :tangle prefix_fortran.f90
interface
integer function trexio_set_one_based(trex_file) bind(C)
use, intrinsic :: iso_c_binding
integer(8), intent(in), value :: trex_file
end function trexio_open_c
end interface
#+end_src
** File closing ** File closing
~trexio_close~ closes an existing ~trexio_t~ file. ~trexio_close~ closes an existing ~trexio_t~ file.
@ -1554,10 +1563,20 @@ contains
character(len=*) :: filename character(len=*) :: filename
character, intent(in), value :: mode character, intent(in), value :: mode
integer, intent(in), value :: backend integer, intent(in), value :: backend
character(len=len_trim(filename)+1) :: filename_c character(len=len_trim(filename)+1) :: filename_c
integer :: rc
filename_c = trim(filename) // c_null_char filename_c = trim(filename) // c_null_char
trexio_open = trexio_open_c(filename_c, mode, backend) trexio_open = trexio_open_c(filename_c, mode, backend)
if (trexio_open == 0_8) then
return
endif
rc = trexio_set_one_based(trexio_open)
if (rc /= TREXIO_SUCCESS) then
call trexio_close(trexio_open)
trexio_open = 0_8
endif
end function trexio_open end function trexio_open
#+end_src #+end_src