Index of Functions: A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X 
Index Page
dafrfr

Table of contents
Procedure
Abstract
Required_Reading
Keywords
Declarations
Brief_I/O
Detailed_Input
Detailed_Output
Parameters
Exceptions
Files
Particulars
Examples
Restrictions
Literature_References
Author_and_Institution
Version

Procedure

     DAFRFR ( DAF, read file record )

     SUBROUTINE DAFRFR ( HANDLE, ND, NI, IFNAME, FWARD, BWARD, FREE )

Abstract

     Read the contents of the file record of a DAF.

Required_Reading

     DAF

Keywords

     FILES

Declarations

     IMPLICIT NONE

     INTEGER               HANDLE
     INTEGER               ND
     INTEGER               NI
     CHARACTER*(*)         IFNAME
     INTEGER               FWARD
     INTEGER               BWARD
     INTEGER               FREE

Brief_I/O

     VARIABLE  I/O  DESCRIPTION
     --------  ---  --------------------------------------------------
     HANDLE     I   Handle of an open DAF file.
     ND         O   Number of double precision components in summaries.
     NI         O   Number of integer components in summaries.
     IFNAME     O   Internal file name.
     FWARD      O   Forward list pointer.
     BWARD      O   Backward list pointer.
     FREE       O   Free address pointer.

Detailed_Input

     HANDLE   is the handle assigned to a DAF file opened for
              reading.

Detailed_Output

     ND,
     NI       are the numbers of double precision and integer
              components, respectively, in each array summary in
              the specified file.

     IFNAME   is the internal file name stored in the first
              (or file) record of the specified file.

     FWARD    is the forward list pointer. This points to the
              first summary record in the file. (Records between
              the first record and the first summary record are
              reserved when the file is created, and are invisible
              to DAF routines.)

     BWARD    is the backward list pointer. This points
              to the final summary record in the file.

     FREE     is the free address pointer. This contains the
              first free address in the file. (That is, the
              initial address of the next array to be added
              to the file.)

Parameters

     None.

Exceptions

     1)  If the handle passed to this routine is not the handle of an
         open DAF file, an error is signaled by a routine in the call
         tree of this routine.

     2)  If the specified DAF file is not open for read access, an
         error is signaled by a routine in the call tree of this
         routine.

     3)  If the specified record cannot (for some reason) be read,
         the error SPICE(DAFFRNOTFOUND) is signaled.

Files

     None.

Particulars

     The file record of a DAF is the only record that contains
     any global information about the file. This record is created
     when the file is created, and is updated only when new arrays
     are added.

     Like character records, file records are not buffered.

Examples

     In the following example, the value of the forward list
     pointer is examined in order to determine the number of
     reserved records in the DAF. These records are then read
     and the contents printed to the screen.

        CALL DAFRFR ( HANDLE, ND, NI, IFNAME, FWARD, BWARD, FREE )
        CALL DAFHLU ( HANDLE, UNIT )

        DO I = 2, FWARD - 1
           READ  (UNIT,REC=I) PRIVATE(1:1000)
           WRITE (*,*)        PRIVATE(1:1000)
        END DO

Restrictions

     None.

Literature_References

     None.

Author_and_Institution

     J. Diaz del Rio    (ODC Space)
     K.R. Gehringer     (JPL)
     H.A. Neilan        (JPL)
     W.L. Taber         (JPL)
     F.S. Turner        (JPL)
     I.M. Underwood     (JPL)
     E.D. Wright        (JPL)

Version

    SPICELIB Version 3.2.0, 02-JUL-2021 (JDR)

        Added IMPLICIT NONE statement.

        Edited the header to comply with NAIF standard.

    SPICELIB Version 3.1.0, 30-DEC-2009 (EDW)

        Expanded DAFFRNOTFOUND error message to identify the file
        handle corresponding to the error condition.

        Reordered header sections to conform to SPICE format.
        Merged the $Revisions sections, now deleted, with $Version.

    SPICELIB Version 3.0.0, 16-NOV-2001 (FST)

        Updated this routine to utilize interfaces built on
        the new handle manager to perform I/O operations.

        This routine now utilizes ZZDAFGFR to retrieve information
        from the file record. As this private interface takes a
        handle and performs the necessary logical unit to handle
        mapping, the call to DAFHLU was removed. The DAFSIH call
        remains, since this insures that HANDLE is known to DAFAH.

    SPICELIB Version 2.0.0, 04-OCT-1993 (KRG)

        The error SPICE(DAFNOIDWORD) is no longer signaled by this
        routine. The reason for this is that if DAFSIH returns OK then
        the handle passed to this routine is indeed a valid DAF file
        handle, otherwise the error is diagnosed by DAFSIH.

        Added a call to DAFSIH to signal an invalid handle and a test
        of FAILED () after it. This is to make sure that the DAF file
        is open for reading. If this call succeeds, we know that we
        have a valid DAF handle, so there is no need to check FAILED
        after the call to DAFHLU.

        The variable name DAFWRD was changed to IDWORD.

        Added two new exceptions to the $Exceptions section: 1 and 2.
        The remaining exception (3) was already present. The exceptions
        that were added are not new, but are being documented for the
        first time.


    SPICELIB Version 1.0.3, 06-OCT-1992 (HAN)

        Corrected a typo in the $Brief_I/O section. ND was listed
        twice as an input, and NI was not listed.

    SPICELIB Version 1.0.2, 10-MAR-1992 (WLT)

        Comment section for permuted index source lines was added
        following the header.

    SPICELIB Version 1.0.1, 22-MAR-1990 (HAN)

        Literature references added to the header.

    SPICELIB Version 1.0.0, 31-JAN-1990 (IMU)
Fri Dec 31 18:36:09 2021