|
BetaTrader
A HFT Eco-System
|
Encapsulates all components needed to process commands for a symbol. More...
#include <Partition.h>

Public Member Functions | |
| Partition (common::Instrument symbol, data::DatabaseWorker *databaseWorker, TradeIDGenerator *tradeIDGenerator, MarketDataPublisher &publisher) | |
| Partition (common::Instrument symbol, data::DatabaseWorker *databaseWorker, TradeIDGenerator *tradeIDGenerator, MarketDataPublisher &publisher, std::unique_ptr< data::TradeRepository > tradeRepository, std::unique_ptr< data::OrderRepository > orderRepository, std::unique_ptr< OrderManager > orderManager, std::unique_ptr< OrderBook > orderBook, std::unique_ptr< Matcher > matcher, std::unique_ptr< RiskManager > riskManager) | |
| ~Partition () | |
| void | enqueue (std::unique_ptr< Command > command) |
| const data::DatabaseWorker * | getDatabaseWorker () const |
| const Matcher * | getMatcher () const |
| const OrderBook * | getOrderBook () const |
| const OrderManager * | getOrderManager () const |
| const data::OrderRepository * | getOrderRepository () const |
| size_t | getQueueSize () const |
| const RiskManager * | getRiskManager () const |
| common::Symbol | getSymbol () const |
| const TradeIDGenerator * | getTradeIDGenerator () const |
| const WorkerThread * | getWorker () const |
| void | start () |
| void | stop () |
| void | stopAcceptingCommands () |
| void | waitReady () |
Private Member Functions | |
| void | init () |
Private Attributes | |
| std::atomic< bool > | mAcceptingCommands {true} |
| rigtorp::SPSCQueue< std::unique_ptr< Command > > | mCommandQueue |
| data::DatabaseWorker * | mDatabaseWorker |
| std::unique_ptr< Matcher > | mMatcher |
| std::unique_ptr< OrderBook > | mOrderBook |
| std::unique_ptr< OrderManager > | mOrderManager |
| std::unique_ptr< data::OrderRepository > | mOrderRepository |
| MarketDataPublisher & | mPublisher |
| std::future< void > | mReadyFuture |
| std::unique_ptr< RiskManager > | mRiskManager |
| common::Symbol | mSymbol |
| TradeIDGenerator * | mTradeIDGenerator |
| std::unique_ptr< data::TradeRepository > | mTradeRepository |
| std::unique_ptr< WorkerThread > | mWorker |
Encapsulates all components needed to process commands for a symbol.
| trading_core::Partition::Partition | ( | common::Instrument | symbol, |
| data::DatabaseWorker * | databaseWorker, | ||
| TradeIDGenerator * | tradeIDGenerator, | ||
| MarketDataPublisher & | publisher | ||
| ) |

| trading_core::Partition::Partition | ( | common::Instrument | symbol, |
| data::DatabaseWorker * | databaseWorker, | ||
| TradeIDGenerator * | tradeIDGenerator, | ||
| MarketDataPublisher & | publisher, | ||
| std::unique_ptr< data::TradeRepository > | tradeRepository, | ||
| std::unique_ptr< data::OrderRepository > | orderRepository, | ||
| std::unique_ptr< OrderManager > | orderManager, | ||
| std::unique_ptr< OrderBook > | orderBook, | ||
| std::unique_ptr< Matcher > | matcher, | ||
| std::unique_ptr< RiskManager > | riskManager | ||
| ) |

| trading_core::Partition::~Partition | ( | ) |

| void trading_core::Partition::enqueue | ( | std::unique_ptr< Command > | command | ) |

| const data::DatabaseWorker * trading_core::Partition::getDatabaseWorker | ( | ) | const |
| const Matcher * trading_core::Partition::getMatcher | ( | ) | const |
| const OrderBook * trading_core::Partition::getOrderBook | ( | ) | const |
| const OrderManager * trading_core::Partition::getOrderManager | ( | ) | const |
| const data::OrderRepository * trading_core::Partition::getOrderRepository | ( | ) | const |
| size_t trading_core::Partition::getQueueSize | ( | ) | const |
| const RiskManager * trading_core::Partition::getRiskManager | ( | ) | const |
| common::Symbol trading_core::Partition::getSymbol | ( | ) | const |
| const TradeIDGenerator * trading_core::Partition::getTradeIDGenerator | ( | ) | const |
| const WorkerThread * trading_core::Partition::getWorker | ( | ) | const |
|
private |


| void trading_core::Partition::start | ( | ) |

| void trading_core::Partition::stop | ( | ) |


| void trading_core::Partition::stopAcceptingCommands | ( | ) |
| void trading_core::Partition::waitReady | ( | ) |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |