|
Isis 3.0 Application Source Code Reference |
Home |
#include <SpiceManager.h>
This class determines all SPICE kernels associated to an ISIS cube file and optionally loads them using the NAIF toolkit. This creates the kernel pool as it was when spiceinit determined all the kernels and it initialized the file for geometric operations.
Note that ISIS caches of some of the voluminous NAIF kernels, extracting only what is required from the SPK and CK (generally) kernels for a given observation. After this occurs, these kernels are no longer loaded by the ISIS Spice class hierarchy. This class provides that environment so that further NAIF operations can occur, such as velocity vectors.
Definition at line 55 of file SpiceManager.h.
Public Member Functions | |
| SpiceManager () | |
| Default Constructor. | |
| SpiceManager (const std::string &filename, bool furnish=true) | |
| Construct using an ISIS file name. | |
| SpiceManager (Cube &cube, bool furnish=true) | |
| Construct using an ISIS Cube object. | |
| SpiceManager (Pvl &pvl, bool furnish=true) | |
| Construct from an ISIS label. | |
| virtual | ~SpiceManager () |
| Destructor always unloads the kernels from the pool. | |
| int | size () const |
| Returns the number of kernels found and/or loaded. | |
| void | Load (Pvl &pvl, bool furnish=true) |
| Perform the hunt for Spice kernels in an ISIS label. | |
| void | add (const std::string &kernel) |
| Add a specified kernel file to the pool. | |
| std::vector< std::string > | getList (bool removePath=false) const |
| Provide a list of all the kernels found. | |
| void | Unload () |
| Unloads all kernels if they were loaded when found. | |
| SpiceManager | ( | ) | [inline] |
| SpiceManager | ( | const std::string & | filename, | |
| bool | furnish = true | |||
| ) |
Construct using an ISIS file name.
| filename | Name of ISIS cube file | |
| furnish | Do we load the kernels we find? |
Definition at line 48 of file SpiceManager.cpp.
| SpiceManager | ( | Cube & | cube, | |
| bool | furnish = true | |||
| ) |
Construct using an ISIS Cube object.
| cube | Cube object of ISIS file | |
| furnish | Do we load the kernels we find? |
Definition at line 59 of file SpiceManager.cpp.
| SpiceManager | ( | Pvl & | pvl, | |
| bool | furnish = true | |||
| ) |
Construct from an ISIS label.
| pvl | ISIS label to get kernel information from | |
| furnish | Do we load the kernels we find? |
Definition at line 69 of file SpiceManager.cpp.
| virtual ~SpiceManager | ( | ) | [inline, virtual] |
| int size | ( | ) | const [inline] |
| void Load | ( | Pvl & | pvl, | |
| bool | furnish = true | |||
| ) |
Perform the hunt for Spice kernels in an ISIS label.
This method must traverse the ISIS label hierarchy to find all the pertinent kernel files. Many of them are found in the Kernel Group, but others exist in Table objects that are SPICE blobs. The actual names are found in the Kernels keyword in the named Table object.
| pvl | ISIS label | |
| furnish | Do we actually load the kernel files as we find them? |
Definition at line 85 of file SpiceManager.cpp.
| void add | ( | const std::string & | kernfile | ) |
Add a specified kernel file to the pool.
This method adds a specified kernel file to the NAIF pool. The caller can provide a file pattern with "?" in the filename as this method will determine the highest occuring version.
| kernel | Name of kernel file (or pattern) to add |
Definition at line 139 of file SpiceManager.cpp.
| std::vector< std::string > getList | ( | bool | removePath = false |
) | const |
Provide a list of all the kernels found.
This method will return all the kernel file references as found in the ISIS label. It will optionally remove the file paths and return only the kernel file name if requested. If removePath is false, it returns the complete path to the SPICE kernels.
| removePath | Do we remove the file paths and return only the file names? |
Definition at line 170 of file SpiceManager.cpp.
| void Unload | ( | ) |
Unloads all kernels if they were loaded when found.
Changed to work with hipeaks crappy compiler. string kernName(Filename(_kernlist[i]).Expanded()); unload_c(kernName.c_str());
Definition at line 187 of file SpiceManager.cpp.