dascud |
Table of contents
ProcedureDASCUD ( DAS, create or update directories ) SUBROUTINE DASCUD ( HANDLE, TYPE, NWORDS ) AbstractCreate or update directories in a DAS file to reflect addition of a specified number of words of a specified data type. Required_ReadingDAS KeywordsDAS FILES UTILITY DeclarationsIMPLICIT NONE INTEGER HANDLE INTEGER TYPE INTEGER NWORDS INTEGER CHAR PARAMETER ( CHAR = 1 ) INTEGER DP PARAMETER ( DP = 2 ) INTEGER INT PARAMETER ( INT = 3 ) Brief_I/OVARIABLE I/O DESCRIPTION -------- --- -------------------------------------------------- HANDLE I DAS file handle. TYPE I Data type specifier. NWORDS I Number of words of data being added. CHAR P Parameter indicating character data type. DP P Parameter indicating double precision data type. INT P Parameter indicating integer data type. Detailed_InputHANDLE is the file handle of a DAS file open for writing. TYPE is a data type specifier. TYPE may be any of the parameters CHAR DP INT which indicate `character', `double precision', and `integer' respectively. NWORDS is the number of words of data of the data type indicated by TYPE whose addition to the indicated DAS file is to be accounted for. Detailed_OutputNone. See $Particulars for a description of the action of this routine. ParametersCHAR, DP, INT are data type specifiers which indicate `character', `double precision', and `integer' respectively. These parameters are used in all DAS routines that require a data type specifier as input. Exceptions1) If the input handle is invalid, an error is signaled by a routine in the call tree of this routine. 2) If TYPE is not recognized, the error SPICE(DASINVALIDTYPE) is signaled. 3) If NWORDS is negative, the error SPICE(VALUEOUTOFRANGE) is signaled. FilesNone. ParticularsThis routine operates by side effects: the directories in the indicated DAS file will be updated to reflect the addition of the indicated number of words of the specified data type. If necessary, a new directory record will be added to the file to hold a new cluster descriptor. In addition, the file summary for the indicated DAS file will be updated with the new values of the descriptor location and last logical address of the indicated type, as well as with the new value of the free record pointer. This routine is used by the DASADx routines: after each data addition, they call this routine to update the directories of the affected DAS file. Normally, there will be no need for routines outside of SPICELIB to call this routine directly. To add data to or update a DAS file, the DASADx and DASUDx routines should be used; these routines take care of directory creation and updates. Examples1) Update directories after writing N integer words to a DAS file designated by HANDLE: CALL DASCUD ( HANDLE, INT, N ) Restrictions1) This routine is intended for use by the SPICELIB DAS routines. Non-SPICELIB software normally will not need to call this routine. Literature_ReferencesNone. Author_and_InstitutionN.J. Bachman (JPL) J. Diaz del Rio (ODC Space) K.R. Gehringer (JPL) W.L. Taber (JPL) VersionSPICELIB Version 1.5.0, 13-AUG-2021 (JDR) Added IMPLICIT NONE statement. Edited the header to comply with NAIF standard. SPICELIB Version 1.4.0, 07-AUG-2006 (NJB) Bug fix: added initialization of variable LTYPE to support operation under the Macintosh Intel Fortran compiler. Note that this bug did not affect operation of this routine on other platforms. SPICELIB Version 1.3.0, 16-JAN-2003 (NJB) Bug fix: fixed previous bug fix. SPICELIB Version 1.2.0, 10-DEC-2002 (NJB) Bug fix: now a new, empty directory record with valid backward and forward pointers is written immediately when it is created. SPICELIB Version 1.1.1, 19-DEC-1995 (NJB) Corrected title of permuted index entry section. SPICELIB Version 1.0.1, 26-OCT-1993 (KRG) Removed references to specific DAS file open routines in the $Detailed_Input section of the header. This was done in order to minimize documentation changes if the DAS open routines ever change. Removed an unused variable. SPICELIB Version 1.0.0, 30-JUN-1992 (NJB) (WLT) |
Fri Dec 31 18:36:10 2021