32 Function nf_inq_att(ncid, varid, name, xtype, nlen) RESULT(status)
40 Integer,
Intent(IN) :: ncid, varid
41 Character(LEN=*),
Intent(IN) :: name
42 Integer,
Intent(OUT) :: nlen, xtype
46 Integer(C_INT) :: cncid, cstatus, cvarid
47 Integer(C_SIZE_T) :: cnlen
48 Integer(C_INT) :: cxtype
49 Character(LEN=(LEN(name)+1)) :: cname
59 cstatus =
nc_inq_att(cncid, cvarid, cname(1:ie), cxtype, cnlen)
61 If (cstatus == nc_noerr)
Then 77 Integer,
Intent(IN) :: ncid, varid
78 Character(LEN=*),
Intent(IN) :: name
79 Integer,
Intent(OUT) :: xtype
83 Integer(C_INT) :: cncid, cstatus, cvarid
84 Integer(C_INT) :: cxtype
85 Character(LEN=(LEN(name)+1)) :: cname
97 If (cstatus == nc_noerr)
Then 104 Function nf_inq_attlen(ncid, varid, name, nlen) RESULT(status)
112 Integer,
Intent(IN) :: ncid, varid
113 Character(LEN=*),
Intent(IN) :: name
114 Integer,
Intent(OUT) :: nlen
118 Integer(C_INT) :: cncid, cstatus, cvarid
119 Integer(C_SIZE_T) :: cnlen
120 Character(LEN=(LEN(name)+1)) :: cname
132 If (cstatus == nc_noerr)
Then 139 Function nf_inq_attid(ncid, varid, name, attnum) RESULT(status)
147 Integer,
Intent(IN) :: ncid, varid
148 Character(LEN=*),
Intent(IN) :: name
149 Integer,
Intent(OUT) :: attnum
153 Integer(C_INT) :: cncid, cstatus, cattnum, cvarid
154 Character(LEN=(LEN(name)+1)) :: cname
164 cstatus =
nc_inq_attid(cncid, cvarid, cname(1:ie), cattnum)
166 If (cstatus == nc_noerr)
Then 181 Integer,
Intent(IN) :: ncid, varid, attnum
182 Character(LEN=*),
Intent(OUT) :: name
186 Integer(C_INT) :: cncid, cstatus, cattnum, cvarid
187 Character(LEN=(LEN(name)+1)) :: tmpname
194 name = repeat(
" ",nlen)
195 tmpname = repeat(
" ",len(tmpname))
199 If (cstatus == nc_noerr)
Then 209 Function nf_copy_att(ncid_in, varid_in, name, ncid_out, varid_out) &
219 Integer,
Intent(IN) :: ncid_in, varid_in, ncid_out, varid_out
220 Character(LEN=*),
Intent(IN) :: name
224 Integer(C_INT) :: cncidin, cncidout,cvaridin, cvaridout, cstatus
225 Character(LEN=(LEN(name)+1)) :: cname
229 cvaridin = varid_in - 1
231 cvaridout = varid_out - 1
237 cstatus =
nc_copy_att(cncidin, cvaridin, cname(1:ie), &
244 Function nf_rename_att(ncid, varid, name, newname) RESULT(status)
252 Integer,
Intent(IN) :: ncid, varid
253 Character(LEN=*),
Intent(IN) :: name, newname
257 Integer(C_INT) :: cncid, cvarid, cstatus
258 Character(LEN=(LEN(name)+1)) :: cname
259 Character(LEN=(LEN(newname)+1)) :: cnewname
260 Integer :: ie1, ie2, inull
272 cstatus =
nc_rename_att(cncid, cvarid, cname(1:ie1), cnewname(1:ie2))
278 Function nf_del_att(ncid, varid, name) RESULT(status)
286 Integer,
Intent(IN) :: ncid, varid
287 Character(LEN=*),
Intent(IN) :: name
291 Integer(C_INT) :: cncid, cvarid, cstatus
292 Character(LEN=(LEN(name)+1)) :: cname
302 cstatus =
nc_del_att(cncid, cvarid, cname(1:ie))
integer function nf_del_att(ncid, varid, name)
integer function nf_inq_atttype(ncid, varid, name, xtype)
integer function nf_inq_attname(ncid, varid, attnum, name)
integer function nf_inq_attid(ncid, varid, name, attnum)
integer function nf_rename_att(ncid, varid, name, newname)
module procedure interfaces for utility routines
integer function nf_copy_att(ncid_in, varid_in, name, ncid_out, varid_out)
integer function nf_inq_attlen(ncid, varid, name, nlen)
integer function nf_inq_att(ncid, varid, name, xtype, nlen)