Commit 65a5b956 authored by Thomas Jahns's avatar Thomas Jahns 🤸
Browse files

Update generated files.

parent 270f330a
! This file was automatically generated, don't edit! ! This file was automatically generated, don't edit!
! !
! Fortran interface for CDI library version 1.8.1 ! Fortran interface for CDI library version 1.9.3
! !
! Author: ! Author:
! ------- ! -------
! Uwe Schulzweida, MPI-MET, Hamburg, April 2017 ! Uwe Schulzweida, MPI-MET, Hamburg, January 2018
! !
! !
......
...@@ -10,6 +10,9 @@ ...@@ -10,6 +10,9 @@
#if defined (HAVE_CF_INTERFACE) #if defined (HAVE_CF_INTERFACE)
#include <limits.h>
#include <assert.h>
#if ! defined (__CFORTRAN_LOADED) #if ! defined (__CFORTRAN_LOADED)
# if defined __clang__ # if defined __clang__
# pragma GCC diagnostic push # pragma GCC diagnostic push
...@@ -26,6 +29,13 @@ ...@@ -26,6 +29,13 @@
# pragma GCC diagnostic ignored "-Wmissing-prototypes" # pragma GCC diagnostic ignored "-Wmissing-prototypes"
#endif #endif
static
int size_t_c2f(size_t value_size_t)
{
assert(value_size_t < INT_MAX);
return (int) value_size_t;
}
/* parallel IO IOMode */ /* parallel IO IOMode */
...@@ -55,14 +65,14 @@ static int cdiPioInit_fwrap(int commSuper, int confResH, int *pioNamespace) ...@@ -55,14 +65,14 @@ static int cdiPioInit_fwrap(int commSuper, int confResH, int *pioNamespace)
FCALLSCFUN3 (INT, cdiPioInit_fwrap, CDIPIOINIT, cdipioinit, INT, INT, PINT) FCALLSCFUN3 (INT, cdiPioInit_fwrap, CDIPIOINIT, cdipioinit, INT, INT, PINT)
FCALLSCSUB0 (pioWriteTimestep, PIOWRITETIMESTEP, piowritetimestep) FCALLSCSUB0 (pioWriteTimestep, PIOWRITETIMESTEP, piowritetimestep)
FCALLSCSUB0 (cdiPioRDMAProgress, CDIPIORDMAPROGRESS, cdipiordmaprogress) FCALLSCSUB0 (cdiPioRDMAProgress, CDIPIORDMAPROGRESS, cdipiordmaprogress)
static void streamWriteVarPart_fwrap(int streamID, int varID, const void *data, size_t nmiss, void *partDesc) static void streamWriteVarPart_fwrap(int streamID, int varID, const void *data, int nmiss, void *partDesc)
{ {
streamWriteVarPart(streamID, varID, data, nmiss, (*(Xt_idxlist *)partDesc)); streamWriteVarPart(streamID, varID, data, (size_t)nmiss, (*(Xt_idxlist *)partDesc));
} }
FCALLSCSUB5 (streamWriteVarPart_fwrap, STREAMWRITEVARPART, streamwritevarpart, INT, INT, PVOID, INT, PVOID) FCALLSCSUB5 (streamWriteVarPart_fwrap, STREAMWRITEVARPART, streamwritevarpart, INT, INT, PVOID, INT, PVOID)
static void streamWriteScatteredVarPart_fwrap(int streamID, int varID, const void *data, int numBlocks, const int blocklengths[], const int displacements[], size_t nmiss, void *partDesc) static void streamWriteScatteredVarPart_fwrap(int streamID, int varID, const void *data, int numBlocks, const int blocklengths[], const int displacements[], int nmiss, void *partDesc)
{ {
streamWriteScatteredVarPart(streamID, varID, data, numBlocks, blocklengths, displacements, nmiss, (*(Xt_idxlist *)partDesc)); streamWriteScatteredVarPart(streamID, varID, data, numBlocks, blocklengths, displacements, (size_t)nmiss, (*(Xt_idxlist *)partDesc));
} }
FCALLSCSUB8 (streamWriteScatteredVarPart_fwrap, STREAMWRITESCATTEREDVARPART, streamwritescatteredvarpart, INT, INT, PVOID, INT, INTV, INTV, INT, PVOID) FCALLSCSUB8 (streamWriteScatteredVarPart_fwrap, STREAMWRITESCATTEREDVARPART, streamwritescatteredvarpart, INT, INT, PVOID, INT, INTV, INTV, INT, PVOID)
static int cdiPioCSRLastN_fwrap(int commSuper, int IOMode, int nProcsIO) static int cdiPioCSRLastN_fwrap(int commSuper, int IOMode, int nProcsIO)
......
! >>> Warning: This is a generated file. If you modify it, you get what you deserve. <<< ! >>> Warning: This is a generated file. If you modify it, you get what you deserve. <<<
! !
! Generated by "../interfaces/f2003/bindGen.rb" from input file "../src/cdi.h". ! Generated by "../../../interfaces/f2003/bindGen.rb" from input file "../../../src/cdi.h".
module mo_cdi module mo_cdi
use iso_c_binding use iso_c_binding
...@@ -416,12 +416,6 @@ module mo_cdi ...@@ -416,12 +416,6 @@ module mo_cdi
public :: vlistInqVarAddoffset public :: vlistInqVarAddoffset
public :: vlistDefVarTimave public :: vlistDefVarTimave
public :: vlistInqVarTimave public :: vlistInqVarTimave
public :: vlistDefVarTimaccu
public :: vlistInqVarTimaccu
public :: vlistDefVarTypeOfGeneratingProcess
public :: vlistInqVarTypeOfGeneratingProcess
public :: vlistDefVarProductDefinitionTemplate
public :: vlistInqVarProductDefinitionTemplate
public :: vlistInqVarSize public :: vlistInqVarSize
public :: vlistDefIndex public :: vlistDefIndex
public :: vlistInqIndex public :: vlistInqIndex
...@@ -431,8 +425,6 @@ module mo_cdi ...@@ -431,8 +425,6 @@ module mo_cdi
public :: vlistFindLevel public :: vlistFindLevel
public :: vlistMergedVar public :: vlistMergedVar
public :: vlistMergedLevel public :: vlistMergedLevel
public :: vlistDefVarEnsemble
public :: vlistInqVarEnsemble
public :: cdiClearAdditionalKeys public :: cdiClearAdditionalKeys
public :: cdiDefAdditionalKey public :: cdiDefAdditionalKey
public :: vlistDefVarIntKey public :: vlistDefVarIntKey
...@@ -478,6 +470,19 @@ module mo_cdi ...@@ -478,6 +470,19 @@ module mo_cdi
public :: gridDefYvals public :: gridDefYvals
public :: gridInqYvals public :: gridInqYvals
public :: gridInqYIsc public :: gridInqYIsc
integer(c_int), public, parameter :: CDI_KEY_TABLESVERSION = 801
integer(c_int), public, parameter :: CDI_KEY_LOCALTABLESVERSION = 802
integer(c_int), public, parameter :: CDI_KEY_TYPEOFGENERATINGPROCESS = 803
integer(c_int), public, parameter :: CDI_KEY_PRODUCTDEFINITIONTEMPLATE = 804
integer(c_int), public, parameter :: CDI_KEY_TYPEOFPROCESSEDDATA = 805
integer(c_int), public, parameter :: CDI_KEY_SHAPEOFTHEEARTH = 806
integer(c_int), public, parameter :: CDI_KEY_BACKGROUNDPROCESS = 807
integer(c_int), public, parameter :: CDI_KEY_TYPEOFENSEMBLEFORECAST = 808
integer(c_int), public, parameter :: CDI_KEY_NUMBEROFFORECASTSINENSEMBLE =&
& 809
integer(c_int), public, parameter :: CDI_KEY_PERTURBATIONNUMBER = 810
public :: cdiDefKeyInt
public :: cdiInqKeyInt
integer(c_int), public, parameter :: CDI_KEY_XNAME = 901 integer(c_int), public, parameter :: CDI_KEY_XNAME = 901
integer(c_int), public, parameter :: CDI_KEY_XDIMNAME = 902 integer(c_int), public, parameter :: CDI_KEY_XDIMNAME = 902
integer(c_int), public, parameter :: CDI_KEY_XLONGNAME = 903 integer(c_int), public, parameter :: CDI_KEY_XLONGNAME = 903
...@@ -498,6 +503,8 @@ module mo_cdi ...@@ -498,6 +503,8 @@ module mo_cdi
integer(c_int), public, parameter :: CDI_KEY_P0VALUE = 952 integer(c_int), public, parameter :: CDI_KEY_P0VALUE = 952
public :: cdiGridDefKeyStr public :: cdiGridDefKeyStr
public :: cdiGridInqKeyStr public :: cdiGridInqKeyStr
public :: cdiZaxisDefKeyStr
public :: cdiZaxisInqKeyStr
public :: cdiZaxisDefKeyFlt public :: cdiZaxisDefKeyFlt
public :: cdiZaxisInqKeyFlt public :: cdiZaxisInqKeyFlt
public :: gridDefXname public :: gridDefXname
...@@ -574,8 +581,6 @@ module mo_cdi ...@@ -574,8 +581,6 @@ module mo_cdi
public :: zaxisInqNumber public :: zaxisInqNumber
public :: zaxisDefUUID public :: zaxisDefUUID
public :: zaxisInqUUID public :: zaxisInqUUID
public :: cdiZaxisDefKeyStr
public :: cdiZaxisInqKeyStr
public :: zaxisDefName public :: zaxisDefName
public :: zaxisInqName public :: zaxisInqName
public :: zaxisDefLongname public :: zaxisDefLongname
...@@ -1622,56 +1627,6 @@ module mo_cdi ...@@ -1622,56 +1627,6 @@ module mo_cdi
integer(c_int) :: f_result integer(c_int) :: f_result
end function vlistInqVarTimave end function vlistInqVarTimave
subroutine vlistDefVarTimaccu(vlistID_dummy, varID_dummy, timaccu_dummy)&
& bind(c, name = 'vlistDefVarTimaccu')
import c_int
integer(c_int), value :: vlistID_dummy
integer(c_int), value :: varID_dummy
integer(c_int), value :: timaccu_dummy
end subroutine vlistDefVarTimaccu
function vlistInqVarTimaccu(vlistID_dummy, varID_dummy) bind(c, name =&
& 'vlistInqVarTimaccu') result(f_result)
import c_int
integer(c_int), value :: vlistID_dummy
integer(c_int), value :: varID_dummy
integer(c_int) :: f_result
end function vlistInqVarTimaccu
subroutine vlistDefVarTypeOfGeneratingProcess(vlistID_dummy, varID_dummy,&
& typeOfGeneratingProcess_dummy) bind(c, name =&
& 'vlistDefVarTypeOfGeneratingProcess')
import c_int
integer(c_int), value :: vlistID_dummy
integer(c_int), value :: varID_dummy
integer(c_int), value :: typeOfGeneratingProcess_dummy
end subroutine vlistDefVarTypeOfGeneratingProcess
function vlistInqVarTypeOfGeneratingProcess(vlistID_dummy, varID_dummy)&
& bind(c, name = 'vlistInqVarTypeOfGeneratingProcess') result(f_result)
import c_int
integer(c_int), value :: vlistID_dummy
integer(c_int), value :: varID_dummy
integer(c_int) :: f_result
end function vlistInqVarTypeOfGeneratingProcess
subroutine vlistDefVarProductDefinitionTemplate(vlistID_dummy, varID_dummy,&
& productDefinitionTemplate_dummy) bind(c, name =&
& 'vlistDefVarProductDefinitionTemplate')
import c_int
integer(c_int), value :: vlistID_dummy
integer(c_int), value :: varID_dummy
integer(c_int), value :: productDefinitionTemplate_dummy
end subroutine vlistDefVarProductDefinitionTemplate
function vlistInqVarProductDefinitionTemplate(vlistID_dummy, varID_dummy)&
& bind(c, name = 'vlistInqVarProductDefinitionTemplate') result(f_result)
import c_int
integer(c_int), value :: vlistID_dummy
integer(c_int), value :: varID_dummy
integer(c_int) :: f_result
end function vlistInqVarProductDefinitionTemplate
function vlistInqVarSize(vlistID_dummy, varID_dummy) bind(c, name =& function vlistInqVarSize(vlistID_dummy, varID_dummy) bind(c, name =&
& 'vlistInqVarSize') result(f_result) & 'vlistInqVarSize') result(f_result)
import c_int, c_size_t import c_int, c_size_t
...@@ -1750,29 +1705,6 @@ module mo_cdi ...@@ -1750,29 +1705,6 @@ module mo_cdi
integer(c_int) :: f_result integer(c_int) :: f_result
end function vlistMergedLevel end function vlistMergedLevel
subroutine vlistDefVarEnsemble(vlistID_dummy, varID_dummy, ensID_dummy,&
& ensCount_dummy, forecast_type_dummy) bind(c, name =&
& 'vlistDefVarEnsemble')
import c_int
integer(c_int), value :: vlistID_dummy
integer(c_int), value :: varID_dummy
integer(c_int), value :: ensID_dummy
integer(c_int), value :: ensCount_dummy
integer(c_int), value :: forecast_type_dummy
end subroutine vlistDefVarEnsemble
function vlistInqVarEnsemble(vlistID_dummy, varID_dummy, ensID_dummy,&
& ensCount_dummy, forecast_type_dummy) bind(c, name =&
& 'vlistInqVarEnsemble') result(f_result)
import c_int
integer(c_int), value :: vlistID_dummy
integer(c_int), value :: varID_dummy
integer(c_int), intent(inout) :: ensID_dummy
integer(c_int), intent(inout) :: ensCount_dummy
integer(c_int), intent(inout) :: forecast_type_dummy
integer(c_int) :: f_result
end function vlistInqVarEnsemble
subroutine cdiClearAdditionalKeys() bind(c, name =& subroutine cdiClearAdditionalKeys() bind(c, name =&
& 'cdiClearAdditionalKeys') & 'cdiClearAdditionalKeys')
end subroutine cdiClearAdditionalKeys end subroutine cdiClearAdditionalKeys
...@@ -1977,6 +1909,26 @@ module mo_cdi ...@@ -1977,6 +1909,26 @@ module mo_cdi
integer(c_int) :: f_result integer(c_int) :: f_result
end function gridInqYIsc end function gridInqYIsc
function cdiDefKeyInt(cdiID_dummy, varID_dummy, key_dummy, value_dummy)&
& bind(c, name = 'cdiDefKeyInt') result(f_result)
import c_int
integer(c_int), value :: cdiID_dummy
integer(c_int), value :: varID_dummy
integer(c_int), value :: key_dummy
integer(c_int), value :: value_dummy
integer(c_int) :: f_result
end function cdiDefKeyInt
function cdiInqKeyInt(cdiID_dummy, varID_dummy, key_dummy, value_dummy)&
& bind(c, name = 'cdiInqKeyInt') result(f_result)
import c_int
integer(c_int), value :: cdiID_dummy
integer(c_int), value :: varID_dummy
integer(c_int), value :: key_dummy
integer(c_int), intent(inout) :: value_dummy
integer(c_int) :: f_result
end function cdiInqKeyInt
function cdiZaxisDefKeyFlt(zaxisID_dummy, key_dummy, value_dummy) bind(c,& function cdiZaxisDefKeyFlt(zaxisID_dummy, key_dummy, value_dummy) bind(c,&
& name = 'cdiZaxisDefKeyFlt') result(f_result) & name = 'cdiZaxisDefKeyFlt') result(f_result)
import c_double, c_int import c_double, c_int
...@@ -4944,6 +4896,73 @@ contains ...@@ -4944,6 +4896,73 @@ contains
end do end do
end function cdiGridInqKeyStr end function cdiGridInqKeyStr
function cdiZaxisDefKeyStr(zaxisID_dummy, key_dummy, size_dummy, mesg_dummy)&
& result(f_result)
integer(c_int) :: f_result
integer(c_int), value :: zaxisID_dummy
integer(c_int), value :: key_dummy
integer(c_int), value :: size_dummy
character(kind = c_char, len = *), intent(in) :: mesg_dummy
character(kind = c_char) :: mesg_temp(len(mesg_dummy) + 1)
integer :: mesg_i
interface
function lib_cdiZaxisDefKeyStr(zaxisID_dummy, key_dummy, size_dummy,&
& mesg_dummy) bind(c, name = 'cdiZaxisDefKeyStr') result(c_result)
import c_char, c_int
integer(c_int) :: c_result
integer(c_int), value :: zaxisID_dummy
integer(c_int), value :: key_dummy
integer(c_int), value :: size_dummy
character(kind = c_char) :: mesg_dummy(*)
end function lib_cdiZaxisDefKeyStr
end interface
do mesg_i = 1, len(mesg_dummy)
mesg_temp(mesg_i) = mesg_dummy(mesg_i:mesg_i)
end do
mesg_temp(len(mesg_dummy) + 1) = c_null_char
f_result = lib_cdiZaxisDefKeyStr(zaxisID_dummy, key_dummy, size_dummy,&
& mesg_temp)
end function cdiZaxisDefKeyStr
function cdiZaxisInqKeyStr(zaxisID_dummy, key_dummy, size_dummy, mesg_dummy)&
& result(f_result)
integer(c_int) :: f_result
integer(c_int), value :: zaxisID_dummy
integer(c_int), value :: key_dummy
integer(c_int), value :: size_dummy
character(kind = c_char, len = *), intent(inout) :: mesg_dummy
character(kind = c_char) :: mesg_temp(len(mesg_dummy) + 1)
integer :: mesg_i
interface
function lib_cdiZaxisInqKeyStr(zaxisID_dummy, key_dummy, size_dummy,&
& mesg_dummy) bind(c, name = 'cdiZaxisInqKeyStr') result(c_result)
import c_char, c_int
integer(c_int) :: c_result
integer(c_int), value :: zaxisID_dummy
integer(c_int), value :: key_dummy
integer(c_int), value :: size_dummy
character(kind = c_char) :: mesg_dummy(*)
end function lib_cdiZaxisInqKeyStr
end interface
mesg_temp(len(mesg_dummy) + 1) = c_null_char
do mesg_i = len(mesg_dummy), 1, -1
if(mesg_dummy(mesg_i:mesg_i) /= ' ') exit
mesg_temp(mesg_i) = c_null_char
end do
do mesg_i = mesg_i, 1, -1
mesg_temp(mesg_i) = mesg_dummy(mesg_i:mesg_i)
end do
f_result = lib_cdiZaxisInqKeyStr(zaxisID_dummy, key_dummy, size_dummy,&
& mesg_temp)
do mesg_i = 1, len(mesg_dummy)
if(mesg_temp(mesg_i) == c_null_char) exit
mesg_dummy(mesg_i:mesg_i) = mesg_temp(mesg_i)
end do
do mesg_i = mesg_i, len(mesg_dummy)
mesg_dummy(mesg_i:mesg_i) = ' '
end do
end function cdiZaxisInqKeyStr
subroutine gridDefXname(gridID_dummy, xname_dummy) subroutine gridDefXname(gridID_dummy, xname_dummy)
integer(c_int), value :: gridID_dummy integer(c_int), value :: gridID_dummy
character(kind = c_char, len = *), intent(in) :: xname_dummy character(kind = c_char, len = *), intent(in) :: xname_dummy
...@@ -5417,73 +5436,6 @@ contains ...@@ -5417,73 +5436,6 @@ contains
end if end if
end function zaxisNamePtr end function zaxisNamePtr
function cdiZaxisDefKeyStr(zaxisID_dummy, key_dummy, size_dummy, mesg_dummy)&
& result(f_result)
integer(c_int) :: f_result
integer(c_int), value :: zaxisID_dummy
integer(c_int), value :: key_dummy
integer(c_int), value :: size_dummy
character(kind = c_char, len = *), intent(in) :: mesg_dummy
character(kind = c_char) :: mesg_temp(len(mesg_dummy) + 1)
integer :: mesg_i
interface
function lib_cdiZaxisDefKeyStr(zaxisID_dummy, key_dummy, size_dummy,&
& mesg_dummy) bind(c, name = 'cdiZaxisDefKeyStr') result(c_result)
import c_char, c_int
integer(c_int) :: c_result
integer(c_int), value :: zaxisID_dummy
integer(c_int), value :: key_dummy
integer(c_int), value :: size_dummy
character(kind = c_char) :: mesg_dummy(*)
end function lib_cdiZaxisDefKeyStr
end interface
do mesg_i = 1, len(mesg_dummy)
mesg_temp(mesg_i) = mesg_dummy(mesg_i:mesg_i)
end do
mesg_temp(len(mesg_dummy) + 1) = c_null_char
f_result = lib_cdiZaxisDefKeyStr(zaxisID_dummy, key_dummy, size_dummy,&
& mesg_temp)
end function cdiZaxisDefKeyStr
function cdiZaxisInqKeyStr(zaxisID_dummy, key_dummy, size_dummy, mesg_dummy)&
& result(f_result)
integer(c_int) :: f_result
integer(c_int), value :: zaxisID_dummy
integer(c_int), value :: key_dummy
integer(c_int), value :: size_dummy
character(kind = c_char, len = *), intent(inout) :: mesg_dummy
character(kind = c_char) :: mesg_temp(len(mesg_dummy) + 1)
integer :: mesg_i
interface
function lib_cdiZaxisInqKeyStr(zaxisID_dummy, key_dummy, size_dummy,&
& mesg_dummy) bind(c, name = 'cdiZaxisInqKeyStr') result(c_result)
import c_char, c_int
integer(c_int) :: c_result
integer(c_int), value :: zaxisID_dummy
integer(c_int), value :: key_dummy
integer(c_int), value :: size_dummy
character(kind = c_char) :: mesg_dummy(*)
end function lib_cdiZaxisInqKeyStr
end interface
mesg_temp(len(mesg_dummy) + 1) = c_null_char
do mesg_i = len(mesg_dummy), 1, -1
if(mesg_dummy(mesg_i:mesg_i) /= ' ') exit
mesg_temp(mesg_i) = c_null_char
end do
do mesg_i = mesg_i, 1, -1
mesg_temp(mesg_i) = mesg_dummy(mesg_i:mesg_i)
end do
f_result = lib_cdiZaxisInqKeyStr(zaxisID_dummy, key_dummy, size_dummy,&
& mesg_temp)
do mesg_i = 1, len(mesg_dummy)
if(mesg_temp(mesg_i) == c_null_char) exit
mesg_dummy(mesg_i:mesg_i) = mesg_temp(mesg_i)
end do
do mesg_i = mesg_i, len(mesg_dummy)
mesg_dummy(mesg_i:mesg_i) = ' '
end do
end function cdiZaxisInqKeyStr
subroutine zaxisDefName(zaxisID_dummy, name) subroutine zaxisDefName(zaxisID_dummy, name)
integer(c_int), value :: zaxisID_dummy integer(c_int), value :: zaxisID_dummy
character(kind = c_char, len = *), optional, intent(in) :: name character(kind = c_char, len = *), optional, intent(in) :: name
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment