Files
John Colvin fc1ae2e5cb Upgrade linux quickfix
WARNING: This is NOT an official release.  As of 12/10/21 20:23, the
latest release of the quickfix lib (1.15.1) does not support c++17
(the FIX::Application class has fns with dynamic exceptions).  This
commit upgrades to a more recent (unreleased) build which supports
c++17.
2021-12-12 15:56:55 -05:00

78 lines
2.3 KiB
C++

#ifndef FIXT11_MESSAGES_H
#define FIXT11_MESSAGES_H
#include "../Message.h"
#include "../Group.h"
namespace FIXT11
{
class Header : public FIX::Header
{
public:
FIELD_SET(*this, FIX::BeginString);
FIELD_SET(*this, FIX::BodyLength);
FIELD_SET(*this, FIX::MsgType);
FIELD_SET(*this, FIX::SenderCompID);
FIELD_SET(*this, FIX::TargetCompID);
FIELD_SET(*this, FIX::OnBehalfOfCompID);
FIELD_SET(*this, FIX::DeliverToCompID);
FIELD_SET(*this, FIX::SecureDataLen);
FIELD_SET(*this, FIX::SecureData);
FIELD_SET(*this, FIX::MsgSeqNum);
FIELD_SET(*this, FIX::SenderSubID);
FIELD_SET(*this, FIX::SenderLocationID);
FIELD_SET(*this, FIX::TargetSubID);
FIELD_SET(*this, FIX::TargetLocationID);
FIELD_SET(*this, FIX::OnBehalfOfSubID);
FIELD_SET(*this, FIX::OnBehalfOfLocationID);
FIELD_SET(*this, FIX::DeliverToSubID);
FIELD_SET(*this, FIX::DeliverToLocationID);
FIELD_SET(*this, FIX::PossDupFlag);
FIELD_SET(*this, FIX::PossResend);
FIELD_SET(*this, FIX::SendingTime);
FIELD_SET(*this, FIX::OrigSendingTime);
FIELD_SET(*this, FIX::XmlDataLen);
FIELD_SET(*this, FIX::XmlData);
FIELD_SET(*this, FIX::MessageEncoding);
FIELD_SET(*this, FIX::LastMsgSeqNumProcessed);
FIELD_SET(*this, FIX::ApplVerID);
FIELD_SET(*this, FIX::CstmApplVerID);
FIELD_SET(*this, FIX::NoHops);
class NoHops: public FIX::Group
{
public:
NoHops() : FIX::Group(627,628,FIX::message_order(628,629,630,0)) {}
FIELD_SET(*this, FIX::HopCompID);
FIELD_SET(*this, FIX::HopSendingTime);
FIELD_SET(*this, FIX::HopRefID);
};
};
class Trailer : public FIX::Trailer
{
public:
FIELD_SET(*this, FIX::SignatureLength);
FIELD_SET(*this, FIX::Signature);
FIELD_SET(*this, FIX::CheckSum);
};
class Message : public FIX::Message
{
public:
Message( const FIX::MsgType& msgtype )
: FIX::Message(
FIX::BeginString("FIXT.1.1"), msgtype )
{}
Message(const FIX::Message& m) : FIX::Message(m) {}
Message(const Message& m) : FIX::Message(m) {}
Header& getHeader() { return (Header&)m_header; }
const Header& getHeader() const { return (Header&)m_header; }
Trailer& getTrailer() { return (Trailer&)m_trailer; }
const Trailer& getTrailer() const { return (Trailer&)m_trailer; }
};
}
#endif