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
lmpool

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

     LMPOOL ( Load variables from memory into the pool )

     ENTRY LMPOOL ( CVALS, N )

Abstract

     Load the variables contained in an internal buffer into the
     kernel pool.

Required_Reading

     KERNEL

Keywords

     CONSTANTS
     FILES

Declarations

    CHARACTER*(*)         CVALS ( * )
    INTEGER               N

Brief_I/O

     VARIABLE  I/O  DESCRIPTION
     --------  ---  --------------------------------------------------
     CVALS      I   An array that contains a SPICE text kernel
     N          I   The number of entries in CVALS.

Detailed_Input

     CVALS    is an array that contains lines of text that
              could serve as a SPICE text kernel.

     N        is the number of entries in CVALS.

Detailed_Output

     None.

Parameters

     None.

Exceptions

     1)  If any of the kernel pool variables names or their values, as
         provided in the input CVALS array, cannot be parsed, an error
         is signaled by a routine in the call tree of this routine.

     2)  If there is no room left in the kernel pool to store all
         variables present in the input CVALS array, an error is
         signaled by a routine in the call tree of this routine.

     3)  If the length of any kernel pool variable name present in the
         input CVALS array exceeds its maximum allowed length (see
         Kernel Required Reading, kernel.req), an error is signaled by
         a routine in the call tree of this routine.

Files

     None.

Particulars

     This routine allows you to store a text kernel in an internal
     array of your program and load this array into the kernel pool
     without first storing its contents as a text kernel.

Examples

     Suppose that your application is not particularly sensitive
     to the current number of leapseconds but that you would
     still like to use a relatively recent leapseconds kernel
     without requiring users to load a leapseconds kernel into
     the program. The example below shows how you might set up
     the initialization portion of your program.

        INTEGER               LNSIZE
        PARAMETER           ( LNSIZE = 80 )

        CHARACTER*(LNSIZE)    TEXT ( 27 )

        TEXT(  1 ) = 'DELTET/DELTA_T_A =   32.184'
        TEXT(  2 ) = 'DELTET/K         =    1.657D-3'
        TEXT(  3 ) = 'DELTET/EB        =    1.671D-2'
        TEXT(  4 ) = 'DELTET/M = (  6.239996D0   1.99096871D-7 )'
        TEXT(  5 ) = 'DELTET/DELTA_AT  = ( 10,   @1972-JAN-1'
        TEXT(  6 ) = '                     11,   @1972-JUL-1'
        TEXT(  7 ) = '                     12,   @1973-JAN-1'
        TEXT(  8 ) = '                     13,   @1974-JAN-1'
        TEXT(  9 ) = '                     14,   @1975-JAN-1'
        TEXT( 10 ) = '                     15,   @1976-JAN-1'
        TEXT( 11 ) = '                     16,   @1977-JAN-1'
        TEXT( 12 ) = '                     17,   @1978-JAN-1'
        TEXT( 13 ) = '                     18,   @1979-JAN-1'
        TEXT( 14 ) = '                     19,   @1980-JAN-1'
        TEXT( 15 ) = '                     20,   @1981-JUL-1'
        TEXT( 16 ) = '                     21,   @1982-JUL-1'
        TEXT( 17 ) = '                     22,   @1983-JUL-1'
        TEXT( 18 ) = '                     23,   @1985-JUL-1'
        TEXT( 19 ) = '                     24,   @1988-JAN-1'
        TEXT( 20 ) = '                     25,   @1990-JAN-1'
        TEXT( 21 ) = '                     26,   @1991-JAN-1'
        TEXT( 22 ) = '                     27,   @1992-JUL-1'
        TEXT( 23 ) = '                     28,   @1993-JUL-1'
        TEXT( 24 ) = '                     29,   @1994-JUL-1'
        TEXT( 25 ) = '                     30,   @1996-JAN-1'
        TEXT( 26 ) = '                     31,   @1997-JUL-1'
        TEXT( 27 ) = '                     32,   @1999-JAN-1 )'

        CALL LMPOOL ( TEXT, 27 )

Restrictions

     None.

Literature_References

     None.

Author_and_Institution

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

Version

    SPICELIB Version 8.3.1, 17-AUG-2021 (JDR) (BVS)

        Edited the header to comply with NAIF standard.

        Updated $Exceptions section to better describe the error
        handling of this routine.

    SPICELIB Version 8.3.0, 30-JUL-2013 (BVS)

        Updated to increment POOL state counter.

    SPICELIB Version 8.2.0, 10-FEB-2010 (EDW)

        Added mention of the restriction on kernel pool variable
        names to MAXLEN characters or less.

    SPICELIB Version 8.1.0, 19-MAR-2009 (NJB)

        Watcher update code was re-written for compatibility
        with new watcher system implementation.

    SPICELIB Version 8.0.0, 04-JUN-1999 (WLT)

        Added the entry points PCPOOL, PDPOOL and PIPOOL to allow
        direct insertion of data into the kernel pool without having
        to read an external file.

        Added the interface LMPOOL that allows SPICE
        programs to load text kernels directly from memory
        instead of requiring a text file.

        Added the entry point SZPOOL to return kernel pool definition
        parameters.

        Added the entry point DVPOOL to allow the removal of a variable
        from the kernel pool.

        Added the entry point GNPOOL to allow users to determine
        variables that are present in the kernel pool
Fri Dec 31 18:36:31 2021