Skip to content

Struct viterbi_state_t

ClassList > viterbi_state_t

A streaming maximum-likelihood (Viterbi) decoder. More...

  • #include <viterbi_core.h>

Public Attributes

Type Name
conv_code_t code
uint8_t * dec
size_t depth
size_t fill
size_t head
unsigned * inbit
uint32_t nstate
unsigned * out0
unsigned * out1
float * pm
float * pm2
uint32_t * pred0
uint32_t * pred1

Detailed Description

Opaque and heap-allocated: the path metrics and the traceback ring are sized from the code and the depth, and both are wanted contiguous.

Allocate with viterbi_create().

Public Attributes Documentation

variable code

conv_code_t viterbi_state_t::code;

variable dec

uint8_t* viterbi_state_t::dec;

depth x nstate decisions: which predecessor won


variable depth

size_t viterbi_state_t::depth;

variable fill

size_t viterbi_state_t::fill;

steps recorded, saturating at depth


variable head

size_t viterbi_state_t::head;

ring cursor, in steps


variable inbit

unsigned* viterbi_state_t::inbit;

variable nstate

uint32_t viterbi_state_t::nstate;

variable out0

unsigned* viterbi_state_t::out0;

variable out1

unsigned* viterbi_state_t::out1;

variable pm

float* viterbi_state_t::pm;

path metric per state


variable pm2

float* viterbi_state_t::pm2;

the next step's, swapped rather than copied


variable pred0

uint32_t* viterbi_state_t::pred0;

variable pred1

uint32_t* viterbi_state_t::pred1;


The documentation for this class was generated from the following file native/inc/viterbi/viterbi_core.h