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

HE5Pt クラスに関して

Methods

att_names   char_typecode   close   closed   create   def_level   def_link   detach   get_att   get_grpatt   get_var   grpatt_names   inspect   open   var   var_names   vars  

Public Class methods

[Source]

      # 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

[Source]

      # 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

Public Instance methods

[Source]

      # File lib/hdfeos5.rb, line 1504
1504:     def att_names
1505:       nattrs, attrnames, strbufsize = inqattrs()
1506:       return attrnames.split(/,/)
1507:     end

[Source]

      # 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

close point field & close HDF-EOS5 file

[Source]

      # File lib/hdfeos5.rb, line 1442
1442:     def close
1443:       ptdetach
1444:       self.file.close
1445:     end
closed()

Alias for detach

define HE5 Point Object

[Source]

      # 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

define HE5 Point Linkage Object

[Source]

      # File lib/hdfeos5.rb, line 1459
1459:     def def_link(fwd_name, bkw_name, key)
1460:       deflinkage(fwd_name, bkw_name, key)
1461:     end

detach point field

[Source]

      # File lib/hdfeos5.rb, line 1437
1437:     def detach
1438:       ptdetach
1439:     end

[Source]

      # 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

[Source]

      # 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

set HE5 Point Field Object ( Data Field )

[Source]

      # File lib/hdfeos5.rb, line 1492
1492:     def get_var(varid)
1493:       nflds, fieldlist = nfields()
1494:       fieldname=fieldlist.split(",")[varid]
1495:       return var(fieldname)
1496:     end

[Source]

      # File lib/hdfeos5.rb, line 1515
1515:     def grpatt_names
1516:       nattrs, attrnames, strbufsize = inqgrpattrs()
1517:       return attrnames.split(/,/)
1518:     end

[Source]

      # File lib/hdfeos5.rb, line 1538
1538:     def inspect
1539:       'HE5Pt:'+name
1540:     end

set HE5 Point Field Object ( Field )

[Source]

      # 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

[Source]

      # 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

[Source]

      # 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

[Validate]