OnixS C++ FIX Engine  4.12.0
API Documentation
IDecodeListener Class Referenceabstract

#include <OnixS/FIXEngine/FIX/IDecodeListener.h>

Public Member Functions

virtual ~IDecodeListener () ONIXS_FIXENGINE_DEFAULT
 
Entire message events

These events belongs to the entire message.

Events occur single time per message.

virtual void onBeginMessage (unsigned templateId, const char *messageType, size_t messageTypeLength)=0
 
virtual void onEndMessage ()=0
 
Data field events

These events denotes that particular fields were decoded.

Events occurs once per a field.

virtual void onValue (int tag, int value)=0
 
virtual void onValue (int tag, unsigned value)=0
 
virtual void onValue (int tag, long long value)=0
 
virtual void onValue (int tag, unsigned long long value)=0
 
virtual void onValue (int tag, long long mantissa, int exponent)=0
 
virtual void onValue (int tag, const char *value, size_t valueLength)=0
 
Sequence events

These callbacks embraces the sequence decoding.

Each callback called once per a sequence unless the sequence is empty.

virtual void onBeginSequence (int tag, size_t itemCount, int lengthFieldTag)=0
 
virtual void onEndSequence ()=0
 
Sequence entry events

These callbacks embraces sequence entry decoding.

Each callback called once per sequence entry.

virtual void onBeginSequenceEntry (size_t index)=0
 
virtual void onEndSequenceEntry ()=0
 

Detailed Description

This interface declares set of methods called by the EventBasedDecoder during the decoding process.

Definition at line 33 of file IDecodeListener.h.

Constructor & Destructor Documentation

virtual ~IDecodeListener ( )
virtual
Note
The FIX Engine does NOT manage the lifetime of this listener.

Member Function Documentation

virtual void onBeginMessage ( unsigned  templateId,
const char *  messageType,
size_t  messageTypeLength 
)
pure virtual

Called when a new FAST-encoded message found in input data.

Parameters
templateIdThe identifier of the FAST template belonged to the message.
messageTypeThe FIX type of the message.
messageTypeLengthThe length of the messageType string. Doe not include the terminating zero.
virtual void onBeginSequence ( int  tag,
size_t  itemCount,
int  lengthFieldTag 
)
pure virtual

Called just before first entry of the sequence decoding.

Parameters
tagThe Tag of the sequence
itemCountThe number of entries in the sequence.
lengthFieldTagThe Tag of the <length> field.
virtual void onBeginSequenceEntry ( size_t  index)
pure virtual

Called just before the sequence entry decoding.

Parameters
indexThe index of the entry.
virtual void onEndMessage ( )
pure virtual

Called when the decoder finishes the current message decoding.

Note
It is possible to reset the caller decoder during this callback.
virtual void onEndSequence ( )
pure virtual

Called immediately after the last sequence entry decoded.

virtual void onEndSequenceEntry ( )
pure virtual

Called after the entry was decoded.

virtual void onValue ( int  tag,
int  value 
)
pure virtual

Called when a signed 32-bit integer field decoded.

Parameters
tagThe FIX tag of the field.
valuethe decoded value.
virtual void onValue ( int  tag,
unsigned  value 
)
pure virtual

Called when an unsigned 32-bit integer field decoded.

Parameters
tagThe FIX tag of the field.
valuethe decoded value.
virtual void onValue ( int  tag,
long long  value 
)
pure virtual

Called when a signed 64-bit integer field decoded.

Parameters
tagThe FIX tag of the field.
valuethe decoded value.
virtual void onValue ( int  tag,
unsigned long long  value 
)
pure virtual

Called when an unsigned 64-bit integer field decoded.

Parameters
tagThe FIX tag of the field.
valuethe decoded value.
virtual void onValue ( int  tag,
long long  mantissa,
int  exponent 
)
pure virtual

Called when a decimal field decoded.

Parameters
tagThe FIX tag of the field.
mantissaThe mantissa of the decoded decimal value.
exponentThe exponent of the decoded decimal value (in range of -64..63).
virtual void onValue ( int  tag,
const char *  value,
size_t  valueLength 
)
pure virtual

Called when a string (ASCII or Unicode) or byteVector decoded.

Parameters
tagThe FIX tag of the field.
valueThe pointer to start of decoded data.
valueLengthThe length of the decoded data (does not include the terminating zero for <string> fields).

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