pub enum PlanKind {
Dynamic {
channel_list: Option<FixedChannelList>,
},
Fixed,
}Expand description
How a region defines its channels, which decides what a network can change on a device.
RP002-1.0.5 splits the regions in two. A dynamic plan gives every device a few default
channels and lets the network add more, with NewChannelReq or a join accept’s channel
list, and answers in the first receive window on the uplink’s own frequency. A fixed plan
numbers every channel in advance, and a network only enables and disables them.
§Examples
use pamoja_lora::region::{FixedChannelList, PlanKind, Region};
assert_eq!(
Region::Eu868.plan().kind,
PlanKind::Dynamic { channel_list: Some(FixedChannelList::Mhz800) }
);
assert_eq!(Region::Us915.plan().kind, PlanKind::Fixed);Variants§
Dynamic
Default channels every device has, and more the network creates.
Fields
§
channel_list: Option<FixedChannelList>The published numbering a type 1 channel list is read against, for a region
whose regional parameters name one, and None where the region takes only a
list of frequencies.
Fixed
Every channel numbered in advance, enabled and disabled by channel masks.
Implementations§
Trait Implementations§
impl Copy for PlanKind
impl Eq for PlanKind
impl StructuralPartialEq for PlanKind
Auto Trait Implementations§
impl Freeze for PlanKind
impl RefUnwindSafe for PlanKind
impl Send for PlanKind
impl Sync for PlanKind
impl Unpin for PlanKind
impl UnsafeUnpin for PlanKind
impl UnwindSafe for PlanKind
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