Skip to content

Commit f9238ce

Browse files
committed
CTPAPI接口整理完成。
1 parent adf3734 commit f9238ce

File tree

4 files changed

+23
-22
lines changed

4 files changed

+23
-22
lines changed

CTPAPI/CMakeLists.txt

Lines changed: 17 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,14 @@ project(openctp_ctp)
55
set(CMAKE_CXX_STANDARD 11)
66

77
if (${CMAKE_SYSTEM_NAME} MATCHES "Windows")
8-
if(CMAKE_GENERATOR_PLATFORM STREQUAL "x86")
9-
include_directories(${PROJECT_SOURCE_DIR} ${PROJECT_SOURCE_DIR}/win32 $ENV{BOOST_INCLUDE} $ENV{PYTHON_INCLUDE})
10-
link_directories(${PROJECT_SOURCE_DIR} ${PROJECT_SOURCE_DIR}/win32 $ENV{BOOST_LIB} $ENV{PYTHON_LIB})
11-
else()
12-
include_directories(${PROJECT_SOURCE_DIR} ${PROJECT_SOURCE_DIR}/win64 $ENV{BOOST_INCLUDE} $ENV{PYTHON_INCLUDE})
13-
link_directories(${PROJECT_SOURCE_DIR} ${PROJECT_SOURCE_DIR}/win64 $ENV{BOOST_LIB} $ENV{PYTHON_LIB})
14-
endif()
8+
if (${CMAKE_SYSTEM_NAME} MATCHES "Windows")
9+
if(CMAKE_GENERATOR_PLATFORM STREQUAL "x86")
10+
include_directories(${PROJECT_SOURCE_DIR} ${PROJECT_SOURCE_DIR}/win32 $ENV{BOOST_INCLUDE} $ENV{PYTHON_INCLUDE})
11+
link_directories(${PROJECT_SOURCE_DIR} ${PROJECT_SOURCE_DIR}/win32 $ENV{BOOST_LIB} $ENV{PYTHON_LIB})
12+
else()
13+
include_directories(${PROJECT_SOURCE_DIR} ${PROJECT_SOURCE_DIR}/win64 $ENV{BOOST_INCLUDE} $ENV{PYTHON_INCLUDE})
14+
link_directories(${PROJECT_SOURCE_DIR} ${PROJECT_SOURCE_DIR}/win64 $ENV{BOOST_LIB} $ENV{PYTHON_LIB})
15+
endif()
1516
add_compile_options(/bigobj /MT)
1617
elseif (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
1718
include_directories(${PROJECT_SOURCE_DIR} ${PROJECT_SOURCE_DIR}/linux $ENV{BOOST_INCLUDE} $ENV{PYTHON_INCLUDE})
@@ -23,16 +24,16 @@ set(mdapi _thostmduserapi)
2324

2425
message("generate swig wrap files ...")
2526
if (${CMAKE_SYSTEM_NAME} MATCHES "Windows")
26-
if(CMAKE_GENERATOR_PLATFORM STREQUAL "x86")
27-
execute_process(COMMAND swig -threads -c++ -python -outdir . -outcurrentdir -I${PROJECT_SOURCE_DIR}/win32 ${PROJECT_SOURCE_DIR}/../thosttraderapi.i)
28-
execute_process(COMMAND swig -threads -c++ -python -outdir . -outcurrentdir -I${PROJECT_SOURCE_DIR}/win32 ${PROJECT_SOURCE_DIR}/../thostmduserapi.i)
29-
else()
30-
execute_process(COMMAND swig -threads -c++ -python -outdir . -outcurrentdir -I${PROJECT_SOURCE_DIR}/win64 ${PROJECT_SOURCE_DIR}/../thosttraderapi.i)
31-
execute_process(COMMAND swig -threads -c++ -python -outdir . -outcurrentdir -I${PROJECT_SOURCE_DIR}/win64 ${PROJECT_SOURCE_DIR}/../thostmduserapi.i)
32-
endif()
27+
if(CMAKE_GENERATOR_PLATFORM STREQUAL "x86")
28+
execute_process(COMMAND swig -threads -c++ -python -outdir . -outcurrentdir -I${PROJECT_SOURCE_DIR}/win32 ${PROJECT_SOURCE_DIR}/../thosttraderapi.i)
29+
execute_process(COMMAND swig -threads -c++ -python -outdir . -outcurrentdir -I${PROJECT_SOURCE_DIR}/win32 ${PROJECT_SOURCE_DIR}/../thostmduserapi.i)
30+
else()
31+
execute_process(COMMAND swig -threads -c++ -python -outdir . -outcurrentdir -I${PROJECT_SOURCE_DIR}/win64 ${PROJECT_SOURCE_DIR}/../thosttraderapi.i)
32+
execute_process(COMMAND swig -threads -c++ -python -outdir . -outcurrentdir -I${PROJECT_SOURCE_DIR}/win64 ${PROJECT_SOURCE_DIR}/../thostmduserapi.i)
33+
endif()
3334
elseif (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
34-
execute_process(COMMAND swig -threads -c++ -python -outdir . -outcurrentdir -I${PROJECT_SOURCE_DIR}/linux ${PROJECT_SOURCE_DIR}/../thosttraderapi.i)
35-
execute_process(COMMAND swig -threads -c++ -python -outdir . -outcurrentdir -I${PROJECT_SOURCE_DIR}/linux ${PROJECT_SOURCE_DIR}/../thostmduserapi.i)
35+
execute_process(COMMAND swig -threads -c++ -python -outdir . -outcurrentdir -I${PROJECT_SOURCE_DIR}/linux ${PROJECT_SOURCE_DIR}/../thosttraderapi.i)
36+
execute_process(COMMAND swig -threads -c++ -python -outdir . -outcurrentdir -I${PROJECT_SOURCE_DIR}/linux ${PROJECT_SOURCE_DIR}/../thostmduserapi.i)
3637
endif()
3738

3839
add_library(${tdapi} SHARED thosttraderapi_wrap.cxx)

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ CTPAPI-Python使用Swig技术开发,可以自己按以下步骤编译,需要
2020
本仓库选用的是CTPAPI-6.3.15,如需编译其它版本,请下载相应的CTPAPI文件覆盖对应目录下的CTPAPI文件。
2121

2222
### 准备
23-
- 安装VirtualStudio、Swig、Python3、boost,boost库用到的是locale库,用来转换字符集。
23+
- 安装VirtualStudio、Swig、Python3、boost、cmake,boost库用到的是locale库,用来转换字符集。
2424
- 设置BOOST_INCLUDE、BOOST_LIB环境变量分别指向相应库的头文件及库目录,如E:\boost_1_73_0、E:\boost_1_73_0\stage\lib。
2525
- 设置PYTHON_INCLUDE、PYTHON_LIB环境变量分别指向相应库的头文件及库目录,如C:\Program Files\Python312\include、C:\Program Files\Python312\libs。
2626

thostmduserapi.i

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -58,10 +58,10 @@
5858
%typemap(out) char[ANY], char[] {
5959
if ($1){
6060
if (!strlen($1)) {
61-
resultobj = SWIG_FromCharPtr("");
61+
$result = SWIG_FromCharPtr("");
6262
} else {
6363
const std::string utf8_str = std::move(boost::locale::conv::to_utf<char>($1, "GBK"));
64-
resultobj = SWIG_FromCharPtrAndSize(utf8_str.c_str(),utf8_str.size());
64+
$result = SWIG_FromCharPtrAndSize(utf8_str.c_str(),utf8_str.size());
6565
}
6666
}
6767
}

thosttraderapi.i

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -57,14 +57,14 @@
5757

5858
%typemap(out) char[ANY], char[] {
5959
if ("$1_name" == "Content" && "$symname" == "CThostFtdcSettlementInfoField_Content_get") {
60-
resultobj = PyBytes_FromString($1);
60+
$result = PyBytes_FromString($1);
6161
} else {
6262
if ($1){
6363
if (!strlen($1)) {
64-
resultobj = SWIG_FromCharPtr("");
64+
$result = SWIG_FromCharPtr("");
6565
} else {
6666
const std::string utf8_str = std::move(boost::locale::conv::to_utf<char>($1, "GBK"));
67-
resultobj = SWIG_FromCharPtrAndSize(utf8_str.c_str(),utf8_str.size());
67+
$result = SWIG_FromCharPtrAndSize(utf8_str.c_str(),utf8_str.size());
6868
}
6969
}
7070
}

0 commit comments

Comments
 (0)