pub struct DiscoveredInterface {Show 27 fields
pub interface_type: String,
pub transport: bool,
pub name: String,
pub discovered: f64,
pub last_heard: f64,
pub heard_count: u32,
pub status: DiscoveredStatus,
pub stamp: Vec<u8>,
pub stamp_value: u32,
pub transport_id: [u8; 16],
pub network_id: [u8; 16],
pub hops: u8,
pub latitude: Option<f64>,
pub longitude: Option<f64>,
pub height: Option<f64>,
pub reachable_on: Option<String>,
pub port: Option<u16>,
pub frequency: Option<u32>,
pub bandwidth: Option<u32>,
pub spreading_factor: Option<u8>,
pub coding_rate: Option<u8>,
pub modulation: Option<String>,
pub channel: Option<u8>,
pub ifac_netname: Option<String>,
pub ifac_netkey: Option<String>,
pub config_entry: Option<String>,
pub discovery_hash: [u8; 32],
}Expand description
Information about a discovered interface
Fields§
§interface_type: StringInterface type (e.g., “BackboneInterface”, “TCPServerInterface”, “RNodeInterface”)
transport: boolWhether the announcing node has transport enabled
name: StringHuman-readable name of the interface
discovered: f64Timestamp when first discovered
last_heard: f64Timestamp of last announcement
heard_count: u32Number of times heard
status: DiscoveredStatusCurrent status based on last_heard
stamp: Vec<u8>Raw stamp bytes
stamp_value: u32Calculated stamp value (leading zeros)
transport_id: [u8; 16]Transport identity hash (truncated)
network_id: [u8; 16]Network identity hash (announcer)
hops: u8Number of hops to reach this interface
latitude: Option<f64>§longitude: Option<f64>§height: Option<f64>§reachable_on: Option<String>§port: Option<u16>§frequency: Option<u32>§bandwidth: Option<u32>§spreading_factor: Option<u8>§coding_rate: Option<u8>§modulation: Option<String>§channel: Option<u8>§ifac_netname: Option<String>§ifac_netkey: Option<String>§config_entry: Option<String>§discovery_hash: [u8; 32]Hash for storage key (SHA256 of transport_id + name)
Implementations§
Source§impl DiscoveredInterface
impl DiscoveredInterface
Sourcepub fn compute_status(&self) -> DiscoveredStatus
pub fn compute_status(&self) -> DiscoveredStatus
Compute the current status based on last_heard timestamp
Trait Implementations§
Source§impl Clone for DiscoveredInterface
impl Clone for DiscoveredInterface
Source§fn clone(&self) -> DiscoveredInterface
fn clone(&self) -> DiscoveredInterface
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for DiscoveredInterface
impl RefUnwindSafe for DiscoveredInterface
impl Send for DiscoveredInterface
impl Sync for DiscoveredInterface
impl Unpin for DiscoveredInterface
impl UnsafeUnpin for DiscoveredInterface
impl UnwindSafe for DiscoveredInterface
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more