Public Types | |
enum | Enum |
This enumeration allows to setup decoder in dependent-decoding (i.e. decodeEachMessageIndependently
== false) mode for particular characteristics of the input data stream.
The CompleteMessagesOnly allows to perform decoding faster, but requires explicit call of Decoder::reset when someone error occurs or Decoder::decode returns NULL. Decoder::decode() will fire exception if such reset was omitted after exception.
This commonly prohibits usage of the mode for decoding streaming data like TCP/IP stream. On another hand the mode is highly recommended for the data distributed via UDP multicast or other packet transport which requires reset of decoder at someone strongly determined points.
The CouldContainPartialMessages initiates a bit slower decoding then the CompleteMessagesOnly but could be used for stream data decoding using following method:
Decoder decoder(templates, dictionary, false, InputDataTraits::CouldContainPartialMessages); ... const Message message = 0; while(!message) { / consume some data */ decoder.tryDecode(buffer, offset, count, &message, &numberOfDecodedBytes); }
Definition at line 46 of file InputDataTraits.h.
enum Enum |
Definition at line 47 of file InputDataTraits.h.