Hybrid ICN (hICN) plugin  v21.06-rc0-4-g18fa668
Public Member Functions | Protected Attributes | List of all members
transport::protocol::IncrementalIndexer Class Reference
Inheritance diagram for transport::protocol::IncrementalIndexer:
Inheritance graph
[legend]
Collaboration diagram for transport::protocol::IncrementalIndexer:
Collaboration graph
[legend]

Public Member Functions

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

Protected Attributes

uint32_t final_suffix_
 
uint32_t first_suffix_
 
uint32_t next_download_suffix_
 
uint32_t next_reassembly_suffix_
 
- Protected Attributes inherited from transport::protocol::Indexer
implementation::ConsumerSocketsocket_
 
TransportProtocoltransport_
 
Reassemblyreassembly_
 
std::shared_ptr< auth::Verifierverifier_
 

Additional Inherited Members

- Static Public Attributes inherited from transport::protocol::Indexer
static const constexpr uint32_t invalid_index
 

Member Function Documentation

◆ checkNextSuffix()

virtual uint32_t transport::protocol::IncrementalIndexer::checkNextSuffix ( )
inlineoverridevirtual

◆ getNextReassemblySegment()

virtual uint32_t transport::protocol::IncrementalIndexer::getNextReassemblySegment ( )
inlineoverridevirtual

Retrive the next segment to be reassembled.

Implements transport::protocol::Indexer.

Reimplemented in transport::protocol::ManifestIncrementalIndexer, and transport::protocol::IndexManager.

◆ isFinalSuffixDiscovered()

virtual bool transport::protocol::IncrementalIndexer::isFinalSuffixDiscovered ( )
inlineoverridevirtual

◆ jumpToIndex()

virtual uint32_t transport::protocol::IncrementalIndexer::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.

Reimplemented in transport::protocol::IndexManager.

◆ onContentObject()

virtual void transport::protocol::IncrementalIndexer::onContentObject ( core::Interest interest,
core::ContentObject content_object,
bool  reassembly 
)
overridevirtual

Process incoming content objects.

Implements transport::protocol::Indexer.

Reimplemented in transport::protocol::IndexManager, and transport::protocol::ManifestIncrementalIndexer.

◆ reset()

virtual void transport::protocol::IncrementalIndexer::reset ( )
inlineoverridevirtual

◆ setFirstSuffix()

virtual void transport::protocol::IncrementalIndexer::setFirstSuffix ( uint32_t  suffix)
inlineoverridevirtual

Set first suffix from where to start.

Implements transport::protocol::Indexer.

Reimplemented in transport::protocol::IndexManager.

◆ setNFec()

void transport::protocol::IncrementalIndexer::setNFec ( uint32_t  n_fec)
inlineoverridevirtual

Functions to set/enable/disable fec

Implements transport::protocol::Indexer.

Reimplemented in transport::protocol::IndexManager.


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