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
scli01

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

     SCLI01 ( SCLK lookup of integer data, type 1 )

     ENTRY SCLI01 ( NAME, SC, MAXNV, N, IVAL )

Abstract

     Look up integer type 1 SCLK data from the kernel pool.

Required_Reading

     KERNEL
     SCLK

Keywords

     UTILITY

Declarations

    CHARACTER*(*)         NAME
    INTEGER               SC
    INTEGER               MAXNV
    INTEGER               N
    INTEGER               IVAL   ( * )

Brief_I/O

     VARIABLE  I/O  DESCRIPTION
     --------  ---  --------------------------------------------------
     NAME,
     SC         I   Name of kernel data item, NAIF spacecraft ID code.
     MAXNV      I   Maximum number of integer values to return.
     N          O   Number of values actually returned.
     IVAL       O   Returned integer values.
     MXNFLD     P   Maximum number of fields in an SCLK string.
     NDELIM     P   Maximum number of delimiter codes.
     MXTSYS     P   Maximum number of supported parallel time systems.

Detailed_Input

     NAME,
     SC       are, respectively, a name and a NAIF integer code
              of a spacecraft that together define the name of a
              requested kernel data item. NAME is the full name
              as it appears in the SCLK kernel, except that it
              lacks the final underscore and spacecraft integer
              code (actually, the negative of the spacecraft
              code).  This routine combines NAME and SC to
              make up the appropriate kernel variable name.

              For example, to look up data associated with the
              name

                 SCLK01_N_FIELDS_77

              you would supply NAME as

                 SCLK01_N_FIELDS

              and SC as -77.


     MAXNV    is the maximum number of values to return.  MAXNV
              is used to prevent SCLI01 from writing past the end
              of the supplied array IVAL.

Detailed_Output

     N        is the number of values actually returned.

     IVAL     is an array containing the requested integer
              kernel data item.

Parameters

     MXNFLD   is an upper bound on the number of fields in a
              SCLK string.

     NDELIM   is the number of delimiter codes.

     MXTSYS   is the maximum number of supported parallel time
              systems that SCLK values may be mapped to or from.

Exceptions

     1)  If item specified by NAME and SC is not found in the kernel
         pool, and if the presence of the item is required, the error
         SPICE(KERNELVARNOTFOUND) is signaled. The output arguments
         are not modified.

         If the specified item is not required, the output argument N
         will take the value 0, and the output argument IVAL is not
         modified.

     2)  If the item specified by NAME and SC is found but does not
         have numeric type, the error SPICE(BADKERNELVARTYPE) is
         signaled.

     3)  This routine can check certain data for validity. If any of
         these items have invalid values, the error
         SPICE(VALUEOUTOFRANGE) is signaled. The output arguments are
         not modified. The values in question are:

            -  The number of fields of a SCLK string
            -  The number of delimiter codes
            -  The output delimiter code
            -  The time system code

     4)  If the dimension of the requested item exceeds MAXNV, the
         error SPICE(ARRAYTOOSMALL) is signaled.

     5)  If the dimension of the requested item is outside of the
         limits for that item, the error SPICE(INVALIDSIZE) is
         signaled.

Files

     None.

Particulars

     The purpose of this routine is to localize error checking for
     lookups of type 1 SCLK kernel pool data. This routine handles
     lookups of integer data.

Examples

     1)  To get the number of SCLK fields for the Galileo spacecraft
         clock, you can use the code fragment below:

            C
            C     Load the SCLK kernel in question. We use a
            C     made-up name for the kernel file; you would use
            C     the actual name of your kernel file instead if you
            C     were to carry out this procedure.
            C
                  CALL FURNSH ( 'SAMPLE_GLL_SCLK.KER' )

                  SC   = -77
                  NAME = 'SCLK01_N_FIELDS'

                  CALL SCLI01 ( NAME, SC, MXNFLD, N, NFIELD )


         After this subroutine call, NFIELD has the value 4.

Restrictions

     1)  SCLI01 assumes that a SCLK kernel appropriate to the
         spacecraft identified by SC has been loaded.

     2)  SCLI01 handles lookups of type 1 SCLK data only.

Literature_References

     None.

Author_and_Institution

     N.J. Bachman       (JPL)
     J. Diaz del Rio    (ODC Space)
     W.L. Taber         (JPL)
     E.D. Wright        (JPL)

Version

    SPICELIB Version 3.0.0, 01-DEC-2021 (NJB) (JDR)

        New checks on item sizes have been added: sizes are now
        compared against upper bounds as well as lower bounds.
        Previously only lower bounds were used.

        Corrected comments about count checks. Made cosmetic changes
        to code and comments.

        Edited the header to comply with NAIF standard.

    SPICELIB Version 2.2.0, 20-NOV-2006 (NJB) (EDW)

        Routine was updated to use GIPOOL instead of RTPOOL. Header
        has been updated to remove warnings about memory corruption and
        to document exception handling for output buffer overflow
        errors.

        Header references to LDPOOL were replaced with references to
        FURNSH.

    SPICELIB Version 2.1.0, 19-OCT-1992 (NJB)

        This entry point was updated to fix a bug: if a kernel pool
        lookup fails, the number of elements returned N is now set to
        zero.

    SPICELIB Version 2.0.0, 17-APR-1992 (NJB) (WLT)

        SCLI01 was updated to handle a time system specification for
        the `parallel' time system in the SCLK kernel. Some
        corrections and other minor enhancements were made to the
        header. Comment section for permuted index source lines was
        added following the header.

    SPICELIB Version 1.0.0, 06-SEP-1990 (NJB)
Fri Dec 31 18:36:46 2021