Mercury Modem
Mercury ARQ/Broadcast modem
Loading...
Searching...
No Matches
Data Fields
car_t Struct Reference

#include <carousel.h>

Collaboration diagram for car_t:
Collaboration graph
[legend]

Data Fields

car_io_t io
 
bool master
 
bool idle
 
int rx_level
 
int snr_level
 
int max_level
 
bool ctl_deaf
 
bool peer_ctl_deaf
 
float snr_ema
 
bool snr_valid
 
uint64_t deadline [CAR_NTIMERS]
 
uint64_t last_carrier_ms
 
bool tx_busy
 
int phase
 
uint64_t phase_start
 
uint8_t mk
 
car_mlog_t mlog [CAR_MLOG]
 
int nmlog
 
int m_kind
 
uint8_t m_id
 
uint32_t m_r
 
uint32_t m_d
 
uint32_t m_p
 
uint8_t m_k
 
int m_state
 
int plan
 
int plan_lv
 
int plan_n
 
bool m_heard
 
bool s_answered
 
bool offered
 
uint64_t kd_allowed
 
int overruns
 
int piece
 
uint32_t deliver_seq
 
uint32_t seq_at_ask
 
uint64_t plan_not_before
 
int last_lv
 
int last_nf
 
uint8_t last_mk
 
bool idle_poll
 
uint32_t idle_backoff_ms
 
bool traffic
 
int reqs
 
struct { 
 
   bool   on 
 
   uint8_t   mk 
 
   int   kind 
 
   uint64_t   eh 
 
   uint32_t   p 
 
   uint8_t   k 
 
   uint8_t   i 
 
   bool   sent_round 
 
   uint32_t   d 
 
   bool   waited 
 
} anc 
 
bool end_req
 
int req_lv
 
int req_n
 
uint8_t req_mk
 
uint8_t rx_mk
 
uint64_t s_tx_end
 
bool rx_late
 
int s_prev_lv
 
bool s_asked_new
 
int ok_lv
 
uint64_t peer_data_ms
 
bool fell_back
 
car_sblock_t sb [CAR_WIN]
 
int nsb
 
uint8_t next_blk_id
 
int tx_level
 
int tx_n
 
uint8_t tx_poll_id
 
int tx_slot
 
bool tx_pat_anchor
 
double tx_loss
 
bool floor_waiting
 
bool pat_waiting
 
int floor_silent
 
uint8_t floor_blk
 
int peer_snr_level
 
bool peer_level_known
 
int rx_data_lv
 
bool peer_has_data
 
double lv_sent [CAR_NLEVELS]
 
double lv_lost [CAR_NLEVELS]
 
int lv_rounds [CAR_NLEVELS]
 
int lv_dead_run [CAR_NLEVELS]
 
int lv_probe_fails [CAR_NLEVELS]
 
double lv_p_ok [CAR_NLEVELS]
 
uint32_t lv_round_at [CAR_NLEVELS]
 
uint64_t lv_probe_at [CAR_NLEVELS]
 
uint64_t lv_backoff_ms [CAR_NLEVELS]
 
uint32_t polls
 
double loss_est
 
double polled_loss
 
uint8_t poll_id
 
int poll_level
 
int poll_n
 
int round_seen
 
int round_frames
 
int round_lv
 
bool rx_tail
 
bool status_seen
 
int silent_polls
 
bool peer_unopened
 
uint8_t peer_hi
 
uint8_t polled_base
 
bool round_fresh
 
int stale_rounds
 
const char * failed
 
bool peer_hi_known
 
car_rblock_t rb [CAR_WIN]
 
uint8_t rbase
 
int done_in_round
 
bool rx_break
 
int floor_patterns
 
bool floor_streaming
 
car_frame_t txbuf [CAR_KEYDOWN_MAX]
 

Field Documentation

◆ [struct]

struct { ... } car_t::anc

◆ ctl_deaf

bool car_t::ctl_deaf

◆ d

uint32_t car_t::d

◆ deadline

uint64_t car_t::deadline[CAR_NTIMERS]

◆ deliver_seq

uint32_t car_t::deliver_seq

◆ done_in_round

int car_t::done_in_round

◆ eh

uint64_t car_t::eh

◆ end_req

bool car_t::end_req

◆ failed

const char* car_t::failed

◆ fell_back

bool car_t::fell_back

◆ floor_blk

uint8_t car_t::floor_blk

◆ floor_patterns

int car_t::floor_patterns

◆ floor_silent

int car_t::floor_silent

◆ floor_streaming

bool car_t::floor_streaming

◆ floor_waiting

bool car_t::floor_waiting

◆ i

uint8_t car_t::i

◆ idle

bool car_t::idle

◆ idle_backoff_ms

uint32_t car_t::idle_backoff_ms

◆ idle_poll

bool car_t::idle_poll

◆ io

car_io_t car_t::io

◆ k

uint8_t car_t::k

◆ kd_allowed

uint64_t car_t::kd_allowed

◆ kind

int car_t::kind

◆ last_carrier_ms

uint64_t car_t::last_carrier_ms

◆ last_lv

int car_t::last_lv

◆ last_mk

