#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