1 #ifndef FIX50SP1_TRADINGSESSIONLIST_H
2 #define FIX50SP1_TRADINGSESSIONLIST_H
3 
4 #include "Message.h"
5 
6 namespace FIX50SP1
7 {
8 
9   class TradingSessionList : public Message
10   {
11   public:
TradingSessionList()12     TradingSessionList() : Message(MsgType()) {}
TradingSessionList(const FIX::Message & m)13     TradingSessionList(const FIX::Message& m) : Message(m) {}
TradingSessionList(const Message & m)14     TradingSessionList(const Message& m) : Message(m) {}
TradingSessionList(const TradingSessionList & m)15     TradingSessionList(const TradingSessionList& m) : Message(m) {}
MsgType()16     static FIX::MsgType MsgType() { return FIX::MsgType("BJ"); }
17 
18     FIELD_SET(*this, FIX::ApplID);
19     FIELD_SET(*this, FIX::ApplSeqNum);
20     FIELD_SET(*this, FIX::ApplLastSeqNum);
21     FIELD_SET(*this, FIX::ApplResendFlag);
22     FIELD_SET(*this, FIX::TradSesReqID);
23     FIELD_SET(*this, FIX::NoTradingSessions);
24     class NoTradingSessions: public FIX::Group
25     {
26     public:
NoTradingSessions()27     NoTradingSessions() : FIX::Group(386,336,FIX::message_order(336,625,207,1301,1300,1326,338,339,325,340,567,341,342,343,344,345,387,58,354,355,0)) {}
28       FIELD_SET(*this, FIX::TradingSessionID);
29       FIELD_SET(*this, FIX::TradingSessionSubID);
30       FIELD_SET(*this, FIX::SecurityExchange);
31       FIELD_SET(*this, FIX::MarketID);
32       FIELD_SET(*this, FIX::MarketSegmentID);
33       FIELD_SET(*this, FIX::TradingSessionDesc);
34       FIELD_SET(*this, FIX::TradSesMethod);
35       FIELD_SET(*this, FIX::TradSesMode);
36       FIELD_SET(*this, FIX::UnsolicitedIndicator);
37       FIELD_SET(*this, FIX::TradSesStatus);
38       FIELD_SET(*this, FIX::TradSesStatusRejReason);
39       FIELD_SET(*this, FIX::TradSesStartTime);
40       FIELD_SET(*this, FIX::TradSesOpenTime);
41       FIELD_SET(*this, FIX::TradSesPreCloseTime);
42       FIELD_SET(*this, FIX::TradSesCloseTime);
43       FIELD_SET(*this, FIX::TradSesEndTime);
44       FIELD_SET(*this, FIX::TotalVolumeTraded);
45       FIELD_SET(*this, FIX::NoOrdTypeRules);
46       class NoOrdTypeRules: public FIX::Group
47       {
48       public:
NoOrdTypeRules()49       NoOrdTypeRules() : FIX::Group(1237,40,FIX::message_order(40,0)) {}
50         FIELD_SET(*this, FIX::OrdType);
51       };
52       FIELD_SET(*this, FIX::NoTimeInForceRules);
53       class NoTimeInForceRules: public FIX::Group
54       {
55       public:
NoTimeInForceRules()56       NoTimeInForceRules() : FIX::Group(1239,59,FIX::message_order(59,0)) {}
57         FIELD_SET(*this, FIX::TimeInForce);
58       };
59       FIELD_SET(*this, FIX::NoExecInstRules);
60       class NoExecInstRules: public FIX::Group
61       {
62       public:
NoExecInstRules()63       NoExecInstRules() : FIX::Group(1232,1308,FIX::message_order(1308,0)) {}
64         FIELD_SET(*this, FIX::ExecInstValue);
65       };
66       FIELD_SET(*this, FIX::NoMatchRules);
67       class NoMatchRules: public FIX::Group
68       {
69       public:
NoMatchRules()70       NoMatchRules() : FIX::Group(1235,1142,FIX::message_order(1142,574,0)) {}
71         FIELD_SET(*this, FIX::MatchAlgorithm);
72         FIELD_SET(*this, FIX::MatchType);
73       };
74       FIELD_SET(*this, FIX::NoMDFeedTypes);
75       class NoMDFeedTypes: public FIX::Group
76       {
77       public:
NoMDFeedTypes()78       NoMDFeedTypes() : FIX::Group(1141,1022,FIX::message_order(1022,264,1021,0)) {}
79         FIELD_SET(*this, FIX::MDFeedType);
80         FIELD_SET(*this, FIX::MarketDepth);
81         FIELD_SET(*this, FIX::MDBookType);
82       };
83       FIELD_SET(*this, FIX::Text);
84       FIELD_SET(*this, FIX::EncodedTextLen);
85       FIELD_SET(*this, FIX::EncodedText);
86     };
87   };
88 
89 }
90 
91 #endif
92