pfio_nf90_get_var_string_len Function

public function pfio_nf90_get_var_string_len(ncid, varid, str_len) result(status)

Uses

    • netcdf
  • proc~~pfio_nf90_get_var_string_len~~UsesGraph proc~pfio_nf90_get_var_string_len pfio_nf90_get_var_string_len netcdf netcdf proc~pfio_nf90_get_var_string_len->netcdf

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: ncid
integer, intent(in) :: varid
integer, intent(out) :: str_len

Return Value integer


Calls

proc~~pfio_nf90_get_var_string_len~~CallsGraph proc~pfio_nf90_get_var_string_len pfio_nf90_get_var_string_len nf90_inquire_dimension nf90_inquire_dimension proc~pfio_nf90_get_var_string_len->nf90_inquire_dimension nf90_inquire_variable nf90_inquire_variable proc~pfio_nf90_get_var_string_len->nf90_inquire_variable

Called by

proc~~pfio_nf90_get_var_string_len~~CalledByGraph proc~pfio_nf90_get_var_string_len pfio_nf90_get_var_string_len none~inq_var_string_length NetCDF4_FileFormatter%inq_var_string_length none~inq_var_string_length->proc~pfio_nf90_get_var_string_len proc~test_read_write_0d_string test_read_write_0d_string proc~test_read_write_0d_string->none~inq_var_string_length proc~test_read_write_1d_string test_read_write_1d_string proc~test_read_write_1d_string->none~inq_var_string_length program~main~14 main program~main~14->none~inq_var_string_length

Source Code

   function pfio_nf90_get_var_string_len(ncid, varid, str_len) result(status)
      use netcdf
      integer :: status
      integer, intent(in) :: ncid
      integer, intent(in) :: varid
      integer, intent(out):: str_len
      integer, allocatable  :: dimids(:)
      integer  :: size
      integer, target  :: length

      allocate(dimids(1), source = -9999) ! 
      status = nf90_inquire_variable(ncid,  varid, dimids=dimids)
      if (status /= 0) return
      size = 0 ! default (assume scalar string)
      if ( dimids(1) > 0) then
        status = nf90_inquire_dimension(ncid, dimids(1), len=size)
        if (status /= 0) return
      endif
      status  = c_f_pfio_get_var_string_len(ncid, varid, c_loc(length), size)
      str_len = length
   end function pfio_nf90_get_var_string_len