vnpy/UML/IbApi.puml

75 lines
1.4 KiB
Plaintext
Raw Normal View History

2018-04-10 09:36:43 +00:00
@startuml
class EClient
class EClientSocket
2018-04-10 09:36:43 +00:00
abstract class EWrapper
class IbWrapper
class VnIbApi
class IbApiWrap
class IbApi
EClient <|-- EClientSocket
2018-04-10 09:36:43 +00:00
EWrapper <|-- IbWrapper
IbWrapper *-- VnIbApi
EClientSocket *-- VnIbApi
2018-04-10 09:36:43 +00:00
IbWrapper --* VnIbApi
VnIbApi <|-- IbApiWrap : Boost.python封装
note right
实际上是结构体struct。
按照Boost.python的规范封装
end note
IbApiWrap <|-- IbApi : Boost.python封装
note right
按照Boost.python的规范封装
Python的程序对接使用此类型。
end note
class EClient {
}
note right
IB提供的C++源代码。
此类定义了应用程序向IB网关发起请求的主动函数。
end note
2018-04-10 09:36:43 +00:00
class EClientSocket {
}
note right
IB提供的C++源代码。
此类定义了应用程序向IB网关发起请求的主动函数。
end note
2018-04-10 09:36:43 +00:00
abstract class EWrapper {
}
note right
提供IB网关返回响应数据后会调用回调函数。
此类定义了回调函数的接口。
end note
class IbWrapper {
- VnIbApi *api;
}
note right
此类用于实现回调函数的接口。
end note
class VnIbApi {
- IbWrapper *wrapper;
- EReaderOSSignal signal;
- EReader *reader;
+ EClientSocket *client;
}
note right
**VnIbApi中包含EClientSocket和IbWrapper成员**
EClientSocket提供应用程序发起请求到IB网关的API函数
IbWrapper 提供IB网关返回响应数据后的回调函数
end note
@enduml