syputc |
Table of contents
ProcedureSYPUTC ( Set the values associated with a symbol ) SUBROUTINE SYPUTC ( NAME, VALUES, N, TABSYM, TABPTR, TABVAL ) AbstractSet the values 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_ReadingSYMBOLS KeywordsSYMBOLS DeclarationsIMPLICIT NONE INTEGER LBCELL PARAMETER ( LBCELL = -5 ) CHARACTER*(*) NAME CHARACTER*(*) VALUES ( * ) INTEGER N CHARACTER*(*) TABSYM ( LBCELL:* ) INTEGER TABPTR ( LBCELL:* ) CHARACTER*(*) TABVAL ( LBCELL:* ) Brief_I/OVARIABLE I/O DESCRIPTION -------- --- -------------------------------------------------- NAME I Name of the symbol whose associated values are to be put into the symbol table. VALUES I Values to be associated with the symbol NAME. N I Number of values in VALUES. TABSYM, TABPTR, TABVAL I-O Components of the symbol table. Detailed_InputNAME is the name of the symbol whose associated values are to be set. If NAME has values associated with it, they are removed, and the elements of VALUES become the values associated with NAME. If NAME is not in the symbol table, a new symbol is created, provided there is room in the symbol table. VALUES are the new values associated with the symbol NAME. N is the number of elements in the VALUES array. TABSYM, TABPTR, TABVAL are the components of a character symbol table. Detailed_OutputTABSYM, TABPTR, TABVAL are the components of a character symbol table. If NAME has values associated with it, they are removed, and the elements of VALUES become the values associated with NAME. If NAME is not in the symbol table, a new symbol is created, provided there is room in the symbol table. ParametersNone. Exceptions1) 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 new values causes an overflow in the value table, the error SPICE(VALUETABLEFULL) is signaled. 4) If N < 1, the error SPICE(INVALIDARGUMENT) is signaled. FilesNone. ParticularsThis subroutine is like SYSETC, but SYPUTC allows **several** values to be associated with a symbol. If NAME has values associated with it, they are removed, and the elements of VALUES become the values associated with NAME. If NAME is not in the symbol table, a new symbol is created, provided there is room in the symbol table. ExamplesThe contents of the symbol table are: BOHR --> HYDROGEN ATOM FERMI --> NUCLEAR FISSION PAULI --> NEUTRINO If VALUES contains the elements, SPECIAL RELATIVITY PHOTOELECTRIC EFFECT BROWNIAN MOTION the call CALL SYPUTC ( 'EINSTEIN', VALUES, 3, TABSYM, TABPTR, TABVAL ) modifies the contents of the symbol table to be: BOHR --> HYDROGEN ATOM ENISTEIN --> SPECIAL RELATIVITY PHOTOELECTRIC EFFECT BROWNIAN MOTION FERMI --> NUCLEAR FISSION PAULI --> NEUTRINO The call, CALL SYPUTC ( 'PAULI', VALUES, 3, TABSYM, TABPTR, TABVAL ) modifies the contents of the symbol table to be: BOHR --> HYDROGEN ATOM ENISTEIN --> SPECIAL RELATIVITY PHOTOELECTRIC EFFECT BROWNIAN MOTION FERMI --> NUCLEAR FISSION PAULI --> SPECIAL RELATIVITY PHOTOELECTRIC EFFECT BROWNIAN MOTION Note that the previous values associated with PAULI have been replaced by the values in VALUES. RestrictionsNone. Literature_ReferencesNone. Author_and_InstitutionJ. Diaz del Rio (ODC Space) H.A. Neilan (JPL) W.L. Taber (JPL) I.M. Underwood (JPL) VersionSPICELIB Version 1.1.0, 08-APR-2021 (JDR) Added IMPLICIT NONE statement. Edited the header to comply with NAIF standard. Removed unnecessary $Revisions 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