| dasrrd |
|
Table of contents
Procedure
DASRRD ( DAS, read record, double precision )
ENTRY DASRRD ( HANDLE, RECNO, FIRST, LAST, DATAD )
Abstract
Read DAS double precision physical records.
Required_Reading
DAS
Keywords
ASSIGNMENT
DAS
FILES
Declarations
INTEGER HANDLE
INTEGER RECNO
INTEGER FIRST
INTEGER LAST
DOUBLE PRECISION DATAD ( * )
Brief_I/O
VARIABLE I/O DESCRIPTION
-------- --- --------------------------------------------------
HANDLE I Handle of DAS file.
RECNO I Record number.
FIRST,
LAST I First and last indices of range within record.
DATAD O Double precision data read from record.
BUFSZD P Number of records in the DP record buffer.
NWD P Number of DP in a single DAS DP record.
Detailed_Input
HANDLE is the handle of an open DAS file.
RECNO is the number of a record in a DAS file.
FIRST,
LAST are the first and last indices of a range of
double precision numbers to be read from the
indicated record. The record contains NWD
double precision numbers; these have indices
ranging from 1 to NWD.
Detailed_Output
DATAD is a double precision array containing the
elements FIRST through LAST of the specified
record. The record element FIRST is placed
in DATAD(1), the record element FIRST+1 is placed
in DATAD(2), and so on; the record element LAST is
placed in DATAD(LAST-FIRST+1).
Parameters
NWD is the number of DPs in a single DAS record
containing DPs.
BUFSZD is the number of records in the double precision
record buffer.
Exceptions
1) If the input file handle is invalid, an error is signaled by a
routine in the call tree of this routine. The output argument
DATAD will not be modified.
2) If a read operation attempted by this routine fails, an error
is signaled by a routine in the call tree of this routine. The
output argument DATAD will not be modified.
3) If a write operation attempted by this routine fails, an error
is signaled by a routine in the call tree of this routine. The
output argument DATAD will not be modified. This routine may
write out updated, buffered records in order to make room in
the double precision buffer for a newly read record. Note that
the file written to may be different than the file designated
by HANDLE if multiple DAS files are open for writing.
4) If FIRST or LAST is not in the range [1, NWD], the error
SPICE(INDEXOUTOFRANGE) is signaled. The output argument
DATAD will not be modified.
5) If FIRST > LAST, this routine will return without modifying
the output argument DATAD.
Files
See the description of the argument HANDLE in $Detailed_Input.
Particulars
Routines outside of SPICELIB will normally have no need to call
this routine.
This routine can be used to read from a DAS file that is open for
reading or for writing. Any buffered double precision record
can be read with this routine. In particular, records that have
been written to the DAS double precision record buffer but have
not yet been written out to the DAS file they're intended to go
to ARE visible to this routine.
This routine should be used to read only records that contain
double precision data.
Examples
1) Read the 10th through 100th d.p. numbers from record number 9
in a DAS file designated by HANDLE.
CALL DASRRD ( HANDLE, 9, 10, 100, DATAD )
Restrictions
None.
Literature_References
None.
Author_and_Institution
N.J. Bachman (JPL)
J. Diaz del Rio (ODC Space)
K.R. Gehringer (JPL)
B.V. Semenov (JPL)
W.L. Taber (JPL)
Version
SPICELIB Version 2.0.1, 22-FEB-2021 (JDR)
Edited the header to comply with NAIF standard.
SPICELIB Version 2.0.0, 05-FEB-2015 (NJB)
Upgraded to support handle manager integration and
reading of non-native files.
SPICELIB Version 1.1.1, 10-FEB-2014 (BVS)
Added description of NWD to the $Parameters and $Brief_I/O
sections of the header.
SPICELIB Version 1.1.0, 03-NOV-1995 (NJB)
Made modifications to enhance efficiency. Removed references
to the function RETURN.
Removed weird spaces from ENTRY statement.
SPICELIB Version 1.0.1, 28-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.
SPICELIB Version 1.0.0, 30-JUN-1992 (NJB) (WLT)
|
Fri Dec 31 18:36:11 2021