| dascud |
|
Table of contents
Procedure
DASCUD ( DAS, create or update directories )
SUBROUTINE DASCUD ( HANDLE, TYPE, NWORDS )
Abstract
Create or update directories in a DAS file to reflect addition
of a specified number of words of a specified data type.
Required_Reading
DAS
Keywords
DAS
FILES
UTILITY
Declarations
IMPLICIT NONE
INTEGER HANDLE
INTEGER TYPE
INTEGER NWORDS
INTEGER CHAR
PARAMETER ( CHAR = 1 )
INTEGER DP
PARAMETER ( DP = 2 )
INTEGER INT
PARAMETER ( INT = 3 )
Brief_I/O
VARIABLE 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_Input
HANDLE 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_Output
None. See $Particulars for a description of the action of this
routine.
Parameters
CHAR,
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.
Exceptions
1) 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.
Files
None.
Particulars
This 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.
Examples
1) Update directories after writing N integer words to a
DAS file designated by HANDLE:
CALL DASCUD ( HANDLE, INT, N )
Restrictions
1) This routine is intended for use by the SPICELIB DAS routines.
Non-SPICELIB software normally will not need to call this
routine.
Literature_References
None.
Author_and_Institution
N.J. Bachman (JPL)
J. Diaz del Rio (ODC Space)
K.R. Gehringer (JPL)
W.L. Taber (JPL)
Version
SPICELIB 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