get_var_attr_int32 Function

public function get_var_attr_int32(this, var_name, attr_name, rc) result(attr_int32)

Type Bound

FileMetadataUtils

Arguments

Type IntentOptional Attributes Name
class(FileMetadataUtils), intent(inout) :: this
character(len=*), intent(in) :: var_name
character(len=*), intent(in) :: attr_name
integer, intent(out), optional :: rc

Return Value integer(kind=INT32)


Calls

proc~~get_var_attr_int32~~CallsGraph proc~get_var_attr_int32 FileMetadataUtils%get_var_attr_int32 interface~mapl_assert MAPL_Assert proc~get_var_attr_int32->interface~mapl_assert none~get_attribute Variable%get_attribute proc~get_var_attr_int32->none~get_attribute none~get_values UnlimitedEntity%get_values proc~get_var_attr_int32->none~get_values none~get_variable FileMetadata%get_variable proc~get_var_attr_int32->none~get_variable proc~get_file_name FileMetadataUtils%get_file_name proc~get_var_attr_int32->proc~get_file_name proc~mapl_return MAPL_Return proc~get_var_attr_int32->proc~mapl_return proc~mapl_verify MAPL_Verify proc~get_var_attr_int32->proc~mapl_verify none~get_attribute->interface~mapl_assert none~get_attribute->proc~mapl_return none~at~140 StringAttributeMap%at none~get_attribute->none~at~140 none~get_values->proc~mapl_return none~get_variable->proc~mapl_return none~at~5 StringVariableMap%at none~get_variable->none~at~5 proc~get_file_name->proc~mapl_return at at proc~mapl_return->at insert insert proc~mapl_return->insert proc~mapl_throw_exception MAPL_throw_exception proc~mapl_return->proc~mapl_throw_exception proc~mapl_verify->proc~mapl_throw_exception none~find~39 StringAttributeMap%find none~at~140->none~find~39 none~find~2 StringVariableMap%find none~at~5->none~find~2

Called by

proc~~get_var_attr_int32~~CalledByGraph proc~get_var_attr_int32 FileMetadataUtils%get_var_attr_int32 proc~get_file_times~2 get_file_times proc~get_file_times~2->proc~get_var_attr_int32 program~time_ave time_ave program~time_ave->proc~get_file_times~2

Source Code

   function get_var_attr_int32(this,var_name,attr_name,rc) result(attr_int32)
      integer(INT32) :: attr_int32
      class(FileMetadataUtils), intent(inout) :: this
      character(len=*), intent(in) :: var_name
      character(len=*), intent(in) :: attr_name
      integer, optional, intent(out) :: rc

      integer(INT32) :: tmp(1)
      integer :: status
      character(:), allocatable :: fname
      type(Attribute), pointer :: attr
      type(Variable), pointer :: var
      class(*), pointer :: attr_val(:)

      fname = this%get_file_name(_RC)
      var => this%get_variable(var_name,_RC)
      _ASSERT(associated(var),"no variable named "//var_name//" in "//fname)
      attr => var%get_attribute(attr_name,_RC)
      _ASSERT(associated(attr),"no attribute named "//attr_name//" in "//var_name//" in "//fname)
      attr_val => attr%get_values()
      select type(attr_val)
      type is(integer(kind=INT32))
         tmp = attr_val
         attr_int32 = tmp(1)
      class default
         _FAIL('unsupported subclass (not int32) for units of attribute named '//attr_name//' in '//var_name//' in '//fname)
      end select

      _RETURN(_SUCCESS)
   end function get_var_attr_int32