|
Slick OrderBook 1.1.0
High-Performance C++23 OrderBook Library
|
Order structure for Level 3 orderbook Uses intrusive list design for zero-allocation order queues at each price level Cache-aligned to 64 bytes for optimal performance (exactly 1 cache line) More...
#include <order.hpp>
Public Member Functions | |
| Order (OrderId id, Price p, Quantity qty, Side s, Timestamp ts, uint64_t prio) noexcept | |
| Constructor with all fields. | |
| Order (OrderId id, Price p, Quantity qty, Side s, Timestamp ts) noexcept | |
| Constructor with timestamp as priority (common case) | |
| Order () noexcept | |
| Default constructor (for pool allocation) | |
| bool | operator< (const Order &other) const noexcept |
| Comparison operator for priority-based sorting Lower priority value = higher priority in queue. | |
| bool | operator> (const Order &other) const noexcept |
Public Attributes | |
| OrderId | order_id |
| Price | price |
| Quantity | quantity |
| Side | side |
| Timestamp | timestamp |
| uint64_t | priority |
| Order * | prev |
| Order * | next |
Order structure for Level 3 orderbook Uses intrusive list design for zero-allocation order queues at each price level Cache-aligned to 64 bytes for optimal performance (exactly 1 cache line)
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
| OrderId slick::orderbook::detail::Order::order_id |
Definition at line 15 of file order.hpp.
Referenced by slick::orderbook::OrderBookL3::notifyOrderDelete(), and slick::orderbook::OrderBookL3::notifyOrderUpdate().
| Price slick::orderbook::detail::Order::price |
Definition at line 16 of file order.hpp.
Referenced by slick::orderbook::OrderBookL3::addOrModifyOrder(), slick::orderbook::OrderBookL3::deleteOrder(), slick::orderbook::OrderBookL3::executeOrder(), slick::orderbook::OrderBookL3::modifyOrder(), slick::orderbook::OrderBookL3::notifyOrderDelete(), and slick::orderbook::OrderBookL3::notifyOrderUpdate().
| uint64_t slick::orderbook::detail::Order::priority |
Definition at line 20 of file order.hpp.
Referenced by slick::orderbook::OrderBookL3::addOrModifyOrder(), slick::orderbook::OrderBookL3::executeOrder(), slick::orderbook::OrderBookL3::modifyOrder(), slick::orderbook::OrderBookL3::notifyOrderDelete(), and slick::orderbook::OrderBookL3::notifyOrderUpdate().
| Quantity slick::orderbook::detail::Order::quantity |
Definition at line 17 of file order.hpp.
Referenced by slick::orderbook::OrderBookL3::addOrModifyOrder(), slick::orderbook::OrderBookL3::executeOrder(), slick::orderbook::OrderBookL3::modifyOrder(), slick::orderbook::OrderBookL3::notifyOrderDelete(), and slick::orderbook::OrderBookL3::notifyOrderUpdate().
| Side slick::orderbook::detail::Order::side |
Definition at line 18 of file order.hpp.
Referenced by slick::orderbook::OrderBookL3::addOrModifyOrder(), slick::orderbook::OrderBookL3::deleteOrder(), slick::orderbook::OrderBookL3::modifyOrder(), slick::orderbook::OrderBookL3::notifyOrderDelete(), and slick::orderbook::OrderBookL3::notifyOrderUpdate().
| Timestamp slick::orderbook::detail::Order::timestamp |
Definition at line 19 of file order.hpp.
Referenced by slick::orderbook::OrderBookL3::deleteOrder(), and slick::orderbook::OrderBookL3::modifyOrder().