FrameDecoder#
The purpose of the FrameDecoder is to gather incoming packets or messages from a data stream, perform minimal work to construct a single data blob in shared memory for the FrameProcessor to handle further processing.
This class defines a few virtual methods to be implemented by concrete implementations.
Some are pure virtual - annotated with *
- and some are optional. These are:
There is generic support for UDP and ZMQ data streams that a decoder plugin can be built
on top of, depending on the use case. These are FrameDecoderUDP and FrameDecoderZMQ,
each a child of FrameDecoder. They must be paired with the FrameReceiverUDPRxThread
and FrameReceiverUDPRxThread respectively (e.g. setting the rx_type
config to udp
).
Both extend the base class and add further virtual methods to be implemented in a
concrete decoder.