Skip to main content

EphemerisSource

Trait EphemerisSource 

Source
pub trait EphemerisSource {
    // Required method
    fn position_clock_at_j2000_s(
        &self,
        sat: GnssSatelliteId,
        t_j2000_s: f64,
    ) -> Option<([f64; 3], f64)>;
}
Expand description

A source of satellite position and clock at a transmit epoch.

The SPP pipeline is written against this trait rather than a concrete product so it can run on either a precise SP3 ephemeris or a broadcast navigation message. The contract is exactly what the transmit-time iteration needs: the ECEF position (meters) and the satellite clock offset (seconds) at a given J2000 second, or None if the source has no usable ephemeris for that satellite at that instant.

Required Methods§

Source

fn position_clock_at_j2000_s( &self, sat: GnssSatelliteId, t_j2000_s: f64, ) -> Option<([f64; 3], f64)>

ECEF position (m) and satellite clock offset (s) for sat at t_j2000_s.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§