-
Notifications
You must be signed in to change notification settings - Fork 27
/
Copy pathmdspi.h
56 lines (44 loc) · 2.15 KB
/
mdspi.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#pragma once
#include "StdAfx.h"
class CtpMdSpi : public CThostFtdcMdSpi
{
public:
CtpMdSpi(CThostFtdcMdApi* api,TThostFtdcBrokerIDType bkrid):m_pApi(api),m_iReqId(0)
{ strcpy(m_sBkrID,bkrid); };
///错误应答
virtual void OnRspError(CThostFtdcRspInfoField *pRspInfo,
int nRequestID, bool bIsLast);
virtual void OnHeartBeatWarning(int nTimeLapse);
virtual void OnFrontDisconnected(int nReason);
///当客户端与交易后台建立起通信连接时(还未登录前),该方法被调用。
virtual void OnFrontConnected();
///登录请求响应
virtual void OnRspUserLogin(CThostFtdcRspUserLoginField *pRspUserLogin, CThostFtdcRspInfoField *pRspInfo, int nRequestID, bool bIsLast);
///登出请求响应
virtual void OnRspUserLogout(CThostFtdcUserLogoutField *pUserLogout, CThostFtdcRspInfoField *pRspInfo, int nRequestID, bool bIsLast);
///订阅行情应答
virtual void OnRspSubMarketData(CThostFtdcSpecificInstrumentField *pSpecificInstrument, CThostFtdcRspInfoField *pRspInfo, int nRequestID, bool bIsLast);
///取消订阅行情应答
virtual void OnRspUnSubMarketData(CThostFtdcSpecificInstrumentField *pSpecificInstrument, CThostFtdcRspInfoField *pRspInfo, int nRequestID, bool bIsLast);
///订阅询价应答
virtual void OnRspSubForQuoteRsp(CThostFtdcSpecificInstrumentField *pSpecificInstrument, CThostFtdcRspInfoField *pRspInfo, int nRequestID, bool bIsLast);
///取消订阅询价应答
virtual void OnRspUnSubForQuoteRsp(CThostFtdcSpecificInstrumentField *pSpecificInstrument, CThostFtdcRspInfoField *pRspInfo, int nRequestID, bool bIsLast);
///询价通知
virtual void OnRtnForQuoteRsp(CThostFtdcForQuoteRspField *pForQuoteRsp);
///深度行情通知
virtual void OnRtnDepthMarketData(CThostFtdcDepthMarketDataField *pDepthMarketData);
public:
void ReqUserLogin(/*TThostFtdcBrokerIDType appId*/);
void ReqUserLogout();
void SubscribeForQt(char *ppInstrumentID[], int nCount);
void UnSubscribeForQt(char *ppInstrumentID[], int nCount);
void SubscribeMarketData(char *ppInstrumentID[], int nCount);
void UnSubscribeMarketData(char *ppInstrumentID[], int nCount);
bool IsErrorRspInfo(CThostFtdcRspInfoField *pRspInfo);
public:
int m_iReqId;
TThostFtdcBrokerIDType m_sBkrID;
private:
CThostFtdcMdApi* m_pApi;
};