Class NumRu::HE5Za
In: lib/hdfeos5.rb
Parent: Object
HE5Za HE5Gd HE5 HE5ZaField HE5GdField HE5Pt HE5SwField HE5Sw HE5PtField lib/hdfeos5.rb NumRu dot/m_0_0.png

HE5Za クラスに関して

Methods

att_names   char_typecode   close   closed   create   def_var   detach   dim_names   get_att   get_grpatt   get_var   grpatt_names   inspect   ndims   nvars   open   var   var_names   vars  

Public Class methods

[Source]

      # File lib/hdfeos5.rb, line 1883
1883:        def create(file, zname)
1884:          if(file.is_a?(String))
1885:            file = HE5.open(file, "w")
1886:          elsif(!file.is_a?(HE5))
1887:            raise TypeError,
1888:                 "1st arg must be a HDF-EOS5 (file object) or a String (path)"
1889:          end
1890:          file.create_zonal(zname)
1891:        end

[Source]

      # File lib/hdfeos5.rb, line 1893
1893:        def open(file, zname)
1894:          if(file.is_a?(String))
1895:            file = HE5.open(file, "r")
1896:          elsif(!file.is_a?(HE5))
1897:            raise TypeError,
1898:                 "1st arg must be a HDF-EOS5 (file object) or a String (path)"
1899:          end
1900:          file.zonal(zname)
1901:        end

Public Instance methods

[Source]

      # File lib/hdfeos5.rb, line 1969
1969:     def att_names
1970:       nattrs, attrnames, strbufsize = inqattrs()
1971:       return attrnames.split(/,/)
1972:     end

[Source]

      # File lib/hdfeos5.rb, line 1985
1985:     def char_typecode(typecode)
1986:       case typecode
1987:       when 1
1988:        ctype = "short"
1989:       when 2 
1990:        ctype = "sint"
1991:       when 3 
1992:        ctype = "int"
1993:       when 4 
1994:        ctype = "sfloat"
1995:       when 5 
1996:        ctype = "float"
1997:       else
1998:        raise TypeError, "not match"
1999:       end
2000:       ctype
2001:     end

close zonal field & close HDF-EOS5 file

[Source]

      # File lib/hdfeos5.rb, line 1909
1909:     def close
1910:       zadetach
1911:       self.file.close
1912:     end
closed()

Alias for detach

define HE5 Zonal Field Object ( Data Field )

[Source]

      # File lib/hdfeos5.rb, line 1924
1924:     def def_var(name, datatype, dims, maxdim=nil)
1925:       if datatype.is_a?(Numeric)
1926:         datatype = char_typecode(datatype)
1927:       end
1928:       maxdim = "NULL" if maxdim == nil
1929:       define(name, dims, maxdim, datatype)
1930:     end

detach zonal field

[Source]

      # File lib/hdfeos5.rb, line 1904
1904:     def detach
1905:       zadetach
1906:     end

return Dimension Name list

[Source]

      # File lib/hdfeos5.rb, line 1947
1947:     def dim_names
1948:       ndims, dimlist, sizes, ntype = inqdims('HE5_HDFE_NENTDIM')
1949:       return dimlist.split(/,/)
1950:     end

[Source]

      # File lib/hdfeos5.rb, line 1962
1962:     def get_att(attname)
1963:       if att_names.include?(attname)
1964:         get_att_(attname)
1965:       else
1966:         nil
1967:       end
1968:     end

[Source]

      # File lib/hdfeos5.rb, line 1973
1973:     def get_grpatt(grpattname)
1974:       if grpatt_names.include?(grpattname)
1975:         get_grpatt_(grpattname)
1976:       else
1977:         nil
1978:       end
1979:     end

set HE5 Zonal Field Object ( Data Field )

[Source]

      # File lib/hdfeos5.rb, line 1957
1957:     def get_var(varid)
1958:       nflds, fieldlist, sizes, ntype = inquire('HE5_HDFE_NENTDFLD')
1959:       fieldname=fieldlist.split(",")[varid]
1960:       return var(fieldname)
1961:     end

[Source]

      # File lib/hdfeos5.rb, line 1980
1980:     def grpatt_names
1981:       nattrs, attrnames, strbufsize = inqgrpattrs()
1982:       return attrnames.split(/,/)
1983:     end

[Source]

      # File lib/hdfeos5.rb, line 2003
2003:     def inspect
2004:       'HE5Gd:'+name
2005:     end

count Dimension Field

[Source]

      # File lib/hdfeos5.rb, line 1914
1914:     def ndims
1915:       count, strbufsize = nentries('HE5_HDFE_NENTDIM')
1916:       return count
1917:     end

count Data Field

[Source]

      # File lib/hdfeos5.rb, line 1919
1919:     def nvars
1920:       count, strbufsize = nentries('HE5_HDFE_NENTDFLD')
1921:       return count
1922:     end

set HE5 Zonal Field Object ( Data Field )

[Source]

      # File lib/hdfeos5.rb, line 1932
1932:     def var(varname)
1933:        setfield(varname)
1934:     end

return Data Field Name list

[Source]

      # File lib/hdfeos5.rb, line 1952
1952:     def var_names
1953:       nflds, fieldlist, sizes, ntype = inquire('HE5_HDFE_NENTDFLD')
1954:       return fieldlist.split(/,/)
1955:     end

return HE5 Zonal Field Object

[Source]

      # File lib/hdfeos5.rb, line 1936
1936:     def vars( names=nil )   # return all if names==nil
1937:        if names == nil
1938:           vars = (0..nvars()-1).collect{|varid| get_var(varid)}
1939:        else
1940:           raise TypeError, "names is not an array" if ! names.is_a?(Array)
1941:           vars = names.collect{|name| var(name)}
1942:           raise ArgumentError, "One or more variables do not exist" if vars.include?(nil)
1943:        end
1944:        return vars
1945:     end

[Validate]