Descriptors have been derived from the concepts used in a FITS file
header and have many similarities with the FITS keywords.
In particular the names of
the MIDAS standard descriptors, e.g. NAXIS, NPIX, etc.,
(for details see Appendix ``Standard Descriptors'' of
the MIDAS Environment doc.) correspond to those in the FITS header.
Descriptors come in four flavours: integer, real, double precision and character. Mixed types are not possible, i.e. you cannot have a real descriptor TEST and an integer descriptor TEST at the same time. Each descriptor also has a name (max. 48 chars.) and a length (no. of elements).
NoteNTT and VLT instruments will produce data frames with all ancillary information stored in the ESO hierarchical FITS keywords. In order to get ready for these long keywords, the max. size of the names of Midas descriptors has been extended from 15 to 48 chars. Therefore, images and tables created with a Midas version after 95NOV cannot be processed with an earlier Midas version! Files created with older Midas versions can, naturally, be used in the new (and future) Midas versions.
Since the 98NOV version you can set a switch (via SET/MIDAS DSCFORMAT=OLD) to create new frames with the old descriptor format.
Writing values into
positions beyond the current length leads to an automatic extension
of the descriptor (and update of its length) just as
a text file is extended by the ``editor'' when you are editing it.
Beware, not to create uninitialized `holes' by writing to descriptor elements which are not immediately following the current last element! MIDAS will not initialize the descriptor elements in between, so their values are unpredictable.
The command to write values into a descriptor requires the name of the data file (which could be an image, table or fit file), the descriptor name, the descriptor type, the first element to be accessed, and the total number of elements to be transferred (all separated by a `/' (slash)). Finally, the data values are given (separated by commas for numeric data, but no spaces). For example,
WRITE/DESCR imgfile Descname/C/1/7 Anynamewould write the ASCII string Anyname into the character descriptor Descname associated with the data file imgfile.bdf. Since spaces serve as parameter delimiters in MIDAS they have to be enclosed by double quotes (") if used as data. So
WRITE/DESCR imgfile Descname/C/1/7 " "would fill Descname with 7 blanks.
WRITE/DESCR imgfile Descname/R/4/3 17.3,8.8E2,-.3would write the numbers 17.3, 880.0, -0.3 into elements 4,5 and 6 of real descriptor Descname. If the descriptor were created with fewer than 6 elements it would be expanded automatically.
WRITE/DESCR tblname.tbl Descname/R/4/3 17.3,8.8E2,-.3would write the numbers 17.3, 880.0, -0.3 into elements 4,5 and 6 of real descriptor Descname of the table file tblname.tbl.
An optional help text can be attached to each descriptor and is then displayed via the READ/DESCR and SHOW/DESCR commands. This text is copied from the original FITS file (if existing) when reading in the data file or can be explicitly set via WRITE/DHELP.