Struct bluerobotics_ping::ping360::DeviceDataStruct

source ·
pub struct DeviceDataStruct {
    pub mode: u8,
    pub gain_setting: u8,
    pub angle: u16,
    pub transmit_duration: u16,
    pub sample_period: u16,
    pub transmit_frequency: u16,
    pub number_of_samples: u16,
    pub data_length: u16,
    pub data: Vec<u8>,
}
Expand description

This message is used to communicate the current sonar state. If the data field is populated, the other fields indicate the sonar state when the data was captured. The time taken before the response to the command is sent depends on the difference between the last angle scanned and the new angle in the parameters as well as the number of samples and sample interval (range). To allow for the worst case reponse time the command timeout should be set to 4000 msec.

Fields§

§mode: u8

Operating mode (1 for Ping360)

§gain_setting: u8

Analog gain setting (0 = low, 1 = normal, 2 = high)

§angle: u16

Head angle

§transmit_duration: u16

Acoustic transmission duration (1~1000 microseconds)

§sample_period: u16

Time interval between individual signal intensity samples in 25nsec increments (80 to 40000 == 2 microseconds to 1000 microseconds)

§transmit_frequency: u16

Acoustic operating frequency. Frequency range is 500kHz to 1000kHz, however it is only practical to use say 650kHz to 850kHz due to the narrow bandwidth of the acoustic receiver.

§number_of_samples: u16

Number of samples per reflected signal

§data_length: u16

8 bit binary data array representing sonar echo strength

§data: Vec<u8>

Trait Implementations§

source§

impl Clone for DeviceDataStruct

source§

fn clone(&self) -> DeviceDataStruct

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for DeviceDataStruct

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for DeviceDataStruct

source§

fn default() -> DeviceDataStruct

Returns the “default value” for a type. Read more
source§

impl DeserializePayload for DeviceDataStruct

source§

fn deserialize(payload: &[u8]) -> Self

source§

impl PartialEq for DeviceDataStruct

source§

fn eq(&self, other: &DeviceDataStruct) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl SerializePayload for DeviceDataStruct

source§

fn serialize(&self) -> Vec<u8>

source§

impl StructuralPartialEq for DeviceDataStruct

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.