Hybrid ICN (hICN) plugin  v21.06-rc0-4-g18fa668
Public Member Functions | Static Public Member Functions | List of all members
transport::protocol::rtc::RtcIndexer< LIMIT > Class Template Reference
Inheritance diagram for transport::protocol::rtc::RtcIndexer< LIMIT >:
Inheritance graph
[legend]
Collaboration diagram for transport::protocol::rtc::RtcIndexer< LIMIT >:
Collaboration graph
[legend]

Public Member Functions

 RtcIndexer (implementation::ConsumerSocket *icn_socket, TransportProtocol *transport)
 
 RtcIndexer (RtcIndexer &&other)
 
void reset () override
 
uint32_t checkNextSuffix () override
 
uint32_t getNextSuffix () override
 
void setFirstSuffix (uint32_t suffix) override
 
uint32_t getFirstSuffix () override
 
uint32_t jumpToIndex (uint32_t index) override
 
void onContentObject (core::Interest &interest, core::ContentObject &content_object, bool reassembly) override
 
uint32_t getNextReassemblySegment () override
 
bool isFinalSuffixDiscovered () override
 
uint32_t getFinalSuffix () override
 
void enableFec (fec::FECType fec_type) override
 
void disableFec () override
 
void setNFec (uint32_t n_fec) override
 
uint32_t getNFec () override
 
bool isFec (uint32_t index) override
 
double getFecOverhead () override
 
double getMaxFecOverhead () override
 
- Public Member Functions inherited from transport::protocol::Indexer
 Indexer (implementation::ConsumerSocket *socket, TransportProtocol *transport)
 
virtual void setReassembly (Reassembly *reassembly)
 
virtual void setVerifier ()
 

Static Public Member Functions

static bool isFec (fec::FECType fec_type, uint32_t index, uint32_t first_suffix)
 
static uint32_t nextSource (fec::FECType fec_type, uint32_t index, uint32_t first_suffix)
 

Additional Inherited Members

- Static Public Attributes inherited from transport::protocol::Indexer
static const constexpr uint32_t invalid_index
 
- Protected Attributes inherited from transport::protocol::Indexer
implementation::ConsumerSocketsocket_
 
TransportProtocoltransport_
 
Reassemblyreassembly_
 
std::shared_ptr< auth::Verifierverifier_
 

Member Function Documentation

◆ checkNextSuffix()

template<uint32_t LIMIT = MIN_PROBE_SEQ>
uint32_t transport::protocol::rtc::RtcIndexer< LIMIT >::checkNextSuffix ( )
inlineoverridevirtual

Suffix getters

Implements transport::protocol::Indexer.

◆ getNextReassemblySegment()

template<uint32_t LIMIT = MIN_PROBE_SEQ>
uint32_t transport::protocol::rtc::RtcIndexer< LIMIT >::getNextReassemblySegment ( )
inlineoverridevirtual

Retrieve the next segment to be reassembled.

Implements transport::protocol::Indexer.

◆ isFinalSuffixDiscovered()

template<uint32_t LIMIT = MIN_PROBE_SEQ>
bool transport::protocol::rtc::RtcIndexer< LIMIT >::isFinalSuffixDiscovered ( )
inlineoverridevirtual

Final suffix helpers.

Implements transport::protocol::Indexer.

◆ jumpToIndex()

template<uint32_t LIMIT = MIN_PROBE_SEQ>
uint32_t transport::protocol::rtc::RtcIndexer< LIMIT >::jumpToIndex ( uint32_t  index)
inlineoverridevirtual

Jump to suffix. This may be useful if, for any protocol dependent mechanism, we need to suddenly change current suffix. This does not modify the way suffixes re incremented/decremented (that's part of the implementation).

Implements transport::protocol::Indexer.

◆ onContentObject()

template<uint32_t LIMIT = MIN_PROBE_SEQ>
void transport::protocol::rtc::RtcIndexer< LIMIT >::onContentObject ( core::Interest interest,
core::ContentObject content_object,
bool  reassembly 
)
inlineoverridevirtual

Process incoming content objects.

Implements transport::protocol::Indexer.

◆ reset()

template<uint32_t LIMIT = MIN_PROBE_SEQ>
void transport::protocol::rtc::RtcIndexer< LIMIT >::reset ( )
inlineoverridevirtual

Reset the indexer.

Implements transport::protocol::Indexer.

◆ setFirstSuffix()

template<uint32_t LIMIT = MIN_PROBE_SEQ>
void transport::protocol::rtc::RtcIndexer< LIMIT >::setFirstSuffix ( uint32_t  suffix)
inlineoverridevirtual

Set first suffix from where to start.

Implements transport::protocol::Indexer.

◆ setNFec()

template<uint32_t LIMIT = MIN_PROBE_SEQ>
void transport::protocol::rtc::RtcIndexer< LIMIT >::setNFec ( uint32_t  n_fec)
inlineoverridevirtual

Functions to set/enable/disable fec

Implements transport::protocol::Indexer.


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