|
Hybrid ICN (hICN) plugin
v21.06-rc0-4-g18fa668
|
#include <rs.h>


Public Member Functions | |
| RSEncoder (uint32_t k, uint32_t n, uint32_t seq_offset=0) | |
| void | consume (const fec::buffer &packet, uint32_t index, uint32_t offset=0) |
| void | onPacketProduced (core::ContentObject &content_object, uint32_t offset) override |
| std::size_t | getFecHeaderSize () override |
| Get the fec header size, if added to source packets. | |
| void | clear () override |
| void | reset () override |
Public Member Functions inherited from transport::protocol::fec::rs | |
| rs (uint32_t k, uint32_t n, uint32_t seq_offset=0) | |
| bool | isSymbol (uint32_t index) |
Public Member Functions inherited from transport::protocol::fec::FECBase | |
| template<typename Handler > | |
| void | setFECCallback (Handler &&callback) |
| template<typename Handler > | |
| void | setBufferCallback (Handler &&buffer_callback) |
Additional Inherited Members | |
Public Types inherited from transport::protocol::fec::FECBase | |
| using | PacketsReady = std::function< void(BufferArray &)> |
| using | BufferRequested = std::function< buffer(std::size_t size)> |
Protected Types inherited from transport::protocol::fec::rs | |
| using | PacketsReady = std::function< void(std::vector< buffer > &)> |
| using | SNBase = std::uint32_t |
| using | SourceBlocks = std::unordered_map< SNBase, BlockCode > |
| using | Codes = std::unordered_map< Code, Matrix, CodeHasher > |
Protected Member Functions inherited from transport::protocol::fec::rs | |
| bool | processed (SNBase seq_base) |
| void | setProcessed (SNBase seq_base) |
Protected Attributes inherited from transport::protocol::fec::rs | |
| std::uint32_t | k_ |
| std::uint32_t | n_ |
| std::uint32_t | seq_offset_ |
| std::unordered_set< SNBase > | processed_source_blocks_ |
Protected Attributes inherited from transport::protocol::fec::FECBase | |
| PacketsReady | fec_callback_ {0} |
| BufferRequested | buffer_callback_ {0} |
Static Protected Attributes inherited from transport::protocol::fec::rs | |
| static Codes | codes_ |
The reed-solomon encoder. It is feeded with source symbols and it provide repair-symbols through the fec_callback_
| void transport::protocol::fec::RSEncoder::consume | ( | const fec::buffer & | packet, |
| uint32_t | index, | ||
| uint32_t | offset = 0 |
||
| ) |
Always consume source symbols.
|
overridevirtual |
Producers will call this function upon production of a new packet.
Implements transport::protocol::fec::ProducerFEC.
1.8.17