LOGICAL FUNCTION DESC3( FNAME ) CHARACTER*(*), INTENT(IN ) :: FNAME ! file name for query
desc3c() is a C wrapper calling the Fortran DESC3()
int desc3c( const char * fname, IOAPI_Bdesc3 * bdesc , IOAPI_Cdesc3 * cdesc ) ;
DESC3() puts the description of the file with logical name FNAME into file description commons found in include file FDESC3.EXT ; desc3c() returns the file description in the structs at arguments "bdesc" and "cdesc" (defined in fdesc3.h ). Returns .TRUE. or 1, respectively, on success, and .FALSE. or 0 on failure.If FNAME is invalid, writes an error message indicating the nature of the problem to the log and returns a .FALSE. (or 0).
USE M3UTILIO
orINCLUDE 'IODECL3.EXT'
andINCLUDE 'FDESC3.EXT'
for Fortran, or#include "iodecl3.h"
and#include "fdesc3.h"
for C.FNAME must have length at most 16.
FNAME must already have been opened by OPEN3() or open3c() (and the I/O API must have been initialized with INIT3() or init3c() ).
The following*ATT*()
routines deal with reading and writing attributes (possibly in addition to the standard ones) to or from netCDF-based I/O API files:
See sample programs M3CPLE, PRESZ, and VERTINTEGRAL for additional usage examples.
... USE M3UTILIO ... ... IF ( DESC3( 'MYFILE' ) ) THEN !! Commons BDESC, CDESC from INCLUDE-file FDESC3.EXT !! contain description of the file with logical name MYFILE. ... END IF ...
... #include "iodecl3.h" ... if ( desc3c( "MYFILE", bdesc, cdesc ) ) { /* Structs *bdesc and *cdesc contain description of the file with logical name MYFILE. */ ... } ...
To: Models-3/EDSS I/O API: The Help Pages