pub struct PuncturedTurbo { /* private fields */ }Expand description
A turbo code whose systematic and parity streams are punctured by a pattern of three rows (systematic, parity 1, parity 2) applied at every information index; the tail bits are kept.
Implementations§
Source§impl PuncturedTurbo
impl PuncturedTurbo
Sourcepub fn new(code: TurboCode, puncturer: Puncturer) -> Result<PuncturedTurbo>
pub fn new(code: TurboCode, puncturer: Puncturer) -> Result<PuncturedTurbo>
The turbo code code punctured by the three-row pattern puncturer.
§Errors
comnum_core::Error::Config if the pattern does not have three rows.
Sourcepub fn decoder_mut(&mut self) -> &mut TurboDecoder
pub fn decoder_mut(&mut self) -> &mut TurboDecoder
The settings of the decoder of the mother code, which can change without changing the code.
Sourcepub fn selection(&self) -> &BitSelection
pub fn selection(&self) -> &BitSelection
The transmitted bits of the codeword of the mother code.
Trait Implementations§
Source§impl BlockCode for PuncturedTurbo
impl BlockCode for PuncturedTurbo
Source§fn encode_block(&self, info: &[u8]) -> Result<Vec<u8>>
fn encode_block(&self, info: &[u8]) -> Result<Vec<u8>>
Encode one block of $k$ bits. Read more
Source§fn decode_block(&self, llr: &[f64]) -> Result<Vec<u8>>
fn decode_block(&self, llr: &[f64]) -> Result<Vec<u8>>
Decode one block of $n$ LLRs into $k$ bits. Read more
Source§fn encode_block_into(&self, info: &[u8], out: &mut [u8]) -> Result<()>
fn encode_block_into(&self, info: &[u8], out: &mut [u8]) -> Result<()>
Encode one block of $k$ bits into the $n$ values of
out (ADR 0011: the default
copies BlockCode::encode_block; a code overrides it when a profile shows the
copy). Read moreSource§fn decode_block_into(&self, llr: &[f64], out: &mut [u8]) -> Result<()>
fn decode_block_into(&self, llr: &[f64], out: &mut [u8]) -> Result<()>
Decode one block of $n$ LLRs into the $k$ values of
out (as
BlockCode::encode_block_into). Read moreSource§impl Clone for PuncturedTurbo
impl Clone for PuncturedTurbo
Source§impl Debug for PuncturedTurbo
impl Debug for PuncturedTurbo
Source§impl Decode for PuncturedTurbo
impl Decode for PuncturedTurbo
Source§impl Encode for PuncturedTurbo
impl Encode for PuncturedTurbo
Source§impl PartialEq for PuncturedTurbo
impl PartialEq for PuncturedTurbo
Source§impl SoftDecode for PuncturedTurbo
impl SoftDecode for PuncturedTurbo
impl StructuralPartialEq for PuncturedTurbo
Auto Trait Implementations§
impl Forget for PuncturedTurbo
impl Freeze for PuncturedTurbo
impl RefUnwindSafe for PuncturedTurbo
impl Send for PuncturedTurbo
impl Sync for PuncturedTurbo
impl Unpin for PuncturedTurbo
impl UnsafeUnpin for PuncturedTurbo
impl UnwindSafe for PuncturedTurbo
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