#[repr(u8)]pub enum ProtocolId {
Ft8 = 0,
Ft4 = 1,
Ft2 = 2,
Fst4 = 3,
Jt65 = 4,
Jt9 = 5,
Wspr = 6,
Q65 = 7,
}Expand description
Runtime protocol tag — used at FFI boundaries where generics cannot cross the C ABI. Order is stable; append new variants at the end.
Variants§
Ft8 = 0
FT8 — 15 s slot, 8-FSK, LDPC(174,91), 77-bit message.
Ft4 = 1
FT4 — 7.5 s slot, 4-FSK, LDPC(174,91), 77-bit message.
Ft2 = 2
FT2 (experimental / contest variant).
Fst4 = 3
FST4 — 60 s slot, 4-FSK, LDPC(240,101) + CRC-24, 77-bit message.
Jt65 = 4
JT65 — 60 s slot, 65-tone FSK, Reed-Solomon(63,12), 72-bit message.
Jt9 = 5
JT9 — 60 s slot, 9-FSK, convolutional r=½ K=32 + Fano, 72-bit message.
Wspr = 6
WSPR — 120 s slot, 4-FSK, convolutional r=½ K=32 + Fano, 50-bit message.
Q65 = 7
Q65 — 65-tone FSK, QRA(15,65) over GF(64), 77-bit Wsjt77 message. Multiple T/R-period × tone-spacing variants share this tag at the FFI level; the protocol-layer ZST disambiguates.
Trait Implementations§
Source§impl Clone for ProtocolId
impl Clone for ProtocolId
Source§fn clone(&self) -> ProtocolId
fn clone(&self) -> ProtocolId
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 moreSource§impl Debug for ProtocolId
impl Debug for ProtocolId
Source§impl Hash for ProtocolId
impl Hash for ProtocolId
Source§impl PartialEq for ProtocolId
impl PartialEq for ProtocolId
impl Copy for ProtocolId
impl Eq for ProtocolId
impl StructuralPartialEq for ProtocolId
Auto Trait Implementations§
impl Freeze for ProtocolId
impl RefUnwindSafe for ProtocolId
impl Send for ProtocolId
impl Sync for ProtocolId
impl Unpin for ProtocolId
impl UnsafeUnpin for ProtocolId
impl UnwindSafe for ProtocolId
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