MacInitParams struct final
#include <npr/mac/mac_engine.hpp>
Common initialization parameters for NPR MAC engines.
This keeps NprRuntime role-neutral. Runtime prepares identity, profile, diagnostics, and timing policy once and passes them to whichever MAC role is selected by configuration.
Public variables
- std::array<uint8_t, 2> callsign_prefix
- const char* callsign_suffix
- NprFrameCodec* codec
- NprDiagnostics* diagnostics
- uint32_t master_dns
- Optional DNS server advertised to connecting slave clients.
- bool master_dns_active
truewhenmaster_dnsshould be advertised.- uint32_t master_gateway
- Optional default route advertised to connecting slave clients.
- bool master_gateway_active
truewhenmaster_gatewayshould be advertised.- uint32_t master_ip
- Master NPR interface address used in CONNECT_ACK and WHO broadcast.
- uint32_t master_pool_end
- Last address in master-managed client pool.
- const char* master_pool_name
- Optional pool section name for NPR master allocations, e.g.
pool3. - uint32_t master_pool_start
- First address in master-managed client pool.
- uint32_t master_subnet_mask
- Master NPR subnet mask derived from configured prefix length.
- uint32_t min_requested_ip_size
- Lower bound for
requested_ip_sizeaccepted by current slave policy. -
prf::
net:: pool:: Ipv4PoolManager* pool_manager - Optional shared IPv4 pool manager used by NPR master for client allocations.
- const RadioProfile* profile
- uint64_t reassembly_timeout_us
- uint32_t requested_ip_size
- Role-specific parameter currently used by slave CONNECT requests.
- uint8_t unslotted_wake_burst_count
- uint64_t unslotted_wake_interval_us
- uint64_t who_cadence_us
Variable documentation
uint32_t npr:: rf:: MacInitParams:: requested_ip_size
Role-specific parameter currently used by slave CONNECT requests.
Engines that do not use client-side address requests may ignore it.