// libcfix.h // libcfix是把方正FIX的C++接口转换为C接口, 这样方便其他语言(比如go, python, java等)调用 // 同时对原有的接口进行封装和简化, 但不影响原有功能. 达到使用简单, 功能完全的目的。 // Libcfix当前只实现获取行情的功能 // 本文件定义了libcfix的导出函数 #pragma once #ifdef _WINDOWS #ifdef LIBCFIX_EXPORTS #define LIBCFIX_API __declspec(dllexport) #else #define LIBCFIX_API __declspec(dllimport) #endif #else #define LIBCFIX_API #endif #ifdef __cplusplus extern "C" { #endif #define MAX_BID_ASK_COUNT 25 typedef struct TickFull { double AskPrice[MAX_BID_ASK_COUNT]; double BidPrice[MAX_BID_ASK_COUNT]; double AskVolume[MAX_BID_ASK_COUNT]; double BidVolume[MAX_BID_ASK_COUNT]; char Symbol[8]; int Time; int Millisecond; int AskCount; int BidCount; } TickFull; /* typedef struct StockInfo { char Symbol[15]; int Position ; char SecurityExchange[10]; }StockInfo; */ // 创建App实例 LIBCFIX_API void* CreateApp(const char* user, const char* password); // 添加股票编码 LIBCFIX_API void AddSymbol(void* app, const char* symbol, const char* exchange); // 运行APP fname是fix config文件名 LIBCFIX_API void AppRun(void* app, const char* fname); // 注册回调函数 当获取行情时回调 typedef void (*fnOnMdMessage)(TickFull* tick, void* ctx); LIBCFIX_API void Reg_OnMdMessage(void* app, fnOnMdMessage fn, void* ctx); #ifdef __cplusplus } #endif