307 const int size,
double tol);
319 bool clockTicks=
false);
320 SpiceDouble
getDouble(
const QString &key,
int index = 0);
321 SpiceInt
getInteger(
const QString &key,
int index = 0);
322 QString
getString(
const QString &key,
int index = 0);
390 void init(
Pvl &pvl,
bool noTables, nlohmann::json isd = NULL);
391 void csmInit(
Cube &cube,
Pvl label);
401 SpiceDouble *m_cacheSize;
403 SpiceDouble *m_startTimePadding;
404 SpiceDouble *m_endTimePadding;
411 bool m_allowDownsizing;
421 SpiceInt *m_sclkCode;
422 SpiceInt *m_spkBodyCode;
423 SpiceInt *m_bodyFrameCode;
IO Handler for Isis Cubes.
Definition: Cube.h:168
Distance measurement, usually in meters.
Definition: Distance.h:34
This class is designed to encapsulate the concept of a Longitude.
Definition: Longitude.h:40
Container for cube-like labels.
Definition: Pvl.h:119
A single keyword-value pair.
Definition: PvlKeyword.h:87
Contains Pvl Groups and Pvl Objects.
Definition: PvlObject.h:61
Obtain SPICE information for a spacecraft.
Definition: Spice.h:283
virtual void setTime(const iTime &time)
Sets the ephemeris time and reads the spacecraft and sun position from the kernels at that instant in...
Definition: Spice.cpp:790
SpiceDouble m_BJ[3][3]
This contains the transformation matrix from J2000 (J) to Body fixed (B).
Definition: Spice.h:374
QString getString(const QString &key, int index=0)
This returns a value from the NAIF text pool.
Definition: Spice.cpp:1272
virtual iTime getClockTime(QString clockValue, int sclkCode=-1, bool clockTicks=false)
This converts the spacecraft clock ticks value (clockValue) to an iTime.
Definition: Spice.cpp:1063
Target * m_target
Target of the observation.
Definition: Spice.h:381
QVariant readValue(QString key, SpiceValueType type, int index=0)
This should be used for reading ALL text naif kernel values.
Definition: Spice.cpp:1103
QVariant readStoredValue(QString key, SpiceValueType type, int index)
Definition: Spice.cpp:1231
Longitude * m_solarLongitude
Body rotation solar longitude value.
Definition: Spice.h:383
virtual Longitude solarLongitude()
Returns the solar longitude.
Definition: Spice.cpp:1520
virtual void instrumentBodyFixedVelocity(double v[3]) const
Returns the spacecraft velocity in body-fixed frame km/sec units.
Definition: Spice.cpp:863
virtual void computeSolarLongitude(iTime et)
Computes the solar longitude for the given ephemeris time.
Definition: Spice.cpp:1411
virtual SpiceRotation * bodyRotation() const
Accessor method for the body rotation.
Definition: Spice.cpp:1622
virtual double targetCenterDistance() const
Calculates and returns the distance from the spacecraft to the target center.
Definition: Spice.cpp:928
virtual void subSolarPoint(double &lat, double &lon)
Returns the sub-solar latitude/longitude in universal coordinates (0-360 positive east,...
Definition: Spice.cpp:1340
virtual void createCache(iTime startTime, iTime endTime, const int size, double tol)
This method creates an internal cache of spacecraft and sun positions over a specified time range.
Definition: Spice.cpp:652
virtual iTime cacheEndTime() const
Accessor method for the cache end time.
Definition: Spice.cpp:768
virtual ~Spice()
Destroys the Spice object.
Definition: Spice.cpp:514
void radii(Distance r[3]) const
Returns the radii of the body in km.
Definition: Spice.cpp:940
SpiceValueType
NAIF value primitive type.
Definition: Spice.h:348
@ SpiceByteCodeType
SpiceByteCode type.
Definition: Spice.h:352
@ SpiceIntType
SpiceInt type.
Definition: Spice.h:351
@ SpiceStringType
SpiceString type.
Definition: Spice.h:350
@ SpiceDoubleType
SpiceDouble type.
Definition: Spice.h:349
bool isUsingAle()
Definition: Spice.cpp:1637
SpiceInt naifBodyCode() const
This returns the NAIF body code of the target indicated in the labels.
Definition: Spice.cpp:951
virtual double sunToBodyDist() const
Definition: Spice.cpp:1394
SpiceInt naifSpkCode() const
This returns the NAIF SPK code to use when reading from SPK kernels.
Definition: Spice.cpp:960
virtual void instrumentBodyFixedPosition(double p[3]) const
Returns the spacecraft position in body-fixed frame km units.
Definition: Spice.cpp:845
PvlObject getStoredNaifKeywords() const
This returns the PvlObject that stores all of the requested Naif data and can be a replacement for fu...
Definition: Spice.cpp:1008
SpiceInt naifCkCode() const
This returns the NAIF CK code to use when reading from CK kernels.
Definition: Spice.cpp:969
virtual Target * target() const
Returns a pointer to the target object.
Definition: Spice.cpp:1379
virtual iTime time() const
Returns the ephemeris time in seconds which was used to obtain the spacecraft and sun positions.
Definition: Spice.cpp:894
bool hasKernels(Pvl &lab)
Returns true if the kernel group has kernel files.
Definition: Spice.cpp:1537
void storeResult(QString name, SpiceValueType type, QVariant value)
Definition: Spice.cpp:1164
virtual SpiceRotation * instrumentRotation() const
Accessor method for the instrument rotation.
Definition: Spice.cpp:1633
void storeValue(QString key, int index, SpiceValueType type, QVariant value)
Definition: Spice.cpp:1200
virtual SpicePosition * instrumentPosition() const
Accessor method for the instrument position.
Definition: Spice.cpp:1611
SpiceInt naifIkCode() const
This returns the NAIF IK code to use when reading from instrument kernels.
Definition: Spice.cpp:978
SpiceInt naifSclkCode() const
This returns the NAIF SCLK code to use when reading from instrument kernels.
Definition: Spice.cpp:988
QString targetName() const
Returns the QString name of the target.
Definition: Spice.cpp:1389
SpiceInt naifBodyFrameCode() const
This returns the NAIF body frame code.
Definition: Spice.cpp:999
SpiceDouble m_uB[3]
This contains the sun position (u) in the bodyfixed reference frame (B).
Definition: Spice.h:369
virtual iTime cacheStartTime() const
Accessor method for the cache start time.
Definition: Spice.cpp:753
iTime * m_et
Ephemeris time (read NAIF documentation for a detailed description)
Definition: Spice.h:382
bool isTimeSet()
Returns true if time has been initialized.
Definition: Spice.cpp:1588
QVariant getStoredResult(QString name, SpiceValueType type)
Definition: Spice.cpp:1179
virtual SpicePosition * sunPosition() const
Accessor method for the sun position.
Definition: Spice.cpp:1600
SpiceDouble getDouble(const QString &key, int index=0)
This returns a value from the NAIF text pool.
Definition: Spice.cpp:1049
SpiceInt getInteger(const QString &key, int index=0)
This returns a value from the NAIF text pool.
Definition: Spice.cpp:1035
virtual void subSpacecraftPoint(double &lat, double &lon)
Returns the sub-spacecraft latitude/longitude in universal coordinates (0-360 positive east,...
Definition: Spice.cpp:1289
virtual double resolution()
Virtual method that returns the pixel resolution of the sensor in meters/pix.
Definition: Spice.cpp:1019
Obtain SPICE position information for a body.
Definition: SpicePosition.h:174
Obtain SPICE rotation information for a body.
Definition: SpiceRotation.h:208
This class is used to create and store valid Isis targets.
Definition: Target.h:63
Parse and return pieces of a time string.
Definition: iTime.h:65
This is free and unencumbered software released into the public domain.
Definition: Calculator.h:18
This is free and unencumbered software released into the public domain.
Definition: Apollo.h:16