Index Page
kclear_c
A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X 

Procedure
Abstract
Required_Reading
Keywords
Brief_I/O
Detailed_Input
Detailed_Output
Parameters
Exceptions
Files
Particulars
Examples
Restrictions
Literature_References
Author_and_Institution
Version
Index_Entries

Procedure

   void kclear_c ( void ) 

Abstract

 
   Clear the KEEPER system:  unload all kernels, clear the kernel 
   pool, and re-initialize the system. 
 

Required_Reading

 
   None. 
 

Keywords

 
   KERNEL 
 

Brief_I/O

 
   VARIABLE  I/O  DESCRIPTION 
   --------  ---  -------------------------------------------------- 
   None. 
 

Detailed_Input

 
   None.  This routine operates by side effects.  See Particulars 
   below. 
 

Detailed_Output

 
   None. 
 

Parameters

 
   None. 
 

Exceptions

 
   1) Any errors that occur when setting a kernel pool watch 
      or checking watched variables will be diagnosed by 
      routines in the call tree of this routine. 
 

Files

 
   See Particulars. 
 

Particulars

 
   This entry point allows you re-initialize the KEEPER system with 
   a single call.  The KEEPER system is the kernel management system
   underlying the set of CSPICE APIs

      furnsh_c
      ktotal_c
      kdata_c
      kinfo_c
      kclear_c
      unload_c
  
   This routine unloads all kernels from their kernel-type-specific 
   kernel management subsystems (SPKBSR, CKBSR, etc.), clears the 
   kernel pool, clears KEEPER's internal file database, and re-sets 
   the watch status for the kernel variables used to load kernels 
   via meta-kernels. 
 
   This capability, though implemented in Fortran, is particularly 
   relevant to SPICE implementations such as Icy, for which the 
   state of the KEEPER system persists after any Icy-based IDL 
   script is run. Successive runs of Icy-based scripts may perform 
   in unexpected ways when scripts access data loaded during runs of 
   previous scripts. 
    
   Cleaning up after such programs using explicit unload_c commands is 
   tedious and error-prone.  One call to this routine sets the 
   KEEPER system to its initial state, preventing unintentional 
   interaction between scripts via KEEPER's state. 
 

Examples

 
   Clear the KEEPER system; check for residual loaded files. 
   We shouldn't find any. 
 
       kclear_c ();
       ktotal_c ( "ALL", &n );

       printf ( "Count of loaded kernels after kclear_c call\n", n );

 

Restrictions

 
   Calling this routine will wipe out any kernel pool data 
   inserted via the p*pool_c API routines. 
 

Literature_References

 
   None. 
 

Author_and_Institution

 
   N.J. Bachman    (JPL) 
 

Version

 
   -CSPICE Version 1.0.0, 15-NOV-2006 (NJB)

Index_Entries

 
   Re-initialize the keeper system 
   Clear the keeper system 
   Unload all kernels 
 

Link to routine kclear_c source file kclear_c.c

Wed Jun  9 13:05:25 2010