gitee.com/haifengat/gotap_dipper@v0.0.4-0.20231212021028-041a6fa876e5/generate/trade.cpp.tpl (about) 1 #include "trade.h" 2 #include <iostream> 3 4 using namespace std; 5 using namespace ITapTrade; 6 Trade::Trade(void) 7 { 8 [[ range .On ]]_[[ .FuncName ]] = NULL; 9 [[ end ]] 10 } 11 12 [[ range .On ]] 13 DLL_EXPORT_C_DECL void WINAPI Set[[ .FuncName ]](Trade* spi, void* func){spi->_[[ .FuncName ]] = func;} 14 [[ end ]] 15 16 // 导出的请求函数 17 /* DLL_EXPORT_C_DECL ITapTrade::ITapTradeAPI *TAP_CDECL CreateITapTradeAPI(const ITapTrade::TapAPIApplicationInfo *appInfo, ITapTrade::TAPIINT32 &iResult); 18 DLL_EXPORT_C_DECL void TAP_CDECL FreeITapTradeAPI(ITapTrade::ITapTradeAPI *apiObj); 19 DLL_EXPORT_C_DECL const ITapTrade::TAPICHAR *TAP_CDECL GetITapTradeAPIVersion(); 20 DLL_EXPORT_C_DECL const char * TAP_CDECL GetITapErrorDescribe(ITapTrade::TAPIINT32 errorCode); */ 21 22 DLL_EXPORT_C_DECL void* WINAPI CreateITapTradeAPINotify(){ 23 // 要确保编译通过 24 return new Trade(); 25 } 26 DLL_EXPORT_C_DECL ITapTrade::ITapTradeAPI* WINAPI CreateTradeAPI(const ITapTrade::TapAPIApplicationInfo *appInfo){ 27 TAPIINT32 iResult = 0; 28 return CreateITapTradeAPI(appInfo, iResult); 29 } 30 DLL_EXPORT_C_DECL void WINAPI FreeITapTradeAPI(ITapTrade::ITapTradeAPI *apiObj){ 31 return FreeITapTradeAPI(apiObj); 32 } 33 DLL_EXPORT_C_DECL void * WINAPI GetAPIVersion(){ 34 cout << "C++编译版本: " << __cplusplus << endl; 35 return (void *)GetITapTradeAPIVersion(); 36 } 37 DLL_EXPORT_C_DECL void * WINAPI GetErrorDescribe(ITapTrade::TAPIINT32 errorCode){ 38 return (void *)GetITapErrorDescribe(errorCode); 39 } 40 41 [[ range .Fn ]] 42 DLL_EXPORT_C_DECL int WINAPI [[ .FuncName ]](ITapTrade::ITapTradeAPI *api[[ range .Params ]], [[.Type]] [[.Name]][[end]]){return api->[[.FuncName]]([[ range $i, $v := .Params ]][[if gt $i 0]], [[end]][[ .Name|trim ]][[end]]);} 43 [[ end ]]