| clpool |
|
Table of contents
Procedure
CLPOOL ( Clear the pool of kernel variables )
ENTRY CLPOOL
Abstract
Remove all kernel variables from the kernel pool. Watches
on kernel variables are retained.
Required_Reading
KERNEL
Keywords
CONSTANTS
FILES
Declarations
None.
Brief_I/O
None.
Detailed_Input
None.
Detailed_Output
None.
Parameters
None.
Exceptions
Error free.
1) All known agents (those established through the SPICELIB
routine SWPOOL) will be "notified" that their watched
variables have been updated whenever CLPOOL is called.
Files
None.
Particulars
CLPOOL clears the pool of kernel variables maintained by
the kernel POOL subsystem. All the variables in the pool are
deleted. However, all watcher information is retained.
Each watched variable will be regarded as having been updated.
Any agent associated with that variable will have a notice
posted for it indicating that its watched variable has been
updated.
Application programs can delete watches by calling the SPICELIB
routine DWPOOL. See the header of that routine for details.
Examples
The numerical results shown for this example may differ across
platforms. The results depend on the SPICE kernels used as
input, the compiler and supporting libraries, and the machine
specific arithmetic implementation.
1) This code example demonstrates how to assign values to kernel
pool variables, how to check for the existence of kernel pool
variables and how to clear the kernel pool, i.e. how to delete
all variable assignments loaded into the kernel pool.
Place a value into the kernel pool and check for the variable
to which the value has been assigned. Clear the kernel pool
and check for that variable again.
Example code begins here.
PROGRAM CLPOOL_EX1
IMPLICIT NONE
C
C Local variables
C
DOUBLE PRECISION DVALS ( 1 )
INTEGER N
LOGICAL FOUND
C
C Place a value into the kernel pool. Recall the routines
C for direct insertion of pool assignments have arrays for
C input.
C
DVALS( 1 ) = -666.D0
CALL PDPOOL ( 'TEST_VAR', 1, DVALS )
C
C Check for the variable assignment to TEST_VAR.
C
CALL GDPOOL ( 'TEST_VAR', 1, 1, N, DVALS, FOUND )
WRITE(*,'(A)') 'First call to GDPOOL:'
IF ( FOUND ) THEN
WRITE(*,'(A,F8.2)') ' TEST_VAR value:', DVALS(1)
ELSE
WRITE(*,'(A)') ' TEST_VAR not in kernel pool.'
END IF
C
C Now clear the kernel pool.
C
CALL CLPOOL ()
C
C Again, check for the TEST_VAR assignment.
C
CALL GDPOOL ( 'TEST_VAR', 1, 1, N, DVALS, FOUND )
WRITE(*,'(A)') 'Second call to GDPOOL:'
IF ( FOUND ) THEN
WRITE(*,'(A,F6.2)') ' TEST_VAR value:', DVALS(1)
ELSE
WRITE(*,'(A)') ' TEST_VAR not in kernel pool.'
END IF
END
When this program was executed on a Mac/Intel/gfortran/64-bit
platform, the output was:
First call to GDPOOL:
TEST_VAR value: -666.00
Second call to GDPOOL:
TEST_VAR not in kernel pool.
Restrictions
1) This routine should not be used to unload kernels that
have been loaded via FURNSH.
Literature_References
None.
Author_and_Institution
N.J. Bachman (JPL)
J. Diaz del Rio (ODC Space)
B.V. Semenov (JPL)
W.L. Taber (JPL)
I.M. Underwood (JPL)
Version
SPICELIB Version 8.2.1, 17-AUG-2021 (JDR)
Edited the header to comply with NAIF standard. Added complete
code example.
Routine declared error free.
SPICELIB Version 8.2.0, 01-JUL-2014 (NJB) (BVS)
Description of behavior of watcher subsystem was expanded.
Last update was 30-JUL-2013 (BVS)
Updated to increment POOL state counter.
SPICELIB Version 8.1.0, 19-MAR-2009 (NJB)
Watcher update code was re-written for compatibility
with new watcher system implementation. Updated $Restrictions
header section. Updated code example to use TXTOPN.
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
SPICELIB Version 7.0.0, 20-SEP-1995 (WLT)
The implementation of the kernel pool was completely redone
to improve performance in loading and fetching data. In
addition the pool was upgraded so that variables may be
either string or numeric valued.
This entry point clears the string valued variables as well as
the numeric valued variables.
SPICELIB Version 6.0.0, 31-MAR-1992 (WLT)
The entry points SWPOOL and CVPOOL were added.
SPICELIB Version 4.0.0, 12-JUN-1990 (IMU)
All entry points except POOL and CLPOOL now initialize the
pool if it has not been done yet.
SPICELIB Version 1.0.0, 08-JAN-1989 (IMU)
|
Fri Dec 31 18:36:04 2021