comp.lang.idl-pvwave archive
Messages from Usenet group comp.lang.idl-pvwave, compiled by Paulo Penteado

Home » Public Forums » archive » Re: NetCDF Attribute Inquiry
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Return to the default flat view Create a new topic Submit Reply
Re: NetCDF Attribute Inquiry [message #24320 is a reply to message #24242] Thu, 22 March 2001 04:50 Go to previous message
Alex Schuster is currently offline  Alex Schuster
Messages: 124
Registered: February 1997
Senior Member
"Liam E. Gumley" wrote:

> Alex Schuster wrote:

[How to check for available attributes without using NCDF_ATTINQ(),
which sometimes gives bad results]

> Here is a function which returns a list of attribute names for a given
> variable name. If the variable name is set to the null string '', a list
> of global attribute names is returned.
>
> FUNCTION NCDF_ATTDIR, CDFID, VARNAME
[...]

Thanks! That's what I needed.

As I also don't know for sure beforehand which variables are in the
file, I modified your routine so it returns this info. I guess you also
already have a NCDF_VARDIR() function, but here it is anyway:


FUNCTION NCDF_VARDIR, CDFID

;- Check arguments
if n_params() ne 1 then message, 'Usage: RESULT = NCDF_VARDIR(CDFID)'
if n_elements(cdfid) eq 0 then message, 'CDFID is undefined'

;- Set default return value
varnames = ''

fileinfo = ncdf_inquire(cdfid)
nvars = fileinfo.nvars

;- If variables were found, get attribute names
if nvars gt 0 then begin
varnames = strarr(nvars)
for index = 0, nvars - 1 do $
varnames[index] = (ncdf_varinq(cdfid,index)).name
endif

;- Return the result
return, varnames

END

Alex
--
Alex Schuster Wonko@weird.cologne.de PGP Key available
alex@pet.mpin-koeln.mpg.de
[Message index]
 
Read Message
Read Message
Previous Topic: IDL and Mac OS 9.1
Next Topic: Re: skips while reading tab delimited data

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ] [ PDF ]

Current Time: Sun Oct 12 14:53:49 PDT 2025

Total time taken to generate the page: 0.48042 seconds