objectcomputing / mFAST

A FAST (FIX Adapted for STreaming) encoder/decoder
http://objectcomputing.github.io/mFAST
BSD 3-Clause "New" or "Revised" License
220 stars 114 forks source link

mFAST Actions Status

Introduction

mFAST is a high performance C++ encoding/decoding library for FAST (FIX Adapted for STreaming) protocol.

For more information, please read the article.

Download and Build Intructions

For Unix or macOS with boost library installed on the system paths.

git clone --recursive https://github.com/objectcomputing/mFAST.git
mkdir mFAST/build
cd mFAST/build
cmake ..
make

For detailed build instructions for systems without existing boost library installation or on Windows, please read the wiki page.

Important Notice

[03/13/2016] mFAST has changed the licence from the LGPL v3 to the BSD 3-clause “New” or “Revised” license.

From now on, mFAST require C++ 11 to compile. You can check out the version with tag name "v1.2.1" if you need a C++ 03 only solution.

mFAST has limited support for FAST protocol version 1.2 now. That includes the new define and type tags in the FAST XML specification and the new enum/boolean types. In addition, the generated sequence types support iterators now. However, there is no support for SET, BIT GROUP and TIMESTAMP yet.

If you have used mFAST 1.1 version, please notice there are some backward-incompatible changes. First, to make a existing field absent, please use msg_mref.omit_fieldName() instead of msg_mref.set_fieldName().as_absent(). Second, if you have developed your own visitor for mFAST cref/mref types, the visitor has to be able to visit the new enum cref/mref types.

Using mFAST across the web