pub enum Counter {
TxPackets,
TxChannelBusy,
RxPackets,
RxBadCrc,
RxNonUmsh,
RxAccepted,
Forwarded,
ForwardDropped,
ForwardCancelled,
}Expand description
The counters a device keeps.
The discriminants are the ledger’s slot indices and are not on the
wire; Counter::property gives the identifier that is.
Variants§
TxPackets
Frames that reached the air, from any client of the radio.
TxChannelBusy
Transmit attempts the channel-activity check held back.
RxPackets
Receptions off the air that are UMSH packets.
RxBadCrc
Receptions the radio rejected on CRC.
RxNonUmsh
Receptions that passed CRC and are not UMSH packets.
RxAccepted
Receptions the device’s own node acted on.
Forwarded
Receptions this node chose to repeat.
ForwardDropped
Receptions declined under the operator’s forwarding policy.
ForwardCancelled
Queued repeats dropped after overhearing the destination’s ack.
Implementations§
Source§impl Counter
impl Counter
Sourcepub const fn property(self) -> u32
pub const fn property(self) -> u32
The property identifier this counter is read and cleared through.
Sourcepub const fn from_property(key: u32) -> Option<Counter>
pub const fn from_property(key: u32) -> Option<Counter>
The counter a property identifier names, if it names one.
Sourcepub const fn needs_node(self) -> bool
pub const fn needs_node(self) -> bool
Whether this counter can only be answered by a device running a node of its own.
The four that come from the MAC. A session with nothing behind it does not have these properties at all, rather than reporting a zero that reads as “this repeater has never repeated anything”.
Trait Implementations§
impl Copy for Counter
impl Eq for Counter
impl StructuralPartialEq for Counter
Auto Trait Implementations§
impl Freeze for Counter
impl RefUnwindSafe for Counter
impl Send for Counter
impl Sync for Counter
impl Unpin for Counter
impl UnwindSafe for Counter
Blanket Implementations§
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
clone_to_uninit)