openthread/ot/types/
mod.rs1mod backbone_router_multicast_listener_event;
6mod backbone_router_multicast_listener_info;
7mod border_router_config;
8mod border_routing_counters;
9mod border_routing_peer;
10mod border_routing_rdnss;
11mod border_routing_router;
12mod cache_entry_info;
13mod castable;
14mod channel_mask;
15mod commissioning_dataset;
16mod device_role;
17mod dnssd_counters;
18mod ext_address;
19mod extended_pan_id;
20mod external_route_config;
21mod history_tracker;
22mod ip_counters;
23mod ipv6;
24mod leader_data;
25mod link_metrics;
26mod link_mode;
27mod log_region;
28mod lowpan_context_info;
29mod mac_counters;
30mod message_queue_info;
31mod mle_counters;
32mod multi_radio_neighbor_info;
33mod nat64;
34mod neighbor_info;
35mod network_key;
36mod network_name;
37mod operational_dataset;
38mod packets_and_bytes;
39mod radio_coex_metrics;
40mod radio_region;
41mod resolver;
42mod route_preference;
43mod router_info;
44mod scan_results;
45mod security_policy;
46mod server_config;
47mod service_config;
48mod srp_server_lease_info;
49mod srp_server_response_counters;
50mod steering_data;
51mod timestamp;
52mod tlv;
53mod trel;
54
55use crate::prelude_internal::*;
56
57pub use backbone_router_multicast_listener_event::*;
58pub use backbone_router_multicast_listener_info::*;
59pub use border_router_config::*;
60pub use border_routing_counters::*;
61pub use border_routing_peer::*;
62pub use border_routing_rdnss::*;
63pub use border_routing_router::*;
64pub use cache_entry_info::*;
65pub use castable::*;
66pub use channel_mask::*;
67pub use commissioning_dataset::*;
68pub use device_role::*;
69pub use dnssd_counters::*;
70pub use ext_address::*;
71pub use extended_pan_id::*;
72pub use external_route_config::*;
73pub use history_tracker::*;
74pub use ip_counters::*;
75pub use ipv6::*;
76pub use leader_data::*;
77pub use link_metrics::*;
78pub use link_mode::*;
79pub use log_region::*;
80pub use lowpan_context_info::*;
81pub use mac_counters::*;
82pub use message_queue_info::*;
83pub use mle_counters::*;
84pub use multi_radio_neighbor_info::*;
85pub use nat64::*;
86pub use neighbor_info::*;
87pub use network_key::*;
88pub use network_name::*;
89pub use operational_dataset::*;
90pub use packets_and_bytes::*;
91pub use radio_coex_metrics::*;
92pub use radio_region::*;
93pub use resolver::*;
94pub use route_preference::*;
95pub use router_info::*;
96pub use scan_results::*;
97pub use security_policy::*;
98pub use server_config::*;
99pub use service_config::*;
100pub use srp_server_lease_info::*;
101pub use srp_server_response_counters::*;
102pub use steering_data::*;
103pub use timestamp::*;
104pub use tlv::*;
105pub use trel::*;
106
107pub type PanId = otPanId;
109
110pub type ShortAddress = otShortAddress;
112
113pub type Decibels = i8;
115
116pub type ChannelIndex = u8;
118
119pub type MeshLocalPrefix = Ip6NetworkPrefix;
123
124pub type NetifIndex = u32;
126
127pub const NETIF_INDEX_UNSPECIFIED: NetifIndex = 0;
129
130pub const DECIBELS_UNSPECIFIED: Decibels = -128;
132
133pub const MAX_CHILD_ID: u16 = 0x1FF;
135
136pub const ROUTER_ID_OFFSET: usize = 9;
138
139pub fn rloc16_to_child_id(rloc16: u16) -> u16 {
141 rloc16 & MAX_CHILD_ID
142}
143
144pub fn rloc16_to_router_id(rloc16: u16) -> u8 {
146 (rloc16 >> ROUTER_ID_OFFSET) as u8
147}