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