Class | NumRu::HE5Pt |
In: |
lib/hdfeos5.rb
|
Parent: | Object |
HE5Pt クラスに関して
# File lib/hdfeos5.rb, line 1416 1416: def create(file, pname) 1417: if(file.is_a?(String)) 1418: file = HE5.open(file, "w") 1419: elsif(!file.is_a?(HE5)) 1420: raise TypeError, 1421: "1st arg must be a HDF-EOS5 (file object) or a String (path)" 1422: end 1423: file.create_point(pname) 1424: end
# File lib/hdfeos5.rb, line 1426 1426: def open(file, pname) 1427: if(file.is_a?(String)) 1428: file = HE5.open(file, "a") # "r" の場合、simple plot でエラーになるため 1429: elsif(!file.is_a?(HE5)) 1430: raise TypeError, 1431: "1st arg must be a HDF-EOS5 (file object) or a String (path)" 1432: end 1433: file.point(pname) 1434: end
# File lib/hdfeos5.rb, line 1504 1504: def att_names 1505: nattrs, attrnames, strbufsize = inqattrs() 1506: return attrnames.split(/,/) 1507: end
# File lib/hdfeos5.rb, line 1520 1520: def char_typecode(typecode) 1521: case typecode 1522: when 1 1523: ctype = "short" 1524: when 2 1525: ctype = "sint" 1526: when 3 1527: ctype = "int" 1528: when 4 1529: ctype = "sfloat" 1530: when 5 1531: ctype = "float" 1532: else 1533: raise TypeError, "not match" 1534: end 1535: ctype 1536: end
define HE5 Point Object
# File lib/hdfeos5.rb, line 1447 1447: def def_level(levelname, rank, fieldlist, dimlist, datatypelist) 1448: if datatypelist.is_a?(Numeric) 1449: datatype = char_typecode(datatypelist) 1450: elsif(datatype.length > 1) 1451: datatypelist.each{|dtype| 1452: dtype=char_typecode(dtype) if dtype.is_a?(Numeric) 1453: datatype.push(dtype) 1454: } 1455: end 1456: deflevel(levelname, rank.length, rank, fieldlist, fieldlist, dimlist, datatype) 1457: end
# File lib/hdfeos5.rb, line 1497 1497: def get_att(attname) 1498: if att_names.include?(attname) 1499: get_att_(attname) 1500: else 1501: nil 1502: end 1503: end
# File lib/hdfeos5.rb, line 1508 1508: def get_grpatt(grpattname) 1509: if grpatt_names.include?(grpattname) 1510: get_grpatt_(grpattname) 1511: else 1512: nil 1513: end 1514: end
# File lib/hdfeos5.rb, line 1515 1515: def grpatt_names 1516: nattrs, attrnames, strbufsize = inqgrpattrs() 1517: return attrnames.split(/,/) 1518: end
set HE5 Point Field Object ( Field )
# File lib/hdfeos5.rb, line 1463 1463: def var(fieldname, levelname=nil) 1464: if levelname == nil 1465: setfield(fieldname) 1466: else 1467: fieldlist = chkfield(levelname) 1468: if fieldlist.include?(fieldname) 1469: setfield_level(fieldname,levelname) 1470: else 1471: raise ArgumentError, "Level do not exist this fieldname" 1472: end 1473: end 1474: end
return Data Field Name list
# File lib/hdfeos5.rb, line 1487 1487: def var_names 1488: nflds, fieldlist = nfields() 1489: return fieldlist.split(/,/) 1490: end
return HE5 Point Field Object
# File lib/hdfeos5.rb, line 1476 1476: def vars( names=nil ) # return all if names==nil 1477: if names == nil 1478: vars = (0..nvars()-1).collect{|varid| get_var(varid)} 1479: elsif(!file.is_a?(HE5)) 1480: raise TypeError, "names is not an array" if ! names.is_a?(Array) 1481: vars = names.collect{|name| var(name)} 1482: raise ArgumentError, "One or more variables do not exist" if vars.include?(nil) 1483: end 1484: return vars 1485: end