| Xlight API用户手册 v1.6.0.23 Xlight极速柜台接口文档

载入中...
搜索中...
未找到
efh_quote_decoder.h
浏览该文件的文档.
1#pragma once
2
3#include <cstdint>
4
5#include "sse_hpf_define.h"
6#include "sze_hpf_define.h"
7#include "xlt_quote_define.h"
8
9 namespace x1::efh {
10
11 typedef union efh_quote_data_union_t {
12 const sse_hpf_lev2* sse_lev2_snap;
13 const sse_hpf_tick_merge* sse_lev2_tick_merge;
14 const sse_hpf_idx* sse_lev2_idx;
15 const sse_hpf_bond_snap* sse_lev2_bond_snap;
16 const sse_hpf_bond_tick* sse_lev2_bond_tick;
17 const sze_hpf_lev2* sze_lev2_snap;
18 const sze_hpf_order* sze_lev2_order;
19 const sze_hpf_exe* sze_lev2_exe;
20 const sze_hpf_idx* sze_lev2_idx;
21 const sze_hpf_bond_snap* sze_lev2_bond_snap;
22 const sze_hpf_bond_order* sze_lev2_bond_order;
23 const sze_hpf_bond_exe* sze_lev2_bond_exe;
24 }efh_quote_data_union_t;
25
29 struct EFHQuoteItem {
30 uint8_t data_type;
43 efh_quote_data_union_t data;
44 };
45
62 class EFHQuoteDecoder {
63 public:
64 using StepFunc = const EFHQuoteItem* (*)(uint8_t*& data, uint32_t& remain, EFHQuoteItem& item);
65
66 EFHQuoteDecoder(QuoteMCType mc_type, const void* msg_data, uint32_t msg_len);
67 ~EFHQuoteDecoder() = default;
69 EFHQuoteDecoder(const EFHQuoteDecoder&) = delete;
70 EFHQuoteDecoder& operator=(const EFHQuoteDecoder&) = delete;
71
78 const EFHQuoteItem* get_next();
79 protected:
80 StepFunc step_fn_;
81 uint8_t* data_;
82 uint32_t remain_;
83 EFHQuoteItem item_;
84 };
85
86}
x1::efh::EFHQuoteDecoder
盛立行情解码迭代器
定义 efh_quote_decoder.h:62
x1::efh::EFHQuoteDecoder::item_
EFHQuoteItem item_
定义 efh_quote_decoder.h:83
x1::efh::EFHQuoteDecoder::EFHQuoteDecoder
EFHQuoteDecoder(const EFHQuoteDecoder &)=delete
不可拷贝、不可移动
x1::efh::EFHQuoteDecoder::operator=
EFHQuoteDecoder & operator=(const EFHQuoteDecoder &)=delete
x1::efh::EFHQuoteDecoder::StepFunc
const EFHQuoteItem *(*)(uint8_t *&data, uint32_t &remain, EFHQuoteItem &item) StepFunc
定义 efh_quote_decoder.h:64
x1::efh::EFHQuoteDecoder::get_next
const EFHQuoteItem * get_next()
获取下一条解码后的行情数据
x1::efh::EFHQuoteDecoder::EFHQuoteDecoder
EFHQuoteDecoder(QuoteMCType mc_type, const void *msg_data, uint32_t msg_len)
x1::efh::EFHQuoteDecoder::step_fn_
StepFunc step_fn_
定义 efh_quote_decoder.h:80
x1::efh::EFHQuoteDecoder::remain_
uint32_t remain_
定义 efh_quote_decoder.h:82
x1::efh::EFHQuoteDecoder::data_
uint8_t * data_
定义 efh_quote_decoder.h:81
x1::efh::EFHQuoteDecoder::~EFHQuoteDecoder
~EFHQuoteDecoder()=default
x1::efh
定义 efh_quote_decoder.h:9
x1::efh::efh_quote_data_union_t
union x1::efh::efh_quote_data_union_t efh_quote_data_union_t
x1::QuoteMCType
QuoteMCType
定义 xlt_quote_define.h:5
sse_hpf_define.h
本接口定义上交所盛立行情输出结构
sse_hpf_bond_snap
定义 sse_hpf_define.h:362
sse_hpf_bond_tick
定义 sse_hpf_define.h:439
sse_hpf_idx
定义 sse_hpf_define.h:147
sse_hpf_lev2
定义 sse_hpf_define.h:83
sse_hpf_tick_merge
定义 sse_hpf_define.h:493
sze_hpf_bond_exe
定义 sze_hpf_define.h:437
sze_hpf_bond_order
定义 sze_hpf_define.h:411
sze_hpf_bond_snap
定义 sze_hpf_define.h:354
sze_hpf_exe
定义 sze_hpf_define.h:201
sze_hpf_idx
定义 sze_hpf_define.h:154
sze_hpf_lev2
定义 sze_hpf_define.h:100
sze_hpf_order
定义 sze_hpf_define.h:175
x1::efh::EFHQuoteItem
get_next 返回的行情数据项
定义 efh_quote_decoder.h:29
x1::efh::EFHQuoteItem::data
efh_quote_data_union_t data
指向解码后数据的指针
定义 efh_quote_decoder.h:43
x1::efh::EFHQuoteItem::data_type
uint8_t data_type
定义 efh_quote_decoder.h:30
sze_hpf_define.h
本接口定义深交所盛立行情输出结构
x1::efh::efh_quote_data_union_t
定义 efh_quote_decoder.h:11
x1::efh::efh_quote_data_union_t::sse_lev2_tick_merge
const sse_hpf_tick_merge * sse_lev2_tick_merge
SSE_LEV2_TICK_MERGE_MSG_TYPE (62) // 上交所lev2逐笔合并信息类型
定义 efh_quote_decoder.h:13
x1::efh::efh_quote_data_union_t::sze_lev2_bond_snap
const sze_hpf_bond_snap * sze_lev2_bond_snap
SZE_LEV2_BOND_SNAP_MSG_TYPE (80) // 深交所债券快照消息类型
定义 efh_quote_decoder.h:21
x1::efh::efh_quote_data_union_t::sse_lev2_bond_snap
const sse_hpf_bond_snap * sse_lev2_bond_snap
SSE_LEV2_BOND_SNAP_MSG_TYPE (60) // 上交所lev2债券快照信息类型
定义 efh_quote_decoder.h:15
x1::efh::efh_quote_data_union_t::sze_lev2_exe
const sze_hpf_exe * sze_lev2_exe
SZE_LEV2_EXE_MSG_TYPE (24) // 深交所成交消息类型
定义 efh_quote_decoder.h:19
x1::efh::efh_quote_data_union_t::sse_lev2_idx
const sse_hpf_idx * sse_lev2_idx
SSE_LEV2_IDX_MSG_TYPE (33) // 上交所lev2指数消息类型
定义 efh_quote_decoder.h:14
x1::efh::efh_quote_data_union_t::sze_lev2_order
const sze_hpf_order * sze_lev2_order
SZE_LEV2_ORDER_MSG_TYPE (23) // 深交所订单消息类型
定义 efh_quote_decoder.h:18
x1::efh::efh_quote_data_union_t::sze_lev2_bond_exe
const sze_hpf_bond_exe * sze_lev2_bond_exe
SZE_LEV2_BOND_EXE_MSG_TYPE (82) // 深交所债券逐笔成交消息类型
定义 efh_quote_decoder.h:23
x1::efh::efh_quote_data_union_t::sze_lev2_idx
const sze_hpf_idx * sze_lev2_idx
SZE_LEV2_IDX_MSG_TYPE (22) // 深交所指数消息类型
定义 efh_quote_decoder.h:20
x1::efh::efh_quote_data_union_t::sse_lev2_snap
const sse_hpf_lev2 * sse_lev2_snap
SSE_LEV2_SNAP_MSG_TYPE (39) // 上交所lev2快照消息类型
定义 efh_quote_decoder.h:12
x1::efh::efh_quote_data_union_t::sse_lev2_bond_tick
const sse_hpf_bond_tick * sse_lev2_bond_tick
SSE_LEV2_BOND_TICK_MSG_TYPE (61) // 上交所lev2债券逐笔信息类型
定义 efh_quote_decoder.h:16
x1::efh::efh_quote_data_union_t::sze_lev2_bond_order
const sze_hpf_bond_order * sze_lev2_bond_order
SZE_LEV2_BOND_ORDER_MSG_TYPE (81) // 深交所债券逐笔委托消息类型
定义 efh_quote_decoder.h:22
x1::efh::efh_quote_data_union_t::sze_lev2_snap
const sze_hpf_lev2 * sze_lev2_snap
SZE_LEV2_SNAP_MSG_TYPE (21) // 深交所快照消息类型
定义 efh_quote_decoder.h:17
xlt_quote_define.h