SIONlib  1.7.7
Scalable I/O library for parallel access to task-local files
sion_f90_omp.F90
1 !*****************************************************************************
2 !** SIONLIB http://www.fz-juelich.de/jsc/sionlib **
3 !*****************************************************************************
4 !** Copyright (c) 2008-2019 **
5 !** Forschungszentrum Juelich, Juelich Supercomputing Centre **
6 !** **
7 !** See the file COPYRIGHT in the package base directory for details **
8 !*****************************************************************************
9 
10 !*****************************************************************************
11 !** Module file of Fortran 90 OpenMP interface to SIONlib **
12 !*****************************************************************************
13 !*
14 !* @file sion_f90.f90
15 !*
16 !* @brief Fortran90 interface
17 !*
18 !* @author Florian Janetzko
19 !* @date 05.07.2013
20 !*
21 module sion_f90_omp
22  use sion_f90
23 
24  implicit none
25 
26 
27 !***********************************************
28 !* Fortran interface subroutines and functions *
29 !***********************************************
30 contains
31 ! Subroutines (without overloading)
32  subroutine fsion_paropen_omp(fname,file_mode,chunksizes,fsblksize,globalranks,newfname,sid)
33 
34  implicit none
35 
36  character(len=*), intent(in) :: fname
37  character(len=*), intent(inout) :: file_mode
38  integer*8, intent(inout) :: chunksizes
39  integer*4, intent(inout) :: fsblksize
40  integer, intent(inout) :: globalranks
41  character(len=*), intent(out) :: newfname
42  integer, intent(out) :: sid
43 
44  call fsion_paropen_omp_c(fname,file_mode,chunksizes,fsblksize,globalranks,newfname,sid)
45  end subroutine fsion_paropen_omp
46 
47  subroutine fsion_parclose_omp(sid,ierr)
48 
49  implicit none
50 
51  integer, intent(in) :: sid
52  integer, intent(out) :: ierr
53 
54  call fsion_parclose_omp_c(sid,ierr)
55  end subroutine fsion_parclose_omp
56 
57 end module sion_f90_omp
void fsion_paropen_omp_c(char *fname, char *file_mode, sion_int64 *chunksize, sion_int32 *fsblksize, int *globalrank, char *newfname, int *sid, int fname_len, int file_mode_len, int newfname_len)
Fortran wrapper function that calls sion_paropen_omp.
void fsion_parclose_omp_c(int *sid, int *ierr)
Fortran procedure to close a sion file opened with OpenMP in parallel.