AllocationInstructionAck.h 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. #ifndef FIX44_ALLOCATIONINSTRUCTIONACK_H
  2. #define FIX44_ALLOCATIONINSTRUCTIONACK_H
  3. #include "Message.h"
  4. namespace FIX44
  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::TransactTime& aTransactTime,
  17. const FIX::AllocStatus& aAllocStatus )
  18. : Message(MsgType())
  19. {
  20. set(aAllocID);
  21. set(aTransactTime);
  22. set(aAllocStatus);
  23. }
  24. FIELD_SET(*this, FIX::AllocID);
  25. FIELD_SET(*this, FIX::NoPartyIDs);
  26. class NoPartyIDs: public FIX::Group
  27. {
  28. public:
  29. NoPartyIDs() : FIX::Group(453,448,FIX::message_order(448,447,452,802,0)) {}
  30. FIELD_SET(*this, FIX::PartyID);
  31. FIELD_SET(*this, FIX::PartyIDSource);
  32. FIELD_SET(*this, FIX::PartyRole);
  33. FIELD_SET(*this, FIX::NoPartySubIDs);
  34. class NoPartySubIDs: public FIX::Group
  35. {
  36. public:
  37. NoPartySubIDs() : FIX::Group(802,523,FIX::message_order(523,803,0)) {}
  38. FIELD_SET(*this, FIX::PartySubID);
  39. FIELD_SET(*this, FIX::PartySubIDType);
  40. };
  41. };
  42. FIELD_SET(*this, FIX::SecondaryAllocID);
  43. FIELD_SET(*this, FIX::TradeDate);
  44. FIELD_SET(*this, FIX::TransactTime);
  45. FIELD_SET(*this, FIX::AllocStatus);
  46. FIELD_SET(*this, FIX::AllocRejCode);
  47. FIELD_SET(*this, FIX::AllocType);
  48. FIELD_SET(*this, FIX::AllocIntermedReqType);
  49. FIELD_SET(*this, FIX::MatchStatus);
  50. FIELD_SET(*this, FIX::Product);
  51. FIELD_SET(*this, FIX::SecurityType);
  52. FIELD_SET(*this, FIX::Text);
  53. FIELD_SET(*this, FIX::EncodedTextLen);
  54. FIELD_SET(*this, FIX::EncodedText);
  55. FIELD_SET(*this, FIX::NoAllocs);
  56. class NoAllocs: public FIX::Group
  57. {
  58. public:
  59. NoAllocs() : FIX::Group(78,79,FIX::message_order(79,661,366,467,776,161,360,361,0)) {}
  60. FIELD_SET(*this, FIX::AllocAccount);
  61. FIELD_SET(*this, FIX::AllocAcctIDSource);
  62. FIELD_SET(*this, FIX::AllocPrice);
  63. FIELD_SET(*this, FIX::IndividualAllocID);
  64. FIELD_SET(*this, FIX::IndividualAllocRejCode);
  65. FIELD_SET(*this, FIX::AllocText);
  66. FIELD_SET(*this, FIX::EncodedAllocTextLen);
  67. FIELD_SET(*this, FIX::EncodedAllocText);
  68. };
  69. };
  70. }
  71. #endif