Class SpiceFrame#

Inheritance Relationships#

Base Type#

Class Documentation#

class SpiceFrame : public Karana::Frame::Frame#

Class for frames associated with Spice/NAIF bodies.

See Coordinate Frames for more discussion on the frames layer.

Public Functions

SpiceFrame(kc::ks_ptr<FrameContainer> &fc, const kc::ks_ptr<TimeKeeper> &time_keeper, unsigned int naif_body_id, unsigned int naif_frame_id = 999999)#

SpiceFrame constructor. The constructor is not meant to be called directly. Please use the create(…) method instead to create an instance.

Parameters:
  • fc – the FrameContainer

  • time_keeper – The TimeKeeper used to get ephemeris time for this SpiceFrame.

  • naif_body_id – the NAIF body id

  • naif_frame_id – the NAIF frame id

~SpiceFrame()#

Destructor.

Public Static Functions

static void loadNaifKernel(const std::filesystem::path &path)#

Method to load a NAIF kernel.

Parameters:

path – path to the kernel

static kc::ks_ptr<SpiceFrame> lookupOrCreate(kc::ks_ptr<FrameContainer> &fc, const kc::ks_ptr<TimeKeeper> &time_keeper, unsigned int naif_body_id, unsigned int naif_frame_id = 999999)#

Factory method to look up, or create a SpiceFrame.

If the NAIF frame id is unspecified, then the default frame for the NAIF body is used.

Parameters:
  • fc – the FrameContainer

  • time_keeper – The TimeKeeper used to get ephemeris time for this SpiceFrame.

  • naif_body_id – the NAIF body id

  • naif_frame_id – the NAIF frame id

Returns:

a new SpiceFrame instance

Protected Attributes

kc::ks_ptr<TimeKeeper> _time_keeper#

The TimeKeeper used to get the ephemeris time of this SpiceFrame.

unsigned int _naif_frame_id#

The Spice NAIF frame ID for this SpiceFrame.

unsigned int _naif_body_id#

The Spice body frame ID for this SpiceFrame.