|
|
|||
|
||||
The rest of this example, from nf_test/ftst_groups.F, shows how groups may be read in Fortran 77.
C Reopen the file.
retval = nf_open(file_name, NF_NOWRITE, ncid)
if (retval .ne. nf_noerr) call handle_err(retval)
C Check the name of the root group.
retval = nf_inq_grpname(ncid, name_in)
if (retval .ne. nf_noerr) call handle_err(retval)
if (name_in(1:1) .ne. '/') stop 2
C Check the full name of the root group (also "/").
retval = nf_inq_grpname_full(ncid, full_name_len, name_in)
if (retval .ne. nf_noerr) call handle_err(retval)
if (full_name_len .ne. 1 .or. name_in(1:1) .ne. '/') stop 2
C What groups are there from the root group?
retval = nf_inq_grps(ncid, ngroups_in, grpids)
if (retval .ne. nf_noerr) call handle_err(retval)
if (ngroups_in .ne. 1) stop 2
C Check the name of this group.
retval = nf_inq_grpname(grpids(1), name_in)
if (retval .ne. nf_noerr) call handle_err(retval)
if (name_in(1:len(group_name)) .ne. group_name) stop 2
C Check the length of the full name.
retval = nf_inq_grpname_len(grpids(1), full_name_len)
if (retval .ne. nf_noerr) call handle_err(retval)
if (full_name_len .ne. len(group_name) + 1) stop 2
C Check the full name.
retval = nf_inq_grpname_full(grpids(1), full_name_len, name_in2)
if (retval .ne. nf_noerr) call handle_err(retval)
if (name_in2(1:1) .ne. '/' .or.
& name_in2(2:len(group_name)+1) .ne. group_name .or.
& full_name_len .ne. len(group_name) + 1) stop 2
C Check getting the grpid by full name
retval = nf_inq_grp_full_ncid(ncid, name_in, grpid_in)
if (retval .ne. nf_noerr) call handle_err(retval)
if (grpid_in .ne. grpids(1)) stop 2
C Check the parent ncid.
retval = nf_inq_grp_parent(grpids(1), grpid_in)
if (retval .ne. nf_noerr) call handle_err(retval)
if (grpid_in .ne. ncid) stop 2
| Contact Us Site Map Search Terms and Conditions Privacy Policy Participation Policy | |||||
|
|||||