9 use netcdf,
only: nf90_get_att, nf90_byte, nf90_short, nf90_int, &
10 nf90_float, nf90_double, nf90_char
44 integer(i_long),
intent(in) :: file_ncdr_id
45 character(len=*),
intent(in) :: var_name
46 character(len=*),
intent(in) :: attr_name
47 integer(i_byte),
intent(out) :: attr_stor
49 integer(i_long) :: var_index, attr_len, attr_type, file_ncid
64 ncdr_files(file_ncdr_id)%vars(var_index)%var_id, &
70 character(len=*),
intent(in) :: var_name
71 character(len=*),
intent(in) :: attr_name
72 integer(i_byte),
intent(out) :: attr_stor
79 integer(i_long),
intent(in) :: file_ncdr_id
80 character(len=*),
intent(in) :: var_name
81 character(len=*),
intent(in) :: attr_name
82 integer(i_short),
intent(out) :: attr_stor
84 integer(i_long) :: var_index, attr_len, attr_type, file_ncid
99 ncdr_files(file_ncdr_id)%vars(var_index)%var_id, &
105 character(len=*),
intent(in) :: var_name
106 character(len=*),
intent(in) :: attr_name
107 integer(i_short),
intent(out) :: attr_stor
114 integer(i_long),
intent(in) :: file_ncdr_id
115 character(len=*),
intent(in) :: var_name
116 character(len=*),
intent(in) :: attr_name
117 integer(i_long),
intent(out) :: attr_stor
119 integer(i_long) :: var_index, attr_len, attr_type, file_ncid
134 ncdr_files(file_ncdr_id)%vars(var_index)%var_id, &
140 character(len=*),
intent(in) :: var_name
141 character(len=*),
intent(in) :: attr_name
142 integer(i_long),
intent(out) :: attr_stor
149 integer(i_long),
intent(in) :: file_ncdr_id
150 character(len=*),
intent(in) :: var_name
151 character(len=*),
intent(in) :: attr_name
152 real(r_single),
intent(out) :: attr_stor
154 integer(i_long) :: var_index, attr_len, attr_type, file_ncid
169 ncdr_files(file_ncdr_id)%vars(var_index)%var_id, &
175 character(len=*),
intent(in) :: var_name
176 character(len=*),
intent(in) :: attr_name
177 real(r_single),
intent(out) :: attr_stor
184 integer(i_long),
intent(in) :: file_ncdr_id
185 character(len=*),
intent(in) :: var_name
186 character(len=*),
intent(in) :: attr_name
187 real(r_double),
intent(out) :: attr_stor
189 integer(i_long) :: var_index, attr_len, attr_type, file_ncid
204 ncdr_files(file_ncdr_id)%vars(var_index)%var_id, &
210 character(len=*),
intent(in) :: var_name
211 character(len=*),
intent(in) :: attr_name
212 real(r_double),
intent(out) :: attr_stor
219 integer(i_long),
intent(in) :: file_ncdr_id
220 character(len=*),
intent(in) :: var_name
221 character(len=*),
intent(in) :: attr_name
222 character(len=*),
intent(out) :: attr_stor
224 integer(i_long) :: var_index, attr_len, attr_type, file_ncid
239 ncdr_files(file_ncdr_id)%vars(var_index)%var_id, &
245 character(len=*),
intent(in) :: var_name
246 character(len=*),
intent(in) :: attr_name
247 character(len=*),
intent(out) :: attr_stor
254 integer(i_long),
intent(in) :: file_ncdr_id
255 character(len=*),
intent(in) :: var_name
256 character(len=*),
intent(in) :: attr_name
257 integer(i_byte),
dimension(:),
allocatable,
intent(inout) :: attr_stor
259 integer(i_long) :: var_index, attr_len, attr_type, file_ncid
274 ncdr_files(file_ncdr_id)%vars(var_index)%var_id, &
280 character(len=*),
intent(in) :: var_name
281 character(len=*),
intent(in) :: attr_name
282 integer(i_byte),
dimension(:),
allocatable,
intent(inout) :: attr_stor
289 integer(i_long),
intent(in) :: file_ncdr_id
290 character(len=*),
intent(in) :: var_name
291 character(len=*),
intent(in) :: attr_name
292 integer(i_short),
dimension(:),
allocatable,
intent(inout) :: attr_stor
294 integer(i_long) :: var_index, attr_len, attr_type, file_ncid
309 ncdr_files(file_ncdr_id)%vars(var_index)%var_id, &
315 character(len=*),
intent(in) :: var_name
316 character(len=*),
intent(in) :: attr_name
317 integer(i_short),
dimension(:),
allocatable,
intent(inout) :: attr_stor
324 integer(i_long),
intent(in) :: file_ncdr_id
325 character(len=*),
intent(in) :: var_name
326 character(len=*),
intent(in) :: attr_name
327 integer(i_long),
dimension(:),
allocatable,
intent(inout) :: attr_stor
329 integer(i_long) :: var_index, attr_len, attr_type, file_ncid
344 ncdr_files(file_ncdr_id)%vars(var_index)%var_id, &
350 character(len=*),
intent(in) :: var_name
351 character(len=*),
intent(in) :: attr_name
352 integer(i_long),
dimension(:),
allocatable,
intent(inout) :: attr_stor
359 integer(i_long),
intent(in) :: file_ncdr_id
360 character(len=*),
intent(in) :: var_name
361 character(len=*),
intent(in) :: attr_name
362 real(r_single),
dimension(:),
allocatable,
intent(inout) :: attr_stor
364 integer(i_long) :: var_index, attr_len, attr_type, file_ncid
379 ncdr_files(file_ncdr_id)%vars(var_index)%var_id, &
385 character(len=*),
intent(in) :: var_name
386 character(len=*),
intent(in) :: attr_name
387 real(r_single),
dimension(:),
allocatable,
intent(inout) :: attr_stor
394 integer(i_long),
intent(in) :: file_ncdr_id
395 character(len=*),
intent(in) :: var_name
396 character(len=*),
intent(in) :: attr_name
397 real(r_double),
dimension(:),
allocatable,
intent(inout) :: attr_stor
399 integer(i_long) :: var_index, attr_len, attr_type, file_ncid
414 ncdr_files(file_ncdr_id)%vars(var_index)%var_id, &
420 character(len=*),
intent(in) :: var_name
421 character(len=*),
intent(in) :: attr_name
422 real(r_double),
dimension(:),
allocatable,
intent(inout) :: attr_stor
429 integer(i_long),
intent(in) :: file_ncdr_id
430 character(len=*),
intent(in) :: var_name
431 character(len=*),
intent(in) :: attr_name
432 character(len=:),
allocatable,
intent(inout) :: attr_stor
434 integer(i_long) :: var_index, attr_len, attr_type, file_ncid
449 ncdr_files(file_ncdr_id)%vars(var_index)%var_id, &
455 character(len=*),
intent(in) :: var_name
456 character(len=*),
intent(in) :: attr_name
457 character(len=:),
allocatable,
intent(inout) :: attr_stor
subroutine nc_diag_read_id_get_attr_1d_string(file_ncdr_id, var_name, attr_name, attr_stor)
subroutine nc_diag_read_id_get_attr_single_string(file_ncdr_id, var_name, attr_name, attr_stor)
integer, parameter, public i_byte
subroutine nc_diag_read_id_get_attr_single_float(file_ncdr_id, var_name, attr_name, attr_stor)
subroutine nc_diag_read_id_get_attr_1d_float(file_ncdr_id, var_name, attr_name, attr_stor)
integer, parameter, public i_long
subroutine nc_diag_read_id_get_attr_1d_long(file_ncdr_id, var_name, attr_name, attr_stor)
subroutine nc_diag_read_id_get_attr_1d_double(file_ncdr_id, var_name, attr_name, attr_stor)
subroutine nc_diag_read_id_get_attr_single_long(file_ncdr_id, var_name, attr_name, attr_stor)
subroutine ncdr_nc_check(status)
subroutine nc_diag_read_assert_dims_alloc_string(var_stor, correct_dims)
integer(i_long) current_ncdr_id
type(ncdr_file), dimension(:), allocatable ncdr_files
subroutine ncdr_check_current_ncdr_id
subroutine nc_diag_read_id_get_attr_single_byte(file_ncdr_id, var_name, attr_name, attr_stor)
subroutine ncdr_check_ncid(file_ncid)
subroutine nc_diag_read_noid_get_attr_single_float(var_name, attr_name, attr_stor)
subroutine nc_diag_read_id_get_attr_single_short(file_ncdr_id, var_name, attr_name, attr_stor)
subroutine nc_diag_read_noid_get_attr_single_string(var_name, attr_name, attr_stor)
subroutine nc_diag_read_id_get_attr_single_double(file_ncdr_id, var_name, attr_name, attr_stor)
subroutine nc_diag_read_id_assert_attr(file_ncdr_id, var_name, attr_name, attr_type, attr_len)
subroutine nc_diag_read_noid_get_attr_1d_short(var_name, attr_name, attr_stor)
integer(i_long) function nc_diag_read_id_assert_var(file_ncdr_id, var_name)
subroutine nc_diag_read_noid_get_attr_single_long(var_name, attr_name, attr_stor)
subroutine ncdr_check_ncdr_id(file_ncdr_id)
subroutine nc_diag_read_id_get_attr_1d_byte(file_ncdr_id, var_name, attr_name, attr_stor)
subroutine nc_diag_read_noid_get_attr_single_double(var_name, attr_name, attr_stor)
integer, parameter, public i_short
subroutine nc_diag_read_noid_get_attr_1d_long(var_name, attr_name, attr_stor)
subroutine nc_diag_read_id_get_attr_1d_short(file_ncdr_id, var_name, attr_name, attr_stor)
subroutine nc_diag_read_noid_get_attr_1d_float(var_name, attr_name, attr_stor)
subroutine nc_diag_read_noid_get_attr_single_byte(var_name, attr_name, attr_stor)
subroutine nc_diag_read_noid_get_attr_1d_double(var_name, attr_name, attr_stor)
subroutine nc_diag_read_assert_attr_type(attr_type, correct_attr_type)
integer, parameter, public r_double
subroutine nc_diag_read_noid_get_attr_single_short(var_name, attr_name, attr_stor)
subroutine nc_diag_read_noid_get_attr_1d_string(var_name, attr_name, attr_stor)
integer, parameter, public r_single
subroutine nc_diag_read_noid_get_attr_1d_byte(var_name, attr_name, attr_stor)