0

说我想以 XML 形式(不是 FIXML!)格式化我收到的修复消息,但有点像规范描述,例如那样

<message name="Heartbeat" msgcat="admin" msgtype="0">
    <field name="TestReqID" required="N" /> 
</message>

在我的输出中,我需要一个 c++ 结构或一个名为 HeartbeatMsg 的类,其属性是它自己的字段。

因此,在解析了我的 XML 文件之后,我想将这些消息解析为一个对象,稍后我可以通过打印机或格式化类调用该对象,这些类将我的消息对象写入文件中。

所以我认为我想实例化的这个消息对象也许我可以将它创建为一个继承自 QuickFix 库中消息类的新类,所以我的问题是:

我能做到吗?因为我阅读了 QuickFix 消息,它加载了一些函数,这些函数不仅可以用于描述消息,还可以用于提取它,从流输入中序列化它。

所以虽然我的需求远非如此,但我仍然可以使用这个类进行简单的格式化。

4

1 回答 1

1

您可以使用 Quickfix 库将您从 XML 中获得的内容解析为 FIX 对象。但它会做两次工作。2个地方什么时候可以做

当您接收并处理要使用的 XML 消息时,您可以作为并发作业使用 Quickfix 库创建 FIX 消息。但这肯定会减慢您原始申请的处理速度。

当您处理 XML 消息并将其转换为您的代码可以理解的格式时,存储您创建的对象并从中创建 FIX 消息,作为完全独立于原始应用程序的辅助任务。这样,您的原始应用程序将按原样运行,并且不关心 FIX 消息的创建。但是您可能必须将对象复制到可以开始创建 FIX 消息的位置。

两者都需要您的原始 API 和 Quickfix 库的组合。所以在集成它们时要小心。

于 2012-04-18T15:31:25.627 回答