uint8_t car_t::last_mk

◆ last_nf

int car_t::last_nf

◆ loss_est

double car_t::loss_est

◆ lv_backoff_ms

uint64_t car_t::lv_backoff_ms[CAR_NLEVELS]

◆ lv_dead_run

int car_t::lv_dead_run[CAR_NLEVELS]

◆ lv_lost

double car_t::lv_lost[CAR_NLEVELS]

◆ lv_p_ok

double car_t::lv_p_ok[CAR_NLEVELS]

◆ lv_probe_at

uint64_t car_t::lv_probe_at[CAR_NLEVELS]

◆ lv_probe_fails

int car_t::lv_probe_fails[CAR_NLEVELS]

◆ lv_round_at

uint32_t car_t::lv_round_at[CAR_NLEVELS]

◆ lv_rounds

int car_t::lv_rounds[CAR_NLEVELS]

◆ lv_sent

double car_t::lv_sent[CAR_NLEVELS]

◆ m_d

uint32_t car_t::m_d

◆ m_heard

bool car_t::m_heard

◆ m_id

uint8_t car_t::m_id

◆ m_k

uint8_t car_t::m_k

◆ m_kind

int car_t::m_kind

◆ m_p

uint32_t car_t::m_p

◆ m_r

uint32_t car_t::m_r

◆ m_state

int car_t::m_state

◆ master

bool car_t::master

◆ max_level

int car_t::max_level

◆ mk

uint8_t car_t::mk

◆ mlog

car_mlog_t car_t::mlog[CAR_MLOG]

◆ next_blk_id

uint8_t car_t::next_blk_id

◆ nmlog

int car_t::nmlog

◆ nsb

int car_t::nsb

◆ offered

bool car_t::offered

◆ ok_lv

int car_t::ok_lv

◆ on

bool car_t::on

◆ overruns

int car_t::overruns

◆ p

uint32_t car_t::p

◆ pat_waiting

bool car_t::pat_waiting

◆ peer_ctl_deaf

bool car_t::peer_ctl_deaf

◆ peer_data_ms

uint64_t car_t::peer_data_ms

◆ peer_has_data

bool car_t::peer_has_data

◆ peer_hi

uint8_t car_t::peer_hi

◆ peer_hi_known

bool car_t::peer_hi_known

◆ peer_level_known

bool car_t::peer_level_known

◆ peer_snr_level

int car_t::peer_snr_level

◆ peer_unopened

bool car_t::peer_unopened

◆ phase

int car_t::phase

◆ phase_start

uint64_t car_t::phase_start

◆ piece

int car_t::piece

◆ plan

int car_t::plan

◆ plan_lv

int car_t::plan_lv

◆ plan_n

int car_t::plan_n

◆ plan_not_before

uint64_t car_t::plan_not_before

◆ poll_id

uint8_t car_t::poll_id

◆ poll_level

int car_t::poll_level

◆ poll_n

int car_t::poll_n

◆ polled_base

uint8_t car_t::polled_base

◆ polled_loss

double car_t::polled_loss

◆ polls

uint32_t car_t::polls

◆ rb

car_rblock_t car_t::rb[CAR_WIN]

◆ rbase

uint8_t car_t::rbase

◆ req_lv

int car_t::req_lv

◆ req_mk

uint8_t car_t::req_mk

◆ req_n

int car_t::req_n

◆ reqs

int car_t::reqs

◆ round_frames

int car_t::round_frames

◆ round_fresh

bool car_t::round_fresh

◆ round_lv

int car_t::round_lv

◆ round_seen

int car_t::round_seen

◆ rx_break

bool car_t::rx_break

◆ rx_data_lv

int car_t::rx_data_lv

◆ rx_late

bool car_t::rx_late

◆ rx_level

int car_t::rx_level

◆ rx_mk

uint8_t car_t::rx_mk

◆ rx_tail

bool car_t::rx_tail

◆ s_answered

bool car_t::s_answered

◆ s_asked_new

bool car_t::s_asked_new

◆ s_prev_lv

int car_t::s_prev_lv

◆ s_tx_end

uint64_t car_t::s_tx_end

◆ sb

car_sblock_t car_t::sb[CAR_WIN]

◆ sent_round

bool car_t::sent_round

◆ seq_at_ask

uint32_t car_t::seq_at_ask

◆ silent_polls

int car_t::silent_polls

◆ snr_ema

float car_t::snr_ema

◆ snr_level

int car_t::snr_level

◆ snr_valid

bool car_t::snr_valid

◆ stale_rounds

int car_t::stale_rounds

◆ status_seen

bool car_t::status_seen

◆ traffic

bool car_t::traffic

◆ tx_busy

bool car_t::tx_busy

◆ tx_level

int car_t::tx_level

◆ tx_loss

double car_t::tx_loss

◆ tx_n

int car_t::tx_n

◆ tx_pat_anchor

bool car_t::tx_pat_anchor

◆ tx_poll_id

uint8_t car_t::tx_poll_id

◆ tx_slot

int car_t::tx_slot

◆ txbuf

◆ waited

bool car_t::waited

The documentation for this struct was generated from the following file: