In order to provide a uniform technique to deal with the SBE messages, the SDK exposes FIX-like messaging subsystem. This subsystem represents additional layer between the SBE messages and user code. It allows users to achieve much higher tolerance to any changes in the SBE messaging including exchange-side ones by proving access to market data in the FIX-like (tag=value) way.
All classes complying the subsystem are located in the OnixS::CME::ConflatedUDP::FIX
namespace. To get the classes used, the following files must be included to the target project:
OnixS/CME/ConflatedUDP/FIX/Tags.h
contains tags which are served as FIX field labels and the subsystem provides access to the market data fields using the tags.OnixS/CME/ConflatedUDP/FIX/Messages.h
contains FIX-like messages definitions.Every FIX-like message wrapper contains a constructor which allows to create an object from a corresponding message:
The SDK provides ability to subscribe to market data related notifications and obtain incoming market data wrapped into FIX containers instead of receiving SBE messages.
The OnixS::CME::ConflatedUDP::FIX::MessageListener class serves for the needs. Similar to the OnixS::CME::ConflatedUDP::MarketDataListener, the given class allows to get market data which is processed by the Handler. However, the data is exposed as FIX-like wrapper over the SBE content.
The user code must inherit from the given class and register the instance as the listener to market data. See Listening to Market Data for more information concerning how to get subscribed to market data events.
The following example depicts how to access market data fields and groups using the FIX-like messaging subsystem: