90 lines
3.3 KiB
C++
90 lines
3.3 KiB
C++
#ifndef FIX42_SECURITYDEFINITION_H
|
|
#define FIX42_SECURITYDEFINITION_H
|
|
|
|
#include "Message.h"
|
|
|
|
namespace FIX42
|
|
{
|
|
|
|
class SecurityDefinition : public Message
|
|
{
|
|
public:
|
|
SecurityDefinition() : Message(MsgType()) {}
|
|
SecurityDefinition(const FIX::Message& m) : Message(m) {}
|
|
SecurityDefinition(const Message& m) : Message(m) {}
|
|
SecurityDefinition(const SecurityDefinition& m) : Message(m) {}
|
|
static FIX::MsgType MsgType() { return FIX::MsgType("d"); }
|
|
|
|
SecurityDefinition(
|
|
const FIX::SecurityReqID& aSecurityReqID,
|
|
const FIX::SecurityResponseID& aSecurityResponseID,
|
|
const FIX::TotalNumSecurities& aTotalNumSecurities )
|
|
: Message(MsgType())
|
|
{
|
|
set(aSecurityReqID);
|
|
set(aSecurityResponseID);
|
|
set(aTotalNumSecurities);
|
|
}
|
|
|
|
FIELD_SET(*this, FIX::SecurityReqID);
|
|
FIELD_SET(*this, FIX::SecurityResponseID);
|
|
FIELD_SET(*this, FIX::SecurityResponseType);
|
|
FIELD_SET(*this, FIX::TotalNumSecurities);
|
|
FIELD_SET(*this, FIX::Symbol);
|
|
FIELD_SET(*this, FIX::SymbolSfx);
|
|
FIELD_SET(*this, FIX::SecurityID);
|
|
FIELD_SET(*this, FIX::IDSource);
|
|
FIELD_SET(*this, FIX::SecurityType);
|
|
FIELD_SET(*this, FIX::MaturityMonthYear);
|
|
FIELD_SET(*this, FIX::MaturityDay);
|
|
FIELD_SET(*this, FIX::PutOrCall);
|
|
FIELD_SET(*this, FIX::StrikePrice);
|
|
FIELD_SET(*this, FIX::OptAttribute);
|
|
FIELD_SET(*this, FIX::ContractMultiplier);
|
|
FIELD_SET(*this, FIX::CouponRate);
|
|
FIELD_SET(*this, FIX::SecurityExchange);
|
|
FIELD_SET(*this, FIX::Issuer);
|
|
FIELD_SET(*this, FIX::EncodedIssuerLen);
|
|
FIELD_SET(*this, FIX::EncodedIssuer);
|
|
FIELD_SET(*this, FIX::SecurityDesc);
|
|
FIELD_SET(*this, FIX::EncodedSecurityDescLen);
|
|
FIELD_SET(*this, FIX::EncodedSecurityDesc);
|
|
FIELD_SET(*this, FIX::Currency);
|
|
FIELD_SET(*this, FIX::TradingSessionID);
|
|
FIELD_SET(*this, FIX::Text);
|
|
FIELD_SET(*this, FIX::EncodedTextLen);
|
|
FIELD_SET(*this, FIX::EncodedText);
|
|
FIELD_SET(*this, FIX::NoRelatedSym);
|
|
class NoRelatedSym: public FIX::Group
|
|
{
|
|
public:
|
|
NoRelatedSym() : FIX::Group(146,311,FIX::message_order(311,312,309,305,310,313,314,315,316,317,436,435,308,306,362,363,307,364,365,319,54,318,0)) {}
|
|
FIELD_SET(*this, FIX::UnderlyingSymbol);
|
|
FIELD_SET(*this, FIX::UnderlyingSymbolSfx);
|
|
FIELD_SET(*this, FIX::UnderlyingSecurityID);
|
|
FIELD_SET(*this, FIX::UnderlyingIDSource);
|
|
FIELD_SET(*this, FIX::UnderlyingSecurityType);
|
|
FIELD_SET(*this, FIX::UnderlyingMaturityMonthYear);
|
|
FIELD_SET(*this, FIX::UnderlyingMaturityDay);
|
|
FIELD_SET(*this, FIX::UnderlyingPutOrCall);
|
|
FIELD_SET(*this, FIX::UnderlyingStrikePrice);
|
|
FIELD_SET(*this, FIX::UnderlyingOptAttribute);
|
|
FIELD_SET(*this, FIX::UnderlyingContractMultiplier);
|
|
FIELD_SET(*this, FIX::UnderlyingCouponRate);
|
|
FIELD_SET(*this, FIX::UnderlyingSecurityExchange);
|
|
FIELD_SET(*this, FIX::UnderlyingIssuer);
|
|
FIELD_SET(*this, FIX::EncodedUnderlyingIssuerLen);
|
|
FIELD_SET(*this, FIX::EncodedUnderlyingIssuer);
|
|
FIELD_SET(*this, FIX::UnderlyingSecurityDesc);
|
|
FIELD_SET(*this, FIX::EncodedUnderlyingSecurityDescLen);
|
|
FIELD_SET(*this, FIX::EncodedUnderlyingSecurityDesc);
|
|
FIELD_SET(*this, FIX::RatioQty);
|
|
FIELD_SET(*this, FIX::Side);
|
|
FIELD_SET(*this, FIX::UnderlyingCurrency);
|
|
};
|
|
};
|
|
|
|
}
|
|
|
|
#endif
|