Menu

famouso::mw::afp::DefragmentationProcessorANL< AFPDC > Class Template Reference

Defragmentation processor adapted to the needs of the ANL. More...

#include <Defragmentation.h>

Inheritance diagram for famouso::mw::afp::DefragmentationProcessorANL< AFPDC >:
famouso::mw::afp::DefragmentationProcessor< AFPDC >

Public Member Functions

 DefragmentationProcessorANL (flen_t mtu)
 Constrcutor.
void process_fragment (DefragmentationStep< AFPDC > &ds)
 Processes fragment.
void last_event_processed ()
 Free last completed event. Call this after data of an complete event was processed.

Protected Attributes

void * last_defragmenter_handle

Detailed Description

template<class AFPDC>
class famouso::mw::afp::DefragmentationProcessorANL< AFPDC >

Defragmentation processor adapted to the needs of the ANL.

Provides single-thread-only interface not needing the DefragmentationStep for freeing an event.

Template Parameters:
AFPDC AFP defragmentation config
See also:
DefragmentationStep

Constructor & Destructor Documentation

template<class AFPDC>
famouso::mw::afp::DefragmentationProcessorANL< AFPDC >::DefragmentationProcessorANL ( flen_t  mtu  )  [inline]

Constrcutor.

Parameters:
mtu Maximum transmission unit (max. size of fragment inclusive AFP headers)

Member Function Documentation

template<class AFPDC>
void famouso::mw::afp::DefragmentationProcessorANL< AFPDC >::last_event_processed (  )  [inline]

Free last completed event. Call this after data of an complete event was processed.

Checks whether there is something to free. Thus, it can be always called after processing

Referenced by famouso::mw::anl::AbstractNetworkLayer< NL, AFP_FragConfig, AFP_DefragConfig >::event_processed().

template<class AFPDC>
void famouso::mw::afp::DefragmentationProcessorANL< AFPDC >::process_fragment ( DefragmentationStep< AFPDC > &  ds  )  [inline]

Processes fragment.

Parameters:
ds Contains fragment data.

After returning an event may be complete (check ds.event_complete()).

Reimplemented from famouso::mw::afp::DefragmentationProcessor< AFPDC >.

Referenced by famouso::mw::anl::AbstractNetworkLayer< NL, AFP_FragConfig, AFP_DefragConfig >::fetch().


Field Documentation

template<class AFPDC>
void* famouso::mw::afp::DefragmentationProcessorANL< AFPDC >::last_defragmenter_handle [protected]

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