| sysetc |
|
Table of contents
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