FAST (FIX Adapted for Streaming) is a binary encoding method for message-oriented data streams.

FAST-related classes can be found in the FIXForge.NET.FIX.FAST namespace.

Encoding FIX Messages

To encode a FIX message into a FAST stream the Encoder class has to be used:

Example

CopyC#
using FIXForge.NET.FIX;
using FIXForge.NET.FIX.FAST;

const bool encodeEachMessageIndependently = true;

Encoder encoder = new Encoder(fastTemplates, ProtocolVersion.FIX44, encodeEachMessageIndependently);

const int templateIdentifier = 88;

byte[] fastStreamChunk = encoder.Encode(fixMessage, templateIdentifier);
CopyVB.NET
Imports FIXForge.NET.FIX
Imports FIXForge.NET.FIX.FAST

Dim fastEncoder As Encoder = New Encoder(fastTemplates, ProtocolVersion.FIX44, true)

Dim templateIdentifier As Integer = 88

Dim fastStreamChunk() As Byte = fastEncoder.Encode(fixMessage, templateIdentifier)

Decoding FIX Messages

To decode a part of a FAST stream back into a FIX message the Decoder class must be used.

Example

CopyC#
using FIXForge.NET.FIX;
using FIXForge.NET.FIX.FAST;

const bool decodeEachMessageIndependently = true;

Decoder decoder = new Decoder(fastTemplates, ProtocolVersion.FIX44, decodeEachMessageIndependently);

Message fixMessage = decoder.Decode(fastStreamChunk);
CopyVB.NET
Imports FIXForge.NET.FIX
Imports FIXForge.NET.FIX.FAST

Dim decodeEachMessageIndependently As Boolean = True;

Dim fastDecoder As Decoder = New Decoder(fastTemplates, ProtocolVersion.FIX44, decodeEachMessageIndependently)

Dim fixMessage As Message = fastDecoder.Decode(fastStreamChunk)