Enum unbounded_gpsd::types::DeviceObject[][src]

pub enum DeviceObject {
    ActiveSeenPackets {
        path: Option<String>,
        activated: DateTime<Utc>,
        flags: u8,
        driver: String,
        subtype: Option<String>,
        bps: Option<u32>,
        parity: Option<String>,
        stopbits: Option<String>,
        native: Option<u8>,
        cycle: Option<f32>,
        minicycle: Option<f32>,
    },
    Active {
        path: Option<String>,
        activated: DateTime<Utc>,
        subtype: Option<String>,
        bps: Option<u32>,
        parity: Option<String>,
        stopbits: Option<String>,
        native: Option<u8>,
        cycle: Option<f32>,
        minicycle: Option<f32>,
    },
    Inactive {
        path: Option<String>,
    },
}

Information about a device known to gpsd.

The API splits the DEVICE object into three variants:

  • ActiveSeenPackets: the device is active, and we've seen packets from it.
  • Active: the device is active, but we haven't seen any packets.
  • Inactive: the device is inactive.

Basically, the aim here is to reduce the amount of Option unwrapping you have to do, as gpsd specifies that all these fields are optional.

Variants

Fields of ActiveSeenPackets

Name the device for which the control bits are being reported, or for which they are to be applied. This attribute may be omitted only when there is exactly one subscribed channel

Time the device was activated as an ISO8601 timestamp. If the device is inactive this attribute is absent.

Bit vector of property flags. Currently defined flags are: describe packet types seen so far (GPS, RTCM2, RTCM3, AIS). Won't be reported if empty, e.g. before gpsd has seen identifiable packets from the device.

Flags

  • 0x01: GPS data seen
  • 0x02: RTCM2 data seen
  • 0x04: RTCM3 data seen
  • 0x08: AIS data seen

Yes, I know manual bitflags suck. I'll fix it one day if you bug me.

GPSD's name for the device driver type. Won't be reported before gpsd has seen identifiable packets from the device.

Whatever version information the device returned.

Device speed in bits per second.

N, O or E for no parity, odd, or even.

Stop bits (1 or 2).

0 means NMEA mode and 1 means alternate mode (binary if it has one, for SiRF and Evermore chipsets in particular). Attempting to set this mode on a non-GPS device will yield an error.

Device cycle time in seconds.

Device minimum cycle time in seconds. Reported from ?DEVICE when (and only when) the rate is switchable. It is read-only and not settable.

Fields of Active

Fields of Inactive

Trait Implementations

impl Debug for DeviceObject
[src]

Formats the value using the given formatter. Read more

Auto Trait Implementations