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!
!
! Fortran interface for CDI library version 1.8.1
! Fortran interface for CDI library version 1.9.3
!
! Author:
! -------
! Uwe Schulzweida, MPI-MET, Hamburg, April 2017
! Uwe Schulzweida, MPI-MET, Hamburg, January 2018
!
!
......
......@@ -10,6 +10,9 @@
#if defined (HAVE_CF_INTERFACE)
#include <limits.h>
#include <assert.h>
#if ! defined (__CFORTRAN_LOADED)
# if defined __clang__
# pragma GCC diagnostic push
......@@ -26,6 +29,13 @@
# pragma GCC diagnostic ignored "-Wmissing-prototypes"
#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 */
......@@ -55,14 +65,14 @@ static int cdiPioInit_fwrap(int commSuper, int confResH, int *pioNamespace)
FCALLSCFUN3 (INT, cdiPioInit_fwrap, CDIPIOINIT, cdipioinit, INT, INT, PINT)
FCALLSCSUB0 (pioWriteTimestep, PIOWRITETIMESTEP, piowritetimestep)
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)
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)
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. <<<
!
! 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
use iso_c_binding
......@@ -416,12 +416,6 @@ module mo_cdi
public :: vlistInqVarAddoffset
public :: vlistDefVarTimave
public :: vlistInqVarTimave
public :: vlistDefVarTimaccu
public :: vlistInqVarTimaccu
public :: vlistDefVarTypeOfGeneratingProcess
public :: vlistInqVarTypeOfGeneratingProcess
public :: vlistDefVarProductDefinitionTemplate
public :: vlistInqVarProductDefinitionTemplate
public :: vlistInqVarSize
public :: vlistDefIndex
public :: vlistInqIndex
......@@ -431,8 +425,6 @@ module mo_cdi
public :: vlistFindLevel
public :: vlistMergedVar
public :: vlistMergedLevel
public :: vlistDefVarEnsemble
public :: vlistInqVarEnsemble
public :: cdiClearAdditionalKeys
public :: cdiDefAdditionalKey
public :: vlistDefVarIntKey
......@@ -478,6 +470,19 @@ module mo_cdi
public :: gridDefYvals
public :: gridInqYvals
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_XDIMNAME = 902
integer(c_int), public, parameter :: CDI_KEY_XLONGNAME = 903
......@@ -498,6 +503,8 @@ module mo_cdi
integer(c_int), public, parameter :: CDI_KEY_P0VALUE = 952
public :: cdiGridDefKeyStr
public :: cdiGridInqKeyStr
public :: cdiZaxisDefKeyStr
public :: cdiZaxisInqKeyStr
public :: cdiZaxisDefKeyFlt
public :: cdiZaxisInqKeyFlt
public :: gridDefXname
......@@ -574,8 +581,6 @@ module mo_cdi
public :: zaxisInqNumber
public :: zaxisDefUUID
public :: zaxisInqUUID
public :: cdiZaxisDefKeyStr
public :: cdiZaxisInqKeyStr
public :: zaxisDefName
public :: zaxisInqName
public :: zaxisDefLongname
......@@ -1622,56 +1627,6 @@ module mo_cdi
integer(c_int) :: f_result
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 =&
& 'vlistInqVarSize') result(f_result)
import c_int, c_size_t
......@@ -1750,29 +1705,6 @@ module mo_cdi
integer(c_int) :: f_result
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 =&
& 'cdiClearAdditionalKeys')
end subroutine cdiClearAdditionalKeys
......@@ -1977,6 +1909,26 @@ module mo_cdi
integer(c_int) :: f_result
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,&
& name = 'cdiZaxisDefKeyFlt') result(f_result)
import c_double, c_int
......@@ -4944,6 +4896,73 @@ contains
end do
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)
integer(c_int), value :: gridID_dummy
character(kind = c_char, len = *), intent(in) :: xname_dummy
......@@ -5417,73 +5436,6 @@ contains
end if
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)
integer(c_int), value :: zaxisID_dummy
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