pub struct Punctured<C> { /* private fields */ }Expand description
A block code whose coded bits (in step-major order) are punctured: the
ConvolutionalCode.
Implementations§
Source§impl<C: BlockCode> Punctured<C>
impl<C: BlockCode> Punctured<C>
Sourcepub fn new(code: C, puncturer: Puncturer) -> Result<Punctured<C>>
pub fn new(code: C, puncturer: Puncturer) -> Result<Punctured<C>>
The code code punctured by puncturer.
§Errors
comnum_core::Error::Shape if the coded length of the mother code is not a
multiple of the outputs of the pattern.
Sourcepub fn selection(&self) -> &BitSelection
pub fn selection(&self) -> &BitSelection
The transmitted coded bits of a block.
Trait Implementations§
Source§impl<C: BlockCode> BlockCode for Punctured<C>
impl<C: BlockCode> BlockCode for Punctured<C>
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 moreimpl<C: Eq> Eq for Punctured<C>
Source§impl<C: SoftDecode> SoftDecode for Punctured<C>
impl<C: SoftDecode> SoftDecode for Punctured<C>
impl<C: PartialEq> StructuralPartialEq for Punctured<C>
Auto Trait Implementations§
impl<C> Forget for Punctured<C>
impl<C> Freeze for Punctured<C>where
C: Freeze,
impl<C> RefUnwindSafe for Punctured<C>where
C: RefUnwindSafe,
impl<C> Send for Punctured<C>where
C: Send,
impl<C> Sync for Punctured<C>where
C: Sync,
impl<C> Unpin for Punctured<C>where
C: Unpin,
impl<C> UnsafeUnpin for Punctured<C>where
C: UnsafeUnpin,
impl<C> UnwindSafe for Punctured<C>where
C: UnwindSafe,
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