53 template<
typename TMap>
55 std::vector<common::Trade>& trades);
Asynchronous database worker abstraction.
Repository interface for persisting trades.
Represents a single trading order in the system.
Definition Order.h:19
The matching engine that pairs buy and sell orders.
Definition Matcher.h:23
virtual ~Matcher()=default
void matchTable(common::Order *incomingOrder, TMap *restingMap, std::vector< common::Trade > &trades)
A template function to match an incoming order against a map of resting orders.
Definition Matcher.cpp:44
TradeIDGenerator * mTradeIdGenerator
A generator for unique trade IDs.
Definition Matcher.h:59
virtual std::vector< common::Trade > match(common::Order *incomingOrder, OrderBook &orderBook)
Matches an incoming order against the order book.
Definition Matcher.cpp:15
Represents the order book for a single financial instrument.
Definition OrderBook.h:22
A thread-safe, database-aware generator for unique trade IDs.
Definition TradeIDGenerator.h:15
Definition CancelOrder.h:10