11 use fckit_configuration_module,
only: fckit_configuration
22 #define LISTED_TYPE ufo_atmsfcinterp
25 #include "oops/util/linkedList_i.f"
36 #include "oops/util/linkedList_c.f"
41 use oops_variables_mod
43 integer(c_int),
intent(inout) :: c_key_self
44 type(c_ptr),
value,
intent(in) :: c_conf
45 type(c_ptr),
value,
intent(in) :: c_obsvars
46 type(c_ptr),
value,
intent(in) :: c_geovars
49 type(fckit_configuration) :: f_conf
52 f_conf = fckit_configuration(c_conf)
54 self%obsvars = oops_variables(c_obsvars)
55 self%geovars = oops_variables(c_geovars)
57 call self%setup(f_conf)
65 integer(c_int),
intent(inout) :: c_key_self
76 c_hofx) bind(c,name='ufo_atmsfcinterp_simobs_f90')
79 integer(c_int),
intent(in) :: c_key_self
80 integer(c_int),
intent(in) :: c_key_geovals
81 type(c_ptr),
value,
intent(in) :: c_obsspace
82 integer(c_int),
intent(in) :: c_nvars, c_nlocs
83 real(c_double),
intent(inout) :: c_hofx(c_nvars, c_nlocs)
87 character(len=*),
parameter :: myname_=
"ufo_atmsfcinterp_simobs_c"
93 call self%simobs(geovals, c_obsspace, c_nvars, c_nlocs, c_hofx)