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
sysetc

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

     SYSETC ( Set the value associated with a symbol )

     SUBROUTINE SYSETC ( NAME, VALUE, TABSYM, TABPTR, TABVAL )

Abstract

     Set the value of a particular symbol in a character symbol table.
     If the symbol already exists, the previous values associated with
     it are removed, otherwise a new symbol is created.

Required_Reading

     SYMBOLS

Keywords

     SYMBOLS

Declarations

     IMPLICIT NONE

     INTEGER               LBCELL
     PARAMETER           ( LBCELL = -5 )

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

Brief_I/O

     VARIABLE  I/O  DESCRIPTION
     --------  ---  --------------------------------------------------
     NAME       I   Name of the symbol whose associated value is to be
                    set.
     VALUE      I   Associated value of the symbol NAME.
     TABSYM,
     TABPTR,
     TABVAL    I-O  Components of the symbol table.

Detailed_Input

     NAME     is the name of the symbol whose associated value is to
              be set.

              If NAME has values associated with it, they are removed,
              and VALUE becomes the only value associated with NAME. If
              NAME is not in the symbol table, a new symbol is created,
              provided there is room in the symbol table.

     VALUE    is the new value associated with the symbol NAME.

     TABSYM,
     TABPTR,
     TABVAL   are the components of a character symbol table.

Detailed_Output

     TABSYM,
     TABPTR,
     TABVAL   are the components of a character symbol table.

              If NAME has values associated with it, they are removed,
              and VALUE becomes the only value associated with NAME. If
              NAME is not in the symbol table, a new symbol is created,
              provided there is room in the symbol table.

Parameters

     None.

Exceptions

     1)  If the addition of a new symbol causes an overflow in the
         name table, the error SPICE(NAMETABLEFULL) is signaled.

     2)  If the addition of a new symbol causes an overflow in the
         pointer table, the error SPICE(POINTERTABLEFULL) is signaled.

     3)  If the addition of a new symbol causes an overflow in the
         value table, the error SPICE(VALUETABLEFULL) is signaled.

Files

     None.

Particulars

     If NAME has values associated with it, they are removed, and VALUE
     becomes the only value associated with NAME. If NAME is not in the
     symbol table, a new symbol is created, provided there is room in
     the symbol table.

Examples

     The contents of the symbol table are:

         BOHR      -->   HYDROGEN ATOM
         EINSTEIN  -->   SPECIAL RELATIVITY
                         PHOTOELECTRIC EFFECT
                         BROWNIAN MOTION
         FERMI     -->   NUCLEAR FISSION
         PAULI     -->   EXCLUSION PRINCIPLE
                         NEUTRINO

      The call,

      CALL SYSETC ( 'EINSTEIN', 'GENERAL RELATIVITY',
     .               TABSYM,     TABPTR,      TABVAL  )

      modifies the contents of the symbol table to be:

         BOHR      -->   HYDROGEN ATOM
         EINSTEIN  -->   GENERAL RELATIVITY
         FERMI     -->   NUCLEAR FISSION
         PAULI     -->   EXCLUSION PRINCIPLE
                         NEUTRINO

      Note that the previous values associated with the symbol
      "EINSTEIN" have been deleted, and now only the new value is
      associated with the symbol.


      The next call,

      CALL SYSETC ( 'MILLIKAN', 'PHOTOELECTRIC EFFECT'
     .               TABSYM,     TABPTR,       TABVAL   )

      modifies the contents of the symbol table to be:

         BOHR      -->   HYDROGEN ATOM
         EINSTEIN  -->   GENERAL RELATIVITY
         FERMI     -->   NUCLEAR FISSION
         MILLIKAN  -->   PHOTOELECTRIC EFFECT
         PAULI     -->   EXCLUSION PRINCIPLE
                         NEUTRINOC

      Note that the new symbol "MILLIKAN" was created by the last call.
      A new symbol is created only if there is room in the symbol
      table.

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, 17-JUN-2021 (JDR)

        Added IMPLICIT NONE statement.

        Edited the header to comply with NAIF standard.

    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:01 2021