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

Classes

class  ContentReassembledCallback
 

Public Member Functions

 Reassembly (implementation::ConsumerSocket *icn_socket, TransportProtocol *transport_protocol)
 
virtual void reassemble (core::ContentObject &content_object)=0
 
virtual void reassemble (utils::MemBuf &buffer, uint32_t suffix)=0
 
virtual void reassemble (std::unique_ptr< core::ContentObjectManifest > &&manifest)=0
 
virtual void reInitialize ()=0
 
virtual void setIndexer (Indexer *indexer)
 
virtual bool reassembleUnverified ()
 

Protected Member Functions

virtual void notifyApplication ()
 

Protected Attributes

implementation::ConsumerSocketreassembly_consumer_socket_
 
TransportProtocoltransport_protocol_
 
Indexerindexer_verifier_
 
std::unique_ptr< utils::MemBufread_buffer_
 

Member Function Documentation

◆ notifyApplication()

virtual void transport::protocol::Reassembly::notifyApplication ( )
protectedvirtual

Notify application there is data to read.

◆ reassemble() [1/3]

virtual void transport::protocol::Reassembly::reassemble ( core::ContentObject content_object)
pure virtual

◆ reassemble() [2/3]

virtual void transport::protocol::Reassembly::reassemble ( std::unique_ptr< core::ContentObjectManifest > &&  manifest)
pure virtual

Handle reassembly of manifest

Implemented in transport::protocol::ByteStreamReassembly, and transport::protocol::DatagramReassembly.

◆ reassemble() [3/3]

virtual void transport::protocol::Reassembly::reassemble ( utils::MemBuf buffer,
uint32_t  suffix 
)
pure virtual

Hanle reassembly of content object.

Implemented in transport::protocol::ByteStreamReassembly, and transport::protocol::DatagramReassembly.

◆ reassembleUnverified()

virtual bool transport::protocol::Reassembly::reassembleUnverified ( )
inlinevirtual

Decide if it is required to pass to application buffers whose verification has been delayed (e.g. because the manifest is missing). False by default.

Reimplemented in transport::protocol::DatagramReassembly.

◆ reInitialize()

virtual void transport::protocol::Reassembly::reInitialize ( )
pure virtual

Reset reassembler for new round

Implemented in transport::protocol::ByteStreamReassembly, and transport::protocol::DatagramReassembly.

◆ setIndexer()

virtual void transport::protocol::Reassembly::setIndexer ( Indexer indexer)
inlinevirtual

Use indexer to get next segments to reassembly


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