ListStatus.h 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. #ifndef FIX42_LISTSTATUS_H
  2. #define FIX42_LISTSTATUS_H
  3. #include "Message.h"
  4. namespace FIX42
  5. {
  6. class ListStatus : public Message
  7. {
  8. public:
  9. ListStatus() : Message(MsgType()) {}
  10. ListStatus(const FIX::Message& m) : Message(m) {}
  11. ListStatus(const Message& m) : Message(m) {}
  12. ListStatus(const ListStatus& m) : Message(m) {}
  13. static FIX::MsgType MsgType() { return FIX::MsgType("N"); }
  14. ListStatus(
  15. const FIX::ListID& aListID,
  16. const FIX::ListStatusType& aListStatusType,
  17. const FIX::NoRpts& aNoRpts,
  18. const FIX::ListOrderStatus& aListOrderStatus,
  19. const FIX::RptSeq& aRptSeq,
  20. const FIX::TotNoOrders& aTotNoOrders )
  21. : Message(MsgType())
  22. {
  23. set(aListID);
  24. set(aListStatusType);
  25. set(aNoRpts);
  26. set(aListOrderStatus);
  27. set(aRptSeq);
  28. set(aTotNoOrders);
  29. }
  30. FIELD_SET(*this, FIX::ListID);
  31. FIELD_SET(*this, FIX::ListStatusType);
  32. FIELD_SET(*this, FIX::NoRpts);
  33. FIELD_SET(*this, FIX::ListOrderStatus);
  34. FIELD_SET(*this, FIX::RptSeq);
  35. FIELD_SET(*this, FIX::ListStatusText);
  36. FIELD_SET(*this, FIX::EncodedListStatusTextLen);
  37. FIELD_SET(*this, FIX::EncodedListStatusText);
  38. FIELD_SET(*this, FIX::TransactTime);
  39. FIELD_SET(*this, FIX::TotNoOrders);
  40. FIELD_SET(*this, FIX::NoOrders);
  41. class NoOrders: public FIX::Group
  42. {
  43. public:
  44. NoOrders() : FIX::Group(73,11,FIX::message_order(11,14,39,151,84,6,103,58,354,355,0)) {}
  45. FIELD_SET(*this, FIX::ClOrdID);
  46. FIELD_SET(*this, FIX::CumQty);
  47. FIELD_SET(*this, FIX::OrdStatus);
  48. FIELD_SET(*this, FIX::LeavesQty);
  49. FIELD_SET(*this, FIX::CxlQty);
  50. FIELD_SET(*this, FIX::AvgPx);
  51. FIELD_SET(*this, FIX::OrdRejReason);
  52. FIELD_SET(*this, FIX::Text);
  53. FIELD_SET(*this, FIX::EncodedTextLen);
  54. FIELD_SET(*this, FIX::EncodedText);
  55. };
  56. };
  57. }
  58. #endif