famouso::mw::afp::defrag::SingleEventDemux< DCP > Class Template Reference
Policy: Simple demultiplexer that can handle only one event simultaneously. More...
#include <SingleEventDemux.h>
Public Types | |
typedef NoEventSeqHeaderSupport< DCP > | EventSeqHeaderPolicy |
Public Member Functions | |
SingleEventDemux (flen_t mtu) | |
Constructor. | |
~SingleEventDemux () | |
Destructor. | |
void * | get_defragmenter_handle (const Headers< DCP > &header, const KeyType &key) |
Defragmenter< DCP > * | get_defragmenter (void *handle) |
void | free_defragmenter (void *handle) |
Detailed Description
template<class DCP>
class famouso::mw::afp::defrag::SingleEventDemux< DCP >
Policy: Simple demultiplexer that can handle only one event simultaneously.
IMPORTANT: This demux policy cannot handle multiple arriving events at one time. Thus multithreading will cause problems if threads share one DefragmentationProcessor! You also have to ensure that a received event's data is not needed anymore when next event's fragments are going to be processed!
Use this policy for channels without packet loss, reordering and late duplicates or if you are sure that fragments of only one event will be received during defragmentation. This policy is a little robust concerning packet loss, but may lead to erroneous events if first fragment is lost.
This policy does not use event sequence numbers.
Alternatives: MultiSourceDemux, EventSeqDemux
Member Typedef Documentation
typedef NoEventSeqHeaderSupport<DCP> famouso::mw::afp::defrag::SingleEventDemux< DCP >::EventSeqHeaderPolicy |
Constructor & Destructor Documentation
famouso::mw::afp::defrag::SingleEventDemux< DCP >::SingleEventDemux | ( | flen_t | mtu | ) | [inline] |
Constructor.
famouso::mw::afp::defrag::SingleEventDemux< DCP >::~SingleEventDemux | ( | ) | [inline] |
Destructor.
Member Function Documentation
void famouso::mw::afp::defrag::SingleEventDemux< DCP >::free_defragmenter | ( | void * | handle | ) | [inline] |
Defragmenter<DCP>* famouso::mw::afp::defrag::SingleEventDemux< DCP >::get_defragmenter | ( | void * | handle | ) | [inline] |
void* famouso::mw::afp::defrag::SingleEventDemux< DCP >::get_defragmenter_handle | ( | const Headers< DCP > & | header, | |
const KeyType & | key | |||
) | [inline] |
The documentation for this class was generated from the following file:
- include/mw/afp/defrag/SingleEventDemux.h