11 use, 
intrinsic :: iso_c_binding
    23 #include "obsspace_interface.f"    49     type(c_ptr), 
intent(in) :: c_dom
    60     type(c_ptr), 
intent(in) :: c_dom
    71     type(c_ptr), 
value, 
intent(in) :: obss
    72     character(len=*), 
intent(in) :: group
    73     character(len=*), 
intent(in) :: vname
    74     integer(c_int32_t), 
intent(inout) :: vect(:)
    76     character(kind=c_char,len=1), 
allocatable :: c_group(:), c_vname(:)
    77     integer(c_size_t) :: length
    80     call f_c_string(group, c_group)
    81     call f_c_string(vname, c_vname)
    86     deallocate(c_group, c_vname)
    97     type(c_ptr), 
value, 
intent(in) :: obss
    98     character(len=*), 
intent(in) :: group
    99     character(len=*), 
intent(in) :: vname
   100     integer(c_int64_t), 
intent(inout) :: vect(:)
   102     character(kind=c_char,len=1), 
allocatable :: c_group(:), c_vname(:)
   103     integer(c_size_t) :: length
   106     call f_c_string(group, c_group)
   107     call f_c_string(vname, c_vname)
   112     deallocate(c_group, c_vname)
   122     type(c_ptr), 
value, 
intent(in) :: obss
   123     character(len=*), 
intent(in) :: group
   124     character(len=*), 
intent(in) :: vname
   125     real(c_float), 
intent(inout) :: vect(:)
   127     character(kind=c_char,len=1), 
allocatable :: c_group(:), c_vname(:)
   128     integer(c_size_t) :: length
   131     call f_c_string(group, c_group)
   132     call f_c_string(vname, c_vname)
   137     deallocate(c_group, c_vname)
   147     type(c_ptr), 
value, 
intent(in) :: obss
   148     character(len=*), 
intent(in) :: group
   149     character(len=*), 
intent(in) :: vname
   150     real(c_double), 
intent(inout) :: vect(:)
   152     character(kind=c_char,len=1), 
allocatable :: c_group(:), c_vname(:)
   153     integer(c_size_t) :: length
   156     call f_c_string(group, c_group)
   157     call f_c_string(vname, c_vname)
   162     deallocate(c_group, c_vname)
   172     type(c_ptr), 
intent(inout) :: obss
   173     character(len=*), 
intent(in) :: group
   174     character(len=*), 
intent(in) :: vname
   175     integer(c_int32_t), 
intent(in) :: vect(:)
   177     character(kind=c_char,len=1), 
allocatable :: c_group(:), c_vname(:)
   178     integer(c_size_t) :: length
   181     call f_c_string(group, c_group)
   182     call f_c_string(vname, c_vname)
   187     deallocate(c_group, c_vname)
   197     type(c_ptr), 
intent(inout) :: obss
   198     character(len=*), 
intent(in) :: group
   199     character(len=*), 
intent(in) :: vname
   200     integer(c_int64_t), 
intent(in) :: vect(:)
   202     character(kind=c_char,len=1), 
allocatable :: c_group(:), c_vname(:)
   203     integer(c_size_t) :: length
   206     call f_c_string(group, c_group)
   207     call f_c_string(vname, c_vname)
   212     deallocate(c_group, c_vname)
   222     type(c_ptr), 
intent(inout) :: obss
   223     character(len=*), 
intent(in) :: group
   224     character(len=*), 
intent(in) :: vname
   225     real(c_float), 
intent(in) :: vect(:)
   227     character(kind=c_char,len=1), 
allocatable :: c_group(:), c_vname(:)
   228     integer(c_size_t) :: length
   231     call f_c_string(group, c_group)
   232     call f_c_string(vname, c_vname)
   237     deallocate(c_group, c_vname)
   247     type(c_ptr), 
intent(inout) :: obss
   248     character(len=*), 
intent(in) :: group
   249     character(len=*), 
intent(in) :: vname
   250     real(c_double), 
intent(in) :: vect(:)
   252     character(kind=c_char,len=1), 
allocatable :: c_group(:), c_vname(:)
   253     integer(c_size_t) :: length
   256     call f_c_string(group, c_group)
   257     call f_c_string(vname, c_vname)
   262     deallocate(c_group, c_vname)
 subroutine obsspace_put_db_int32(obss, group, vname, vect)
Store a vector in ObsSpace database. 
 
subroutine obsspace_get_db_int32(obss, group, vname, vect)
Get a variable from the ObsSapce database. 
 
subroutine obsspace_put_db_int64(obss, group, vname, vect)
Store a vector in ObsSpace database. 
 
integer function, public obsspace_get_nobs(c_dom)
Return the number of observations. 
 
subroutine obsspace_get_db_real32(obss, group, vname, vect)
Get a variable from the ObsSapce database. 
 
Define interface for C++ ObsSpace code called from Fortran. 
 
subroutine obsspace_put_db_real64(obss, group, vname, vect)
Store a vector in ObsSpace database. 
 
subroutine obsspace_get_db_int64(obss, group, vname, vect)
Get a variable from the ObsSapce database. 
 
subroutine obsspace_put_db_real32(obss, group, vname, vect)
Store a vector in ObsSpace database. 
 
subroutine obsspace_get_db_real64(obss, group, vname, vect)
Get a variable from the ObsSapce database. 
 
Fortran interface to ObsSpace. 
 
integer function, public obsspace_get_nlocs(c_dom)
Return the number of observational locations.