How to implement QuickFix with my c++ project - c++

I'm new to the Fix protocol and I've been trying to find a way to implement it into c++ files starting from a XML description file. So by searching on the net they recommended me with Quickfix, what I really want to know is what do we should call QuickFix? A library or a standard or what exactly?
But my main problem is that lately I downloaded the Quickfix package then I couldn't integrate it into my c++ project even with the QuickFix documentation ( which was vague by the way !) so can someone please describe to me exactly step by step how to configure QuickFix with My Visual c++ project and how can I eventually write this code to parse my XML file:
#include "Application.h"
#include "quickfix/Session.h"

Quickfix doesn't understand XML or parses XML, except for the message bank config file which is in XML. It only deals in FIX formatted strings. You have to use a XML parser i.e. xerces, libxml++ to extract your data in the XML file and then construct a FIX message using the Quickfix library and send wherever you want to.
Fiximate is a more user friendly place to check your FIX messages for correctness. There are examples in the Quickfix library to test an application, and you would need a config file to run it, examples are provided on the Quickfix website.

FIX is a standard: fixprotocol.org/specifications
QuickFIX is a FIX engine (c.f. Library) implementing the standard.
In the source files that you downloaded there is a set of examples which you can use to understand the operation of the engine. You should use these along side the documentation.

QuickFix is a library. There are other FIX engines also available.
It simplifies the implementation by taking care of many low-level things. All a developer has to do is enhance the APIs for messages.
There are good examples for a quick start and good documentation for a beginner.
To get into more details of QuickFix, code itself is well organized.

Related

How to use the documentation of C++ code inside an IDE on linux?

Up to now i tried Eclipse, KDevelop and Code::Blocks.
Code::Blocks (12.11) seems not to be able to display documentation at all.
Eclipse (4.3.2) is able to display the documentation of at least the standard libraries during code completion and on hover, but it looks like there is no way to generate or add custom documentation. By now I was able to use DoxygenCPPInfo to convert the xml documentation to a "Java Serialization Data" file, which is useable by libhover. But the documentation is only visible on hover, but not on code completion.
KDevelop (4.7) does only show the comment, which normally contains the documentation, on hover and a heavily shortened version on code completion.
Is there another IDE or something else I could do to benefit from in code documentation while writing new code?
DoxygenCPPInfo can be compiled using the following files from eclipse-linuxtools:
ClassInfo.java
FunctionInfo.java
LibHoverInfo.java
MemberInfo.java
TypedefInfo.java
DoxygenCPPInfo.java
The xml documentation needs to be in one file to be used with DoxygenCPPInfo. This can be done by using xsltproc with combine.xslt and index.xml as input files. The final output of DoxygenCPPInfo can be placed in workspace/.metadata/.plugins/org.eclipse.linuxtools.cdt.libhover/CPP/ and will be loaded on next start of eclipse using that workspace. The documentation is only shown on hover and not on code completion.
You want to document a function in one file and use that function in another file. While using that function you want to reference the documentation written earlier in a tooltip without having to compile the first file. This can be done easily in kdevelop ide. There are not much IDEs I have come across that provide such ease of cross-referencing. Eclipse lib-hover plugin for C but it is clunky and I have had trouble working with that earlier. Here is the link to kdevelop-handbook .
Documenting in doxygen style in kdevelop

How to use Zorba with C++

I am trying to use Zorba XQuery parser with C++ for my project. I have downloaded and installed Zorba, but I can't seem to find a way to use it in my C++ programs. The documentation doesn't say a word. So if anyone here is good with it, can you please provide me your two cents?
Thank you
You can find examples at their Website
The general way to use an external library is to include its headers into your sourcefiles and add include its library in your link-step.

where can I find 'pkunzip.cpp and pkunzip.h"?

somewhere, I found a simple source to read something, and that source includes
"PkunZip.cpp" and "Pkunzip.h" to read zip-file.
However, I could not find the website about PkunZip.cpp ( sourceforge or codeproject etc ).
where can I find the website that describe 'pkunzip.cpp' and a manual about it?
If you search google for either of these files nothing is returned. That is a pretty bad sign. If you need code to handle zip archives, I have used libarchive in the past with great success. Their website has great documentation and the code is cross platform (Windows, *BSD, Linux, etc).
You should be able to replace any missing functionality with libarchive.
The standard way of reading zip files is zlib, or considering you tagged c++, the zipios. But if you want your particular files, have you tried Google Codesearch?

Conf file parser

I thought there was a boost library that allowed me to parse unix conf files?
I believe it also had other features, i.e. it could parse windows ini files and I think XML based config files might have been done or was on the way too.
Any idea what that's called? I'm looking through the program options library and it doesn't look like the library documentation that I was looking to use just a couple of weeks ago.
EDIT: Ok, I think it's might have been the program options library, but I think I might have been looking at other documentation examples... maybe the tutorials.
Can someone point me in the direction of a complete tutorial to read a conf file?
EDIT: Found it. The Boost Property Tree library that I was looking for!
Boost allows you to parse several configuration file formats; this facility is part of Boost.ProgramOptions.
All the answers on this page are good.
The specific library in boost I was after is called the Property Tree. However, I will point out that his is a relatively new feature and only available since the last one or two revisions. My default boost installation in Kubuntu 10.04.1 doesn't have it, so I had to download the boost library and build it myself.
You're maybe looking for Spirit

Sphinx in C++ (Linux)

This time I want to implement Sphinx in Linux. Please give me the API required to do the same or the concerned link will also do. Although I found many for PHP, however none for C++.
I have also used GTKmm in my application.
There is no API to do this. Sphinx will process text files in reStructuredText format and turn them into documentation. The ability to extract documentation from source code is only present for python code. For other languages you will need to put the documentation in the reStructuredText files directly. Do not be confused by the added C/C++/etc. support in Sphinx 1.0: this only covers new reStructeredText directives to better format (and index) documentation regarding non-python code.
It is theoretically possible to use a tool like Doxygen to extract documentation from C++ sources and use that in Sphinx, but this requires custom tools. Breathe may be one such tool.
Here is the resource that pretty much explains everything step-by-step that is needed to build a C/C++ source tree to show up with Sphinx documentation.
https://devblogs.microsoft.com/cppblog/clear-functional-c-documentation-with-sphinx-breathe-doxygen-cmake/
A brief of the pipeline: Doxygen -> Breathe -> Exhale -> Sphinx