OnixS Thomson Reuters Matching API (MAPI) Market Data Handler for C++  1.6.0.0
Listening to Market Data

Events in the Handler

Once the Handler is started, it listens to a messages from the Thomson Reuters message flow, processes it and invokes client code for further processing.

The Handler processes messages asynchronously and uses concept of events and event listeners to notify client code about a particular occasion like receiption of record.

Listening for a particular Event

For each event like Error Occurred Handler provides an interface (C++ class with pure virtual members) like OnixS::ThomsonReuters::MarketData::ErrorListener. Client code must implement this interface (C++ class) to be able to handle events of a particular type. Handler also exposes a member like OnixS::ThomsonReuters::MarketData::Handler::registerErrorListener which allows to associate an instance of the event handler with a appropriate event in bounds of a particular instance of the OnixS::ThomsonReuters::MarketData::Handler class.

Note
Associating listener for a particular event with an instance of the OnixS::ThomsonReuters::MarketData::Handler class must be performed while the Handler is in disconnected state. Once the Handler is started, changing listener-event associations is not allowed and may lead to unpredictable behavior as well as may cause unexpected errors.

Associating event listener with an instance of the OnixS::ThomsonReuters::MarketData::Handler class is also called subscribing to an event.

Primary High-level Events

There are multiple events exposed by the Handler. All events can be logically divided onto high- and low- level event sub-set. High-level events reflect various results of message processing done by the Handler like Order book updated or Symbol added. Low-level events are designed for more control over data processing as well for more flexibility and described in different section of this documentation including Advanced Programming section.

Below table describes events exposed by the Handler as well as depicts correspondence between events, interfaces for listeners and the Handler's members to subscribe to an event:

Event Listener (C++ class) to be implemented Handler's member to register listener Description
Symbol added OnixS::ThomsonReuters::MarketData::SymbolListener::onSymbolAdded OnixS::ThomsonReuters::MarketData::Handler::registerSymbolListener Occurs when new symbol added.
Symbol updated OnixS::ThomsonReuters::MarketData::SymbolListener::onSymbolUpdated OnixS::ThomsonReuters::MarketData::Handler::registerSymbolListener Occurs when symbol updated.
Symbol removed OnixS::ThomsonReuters::MarketData::SymbolListener::onSymbolRemoved OnixS::ThomsonReuters::MarketData::Handler::registerSymbolListener Occurs when symbol Removed.
Order book begin update OnixS::ThomsonReuters::MarketData::OrderBookChangeListener::onBeginUpdate OnixS::ThomsonReuters::MarketData::Handler::registerOrderBookChangeListener Occurs when new Thomson Reuters MAPI event received.
Order book summary received OnixS::ThomsonReuters::MarketData::OrderBookChangeListener::onBookSummaryUpdated OnixS::ThomsonReuters::MarketData::Handler::registerOrderBookChangeListener Occurs when order book summary found in the Thomson Reuters MAPI event.
Price Level added OnixS::ThomsonReuters::MarketData::OrderBookChangeListener::onPriceLevelAdded OnixS::ThomsonReuters::MarketData::Handler::registerOrderBookChangeListener Occurs when price level added to the order book.
Price Level updated OnixS::ThomsonReuters::MarketData::OrderBookChangeListener::onPriceLevelUpdated OnixS::ThomsonReuters::MarketData::Handler::registerOrderBookChangeListener Occurs when price level updated in the order book.
Price Level removed OnixS::ThomsonReuters::MarketData::OrderBookChangeListener::onPriceLevelRemoved OnixS::ThomsonReuters::MarketData::Handler::registerOrderBookChangeListener Occurs when price level removed from the order book.
Order book end update OnixS::ThomsonReuters::MarketData::OrderBookChangeListener::onEndUpdate OnixS::ThomsonReuters::MarketData::Handler::registerOrderBookChangeListener Occurs when Thomson Reuters MAPI event completely processed.
Order book updated OnixS::ThomsonReuters::MarketData::OrderBookUpdateListener::onOrderBookUpdated OnixS::ThomsonReuters::MarketData::Handler::registerOrderBookUpdateListener Occurs when Thomson Reuters MAPI event completely processed
Note
Handler always calls OnixS::ThomsonReuters::MarketData::OrderBookUpdateListener::onOrderBookUpdated after OnixS::ThomsonReuters::MarketData::OrderBookChangeListener events.