AllocationInstructionAck.h 3.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. #ifndef FIX50SP1_ALLOCATIONINSTRUCTIONACK_H
  2. #define FIX50SP1_ALLOCATIONINSTRUCTIONACK_H
  3. #include "Message.h"
  4. namespace FIX50SP1
  5. {
  6. class AllocationInstructionAck : public Message
  7. {
  8. public:
  9. AllocationInstructionAck() : Message(MsgType()) {}
  10. AllocationInstructionAck(const FIX::Message& m) : Message(m) {}
  11. AllocationInstructionAck(const Message& m) : Message(m) {}
  12. AllocationInstructionAck(const AllocationInstructionAck& m) : Message(m) {}
  13. static FIX::MsgType MsgType() { return FIX::MsgType("P"); }
  14. AllocationInstructionAck(
  15. const FIX::AllocID& aAllocID,
  16. const FIX::AllocStatus& aAllocStatus )
  17. : Message(MsgType())
  18. {
  19. set(aAllocID);
  20. set(aAllocStatus);
  21. }
  22. FIELD_SET(*this, FIX::AllocID);
  23. FIELD_SET(*this, FIX::NoPartyIDs);
  24. class NoPartyIDs: public FIX::Group
  25. {
  26. public:
  27. NoPartyIDs() : FIX::Group(453,448,FIX::message_order(448,447,452,802,0)) {}
  28. FIELD_SET(*this, FIX::PartyID);
  29. FIELD_SET(*this, FIX::PartyIDSource);
  30. FIELD_SET(*this, FIX::PartyRole);
  31. FIELD_SET(*this, FIX::NoPartySubIDs);
  32. class NoPartySubIDs: public FIX::Group
  33. {
  34. public:
  35. NoPartySubIDs() : FIX::Group(802,523,FIX::message_order(523,803,0)) {}
  36. FIELD_SET(*this, FIX::PartySubID);
  37. FIELD_SET(*this, FIX::PartySubIDType);
  38. };
  39. };
  40. FIELD_SET(*this, FIX::SecondaryAllocID);
  41. FIELD_SET(*this, FIX::TradeDate);
  42. FIELD_SET(*this, FIX::TransactTime);
  43. FIELD_SET(*this, FIX::AllocStatus);
  44. FIELD_SET(*this, FIX::AllocRejCode);
  45. FIELD_SET(*this, FIX::AllocType);
  46. FIELD_SET(*this, FIX::AllocIntermedReqType);
  47. FIELD_SET(*this, FIX::MatchStatus);
  48. FIELD_SET(*this, FIX::Product);
  49. FIELD_SET(*this, FIX::SecurityType);
  50. FIELD_SET(*this, FIX::Text);
  51. FIELD_SET(*this, FIX::EncodedTextLen);
  52. FIELD_SET(*this, FIX::EncodedText);
  53. FIELD_SET(*this, FIX::NoAllocs);
  54. class NoAllocs: public FIX::Group
  55. {
  56. public:
  57. NoAllocs() : FIX::Group(78,79,FIX::message_order(79,661,366,1047,467,776,539,161,360,361,989,993,992,80,0)) {}
  58. FIELD_SET(*this, FIX::AllocAccount);
  59. FIELD_SET(*this, FIX::AllocAcctIDSource);
  60. FIELD_SET(*this, FIX::AllocPrice);
  61. FIELD_SET(*this, FIX::AllocPositionEffect);
  62. FIELD_SET(*this, FIX::IndividualAllocID);
  63. FIELD_SET(*this, FIX::IndividualAllocRejCode);
  64. FIELD_SET(*this, FIX::NoNestedPartyIDs);
  65. class NoNestedPartyIDs: public FIX::Group
  66. {
  67. public:
  68. NoNestedPartyIDs() : FIX::Group(539,524,FIX::message_order(524,525,538,804,0)) {}
  69. FIELD_SET(*this, FIX::NestedPartyID);
  70. FIELD_SET(*this, FIX::NestedPartyIDSource);
  71. FIELD_SET(*this, FIX::NestedPartyRole);
  72. FIELD_SET(*this, FIX::NoNestedPartySubIDs);
  73. class NoNestedPartySubIDs: public FIX::Group
  74. {
  75. public:
  76. NoNestedPartySubIDs() : FIX::Group(804,545,FIX::message_order(545,805,0)) {}
  77. FIELD_SET(*this, FIX::NestedPartySubID);
  78. FIELD_SET(*this, FIX::NestedPartySubIDType);
  79. };
  80. };
  81. FIELD_SET(*this, FIX::AllocText);
  82. FIELD_SET(*this, FIX::EncodedAllocTextLen);
  83. FIELD_SET(*this, FIX::EncodedAllocText);
  84. FIELD_SET(*this, FIX::SecondaryIndividualAllocID);
  85. FIELD_SET(*this, FIX::AllocCustomerCapacity);
  86. FIELD_SET(*this, FIX::IndividualAllocType);
  87. FIELD_SET(*this, FIX::AllocQty);
  88. };
  89. };
  90. }
  91. #endif