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

Public Member Functions

 Indexer (implementation::ConsumerSocket *socket, TransportProtocol *transport)
 
virtual uint32_t checkNextSuffix ()=0
 
virtual uint32_t getNextSuffix ()=0
 
virtual uint32_t getNextReassemblySegment ()=0
 
virtual void setFirstSuffix (uint32_t suffix)=0
 
virtual uint32_t getFirstSuffix ()=0
 
virtual void setNFec (uint32_t n_fec)=0
 
virtual uint32_t getNFec ()=0
 
virtual void enableFec (fec::FECType fec_type)=0
 
virtual void disableFec ()=0
 
virtual bool isFec (uint32_t index)
 
virtual double getFecOverhead ()
 
virtual double getMaxFecOverhead ()
 
virtual bool isFinalSuffixDiscovered ()=0
 
virtual uint32_t getFinalSuffix ()=0
 
virtual void setReassembly (Reassembly *reassembly)
 
virtual void setVerifier ()
 
virtual uint32_t jumpToIndex (uint32_t index)=0
 
virtual void reset ()=0
 
virtual void onContentObject (core::Interest &interest, core::ContentObject &content_object, bool reassembly=true)=0
 

Static Public Attributes

static const constexpr uint32_t invalid_index
 

Protected Attributes

implementation::ConsumerSocketsocket_
 
TransportProtocoltransport_
 
Reassemblyreassembly_
 
std::shared_ptr< auth::Verifierverifier_
 

Member Function Documentation

◆ checkNextSuffix()

virtual uint32_t transport::protocol::Indexer::checkNextSuffix ( )
pure virtual

◆ isFinalSuffixDiscovered()

virtual bool transport::protocol::Indexer::isFinalSuffixDiscovered ( )
pure virtual

◆ jumpToIndex()

virtual uint32_t transport::protocol::Indexer::jumpToIndex ( uint32_t  index)
pure virtual

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).

Implemented in transport::protocol::rtc::RtcIndexer< LIMIT >, transport::protocol::IncrementalIndexer, and transport::protocol::IndexManager.

◆ onContentObject()

virtual void transport::protocol::Indexer::onContentObject ( core::Interest interest,
core::ContentObject content_object,
bool  reassembly = true 
)
pure virtual

◆ reset()

virtual void transport::protocol::Indexer::reset ( )
pure virtual

◆ setFirstSuffix()

virtual void transport::protocol::Indexer::setFirstSuffix ( uint32_t  suffix)
pure virtual

◆ setNFec()

virtual void transport::protocol::Indexer::setNFec ( uint32_t  n_fec)
pure virtual

◆ setReassembly()

virtual void transport::protocol::Indexer::setReassembly ( Reassembly reassembly)
inlinevirtual

Set reassembly protocol

Reimplemented in transport::protocol::IndexManager.

◆ setVerifier()

virtual void transport::protocol::Indexer::setVerifier ( )
virtual

Set verifier using socket

Member Data Documentation

◆ invalid_index

const constexpr uint32_t transport::protocol::Indexer::invalid_index
staticconstexpr
Initial value:
=
(std::numeric_limits<uint32_t>::max() - 1)

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