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
synthi

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

     SYNTHI ( Return the Nth component of a symbol )

     SUBROUTINE SYNTHI ( NAME,
    .                    NTH,
    .                    TABSYM, TABPTR, TABVAL,
    .                    VALUE,
    .                    FOUND                               )

Abstract

     Return the Nth component of a particular symbol in an integer
     symbol table.

Required_Reading

     SYMBOLS

Keywords

     SYMBOLS

Declarations

     IMPLICIT NONE

     INTEGER               LBCELL
     PARAMETER           ( LBCELL = -5 )

     CHARACTER*(*)         NAME
     INTEGER               NTH
     CHARACTER*(*)         TABSYM     ( LBCELL:* )
     INTEGER               TABPTR     ( LBCELL:* )
     INTEGER               TABVAL     ( LBCELL:* )
     INTEGER               VALUE
     LOGICAL               FOUND

Brief_I/O

     VARIABLE  I/O  DESCRIPTION
     --------  ---  --------------------------------------------------
     NAME       I   Name of the symbol whose Nth component is to be
                    returned.
     NTH        I   Index of the value to be returned.
     TABSYM,
     TABPTR,
     TABVAL     I   Components of the symbol table.
     VALUE      O   Nth value associated with the symbol.
     FOUND      O   .TRUE. if the Nth value of the symbol exists, false
                    if it does not.

Detailed_Input

     NAME     is the name of the symbol whose Nth component is to be
              returned. If NAME is not in the symbol table, FOUND is
              .FALSE.

     NTH      is the index of the component to be returned. If the
              value of NTH is out of range ( NTH < 1 or NTH is
              greater than the dimension of the symbol ) FOUND is
              .FALSE.

     TABSYM,
     TABPTR,
     TABVAL   are the components of an integer symbol table.
              The symbol table is not modified by this subroutine.

Detailed_Output

     VALUES   is the NTH component of the symbol NAME.

     FOUND    is .TRUE. if NAME is in the symbol table and the NTH
              component of NAME exists. Otherwise FOUND is .FALSE.

Parameters

     None.

Exceptions

     1)  If there is an issue while reading the components of a
         integer symbol table, an error is signaled by a routine in
         the call tree of this routine. This normally indicates that
         the integer symbol table is corrupted.

Files

     None.

Particulars

     Two conditions will cause the value of FOUND to be .FALSE.:

     1)  The symbol NAME is not in the symbol table.

     2)  NTH is out of range ( NTH < 1 or NTH is greater than the
         dimension of the symbol ).

Examples

     The contents of the symbol table are:

         books   -->   5
         erasers -->   6
         pencils -->  12
                      24
         pens    -->  10
                      12
                      24

      The calls,

      CALL SYNTHI ( 'pens',    2, TABSYM, TABPTR, TABVAL, VALUE,
     .               FOUND                                       )

      CALL SYNTHI ( 'pencils', 3, TABSYM, TABPTR, TABVAL, VALUE,
     .               FOUND                                       )

      CALL SYNTHI ( 'chairs',  1, TABPTR, TABVAL, TABVAL, VALUE,
     .               FOUND                                       )

      return the values of VALUE and FOUND corresponding to NAME and
      NTH:

         NAME            NTH       VALUE      FOUND
         ----------     -----     -------    -------
         pens             2         12        .TRUE.
         pencils                             .FALSE.
         chairs                              .FALSE.

Restrictions

     None.

Literature_References

     None.

Author_and_Institution

     J. Diaz del Rio    (ODC Space)
     H.A. Neilan        (JPL)
     W.L. Taber         (JPL)
     I.M. Underwood     (JPL)

Version

    SPICELIB Version 1.1.0, 12-AUG-2021 (JDR)

        Added IMPLICIT NONE statement.

        Edited the header to comply with NAIF standard. Added entry #1
        in $Exceptions section.

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

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

    SPICELIB Version 1.0.0, 31-JAN-1990 (IMU) (HAN)
Fri Dec 31 18:37:00 2021