BetaTrader
A HFT Eco-System
Loading...
Searching...
No Matches
FixMessageParser.h
Go to the documentation of this file.
1
6#pragma once
7
11#include <optional>
12#include <string>
13#include <variant>
14
15namespace fix_client {
16
20 using ParsedFixMessage = std::variant<
21 std::monostate, // Represents a message we don't handle deeply (e.g. Heartbeat, Logon Ack)
25 >;
26
34 public:
41 static ParsedFixMessage parse(const std::string& fixMessage);
42
43 private:
44 static std::optional<fix::ExecutionReport> parseExecutionReport(const std::string& fixMessage);
45 static std::optional<fix::MarketDataSnapshotFullRefresh> parseMarketDataSnapshot(const std::string& fixMessage);
46 static std::optional<fix::MarketDataIncrementalRefresh> parseMarketDataIncremental(const std::string& fixMessage);
47 };
48
49} // namespace fix_client
Represents a FIX Execution Report (35=8) message.
Definition ExecutionReport.h:14
Parses raw FIX messages received from the server into strongly-typed structures.
Definition FixMessageParser.h:33
static std::optional< fix::MarketDataSnapshotFullRefresh > parseMarketDataSnapshot(const std::string &fixMessage)
Definition FixMessageParser.cpp:135
static std::optional< fix::MarketDataIncrementalRefresh > parseMarketDataIncremental(const std::string &fixMessage)
Definition FixMessageParser.cpp:206
static ParsedFixMessage parse(const std::string &fixMessage)
Parses a raw FIX message string.
Definition FixMessageParser.cpp:12
static std::optional< fix::ExecutionReport > parseExecutionReport(const std::string &fixMessage)
Definition FixMessageParser.cpp:69
Definition AuthManager.h:13
std::variant< std::monostate, fix::ExecutionReport, fix::MarketDataSnapshotFullRefresh, fix::MarketDataIncrementalRefresh > ParsedFixMessage
A variant representing the possible parsed messages received by the client.
Definition FixMessageParser.h:25
Definition MarketDataIncrementalRefresh.h:22
Definition MarketDataSnapshotFullRefresh.h:21