91 [[nodiscard]] OrderBookT* getOrCreateOrderBook(
SymbolId symbol);
98 [[nodiscard]]
const OrderBookT* getOrderBook(
SymbolId symbol)
const;
105 [[nodiscard]] OrderBookT* getOrderBook(
SymbolId symbol);
112 [[nodiscard]] std::shared_ptr<OrderBookT> getOrCreateSharedOrderBook(
SymbolId symbol);
119 [[nodiscard]] std::shared_ptr<OrderBookT> getSharedOrderBook(
SymbolId symbol)
const;
125 [[nodiscard]]
bool hasSymbol(
SymbolId symbol)
const;
131 bool removeOrderBook(
SymbolId symbol);
136 [[nodiscard]] std::vector<SymbolId> getSymbols()
const;
141 [[nodiscard]] std::size_t symbolCount()
const;
150 void reserve(std::size_t capacity);
154 template<
typename Projection>
155 auto find(
SymbolId symbol, Projection&& proj)
const;
158 template<
typename Projection>
159 auto findOrCreate(
SymbolId symbol, Projection&& proj);
161 mutable std::shared_mutex mutex_;