1 #ifndef FIX44_CROSSORDERCANCELREPLACEREQUEST_H
2 #define FIX44_CROSSORDERCANCELREPLACEREQUEST_H
3 
4 #include "Message.h"
5 
6 namespace FIX44
7 {
8 
9   class CrossOrderCancelReplaceRequest : public Message
10   {
11   public:
CrossOrderCancelReplaceRequest()12     CrossOrderCancelReplaceRequest() : Message(MsgType()) {}
CrossOrderCancelReplaceRequest(const FIX::Message & m)13     CrossOrderCancelReplaceRequest(const FIX::Message& m) : Message(m) {}
CrossOrderCancelReplaceRequest(const Message & m)14     CrossOrderCancelReplaceRequest(const Message& m) : Message(m) {}
CrossOrderCancelReplaceRequest(const CrossOrderCancelReplaceRequest & m)15     CrossOrderCancelReplaceRequest(const CrossOrderCancelReplaceRequest& m) : Message(m) {}
MsgType()16     static FIX::MsgType MsgType() { return FIX::MsgType("t"); }
17 
CrossOrderCancelReplaceRequest(const FIX::CrossID & aCrossID,const FIX::OrigCrossID & aOrigCrossID,const FIX::CrossType & aCrossType,const FIX::CrossPrioritization & aCrossPrioritization,const FIX::TransactTime & aTransactTime,const FIX::OrdType & aOrdType)18     CrossOrderCancelReplaceRequest(
19       const FIX::CrossID& aCrossID,
20       const FIX::OrigCrossID& aOrigCrossID,
21       const FIX::CrossType& aCrossType,
22       const FIX::CrossPrioritization& aCrossPrioritization,
23       const FIX::TransactTime& aTransactTime,
24       const FIX::OrdType& aOrdType )
25     : Message(MsgType())
26     {
27       set(aCrossID);
28       set(aOrigCrossID);
29       set(aCrossType);
30       set(aCrossPrioritization);
31       set(aTransactTime);
32       set(aOrdType);
33     }
34 
35     FIELD_SET(*this, FIX::OrderID);
36     FIELD_SET(*this, FIX::CrossID);
37     FIELD_SET(*this, FIX::OrigCrossID);
38     FIELD_SET(*this, FIX::CrossType);
39     FIELD_SET(*this, FIX::CrossPrioritization);
40     FIELD_SET(*this, FIX::NoSides);
41     class NoSides: public FIX::Group
42     {
43     public:
NoSides()44     NoSides() : FIX::Group(552,54,FIX::message_order(54,11,526,583,453,229,75,1,660,581,589,590,591,70,78,854,38,152,516,468,469,12,13,479,497,528,529,582,121,120,775,58,354,355,77,203,544,635,377,659,0)) {}
45       FIELD_SET(*this, FIX::Side);
46       FIELD_SET(*this, FIX::ClOrdID);
47       FIELD_SET(*this, FIX::SecondaryClOrdID);
48       FIELD_SET(*this, FIX::ClOrdLinkID);
49       FIELD_SET(*this, FIX::NoPartyIDs);
50       class NoPartyIDs: public FIX::Group
51       {
52       public:
NoPartyIDs()53       NoPartyIDs() : FIX::Group(453,448,FIX::message_order(448,447,452,802,0)) {}
54         FIELD_SET(*this, FIX::PartyID);
55         FIELD_SET(*this, FIX::PartyIDSource);
56         FIELD_SET(*this, FIX::PartyRole);
57         FIELD_SET(*this, FIX::NoPartySubIDs);
58         class NoPartySubIDs: public FIX::Group
59         {
60         public:
NoPartySubIDs()61         NoPartySubIDs() : FIX::Group(802,523,FIX::message_order(523,803,0)) {}
62           FIELD_SET(*this, FIX::PartySubID);
63           FIELD_SET(*this, FIX::PartySubIDType);
64         };
65       };
66       FIELD_SET(*this, FIX::TradeOriginationDate);
67       FIELD_SET(*this, FIX::TradeDate);
68       FIELD_SET(*this, FIX::Account);
69       FIELD_SET(*this, FIX::AcctIDSource);
70       FIELD_SET(*this, FIX::AccountType);
71       FIELD_SET(*this, FIX::DayBookingInst);
72       FIELD_SET(*this, FIX::BookingUnit);
73       FIELD_SET(*this, FIX::PreallocMethod);
74       FIELD_SET(*this, FIX::AllocID);
75       FIELD_SET(*this, FIX::NoAllocs);
76       class NoAllocs: public FIX::Group
77       {
78       public:
NoAllocs()79       NoAllocs() : FIX::Group(78,79,FIX::message_order(79,661,736,467,539,80,0)) {}
80         FIELD_SET(*this, FIX::AllocAccount);
81         FIELD_SET(*this, FIX::AllocAcctIDSource);
82         FIELD_SET(*this, FIX::AllocSettlCurrency);
83         FIELD_SET(*this, FIX::IndividualAllocID);
84         FIELD_SET(*this, FIX::NoNestedPartyIDs);
85         class NoNestedPartyIDs: public FIX::Group
86         {
87         public:
NoNestedPartyIDs()88         NoNestedPartyIDs() : FIX::Group(539,524,FIX::message_order(524,525,538,804,0)) {}
89           FIELD_SET(*this, FIX::NestedPartyID);
90           FIELD_SET(*this, FIX::NestedPartyIDSource);
91           FIELD_SET(*this, FIX::NestedPartyRole);
92           FIELD_SET(*this, FIX::NoNestedPartySubIDs);
93           class NoNestedPartySubIDs: public FIX::Group
94           {
95           public:
NoNestedPartySubIDs()96           NoNestedPartySubIDs() : FIX::Group(804,545,FIX::message_order(545,805,0)) {}
97             FIELD_SET(*this, FIX::NestedPartySubID);
98             FIELD_SET(*this, FIX::NestedPartySubIDType);
99           };
100         };
101         FIELD_SET(*this, FIX::AllocQty);
102       };
103       FIELD_SET(*this, FIX::QtyType);
104       FIELD_SET(*this, FIX::OrderQty);
105       FIELD_SET(*this, FIX::CashOrderQty);
106       FIELD_SET(*this, FIX::OrderPercent);
107       FIELD_SET(*this, FIX::RoundingDirection);
108       FIELD_SET(*this, FIX::RoundingModulus);
109       FIELD_SET(*this, FIX::Commission);
110       FIELD_SET(*this, FIX::CommType);
111       FIELD_SET(*this, FIX::CommCurrency);
112       FIELD_SET(*this, FIX::FundRenewWaiv);
113       FIELD_SET(*this, FIX::OrderCapacity);
114       FIELD_SET(*this, FIX::OrderRestrictions);
115       FIELD_SET(*this, FIX::CustOrderCapacity);
116       FIELD_SET(*this, FIX::ForexReq);
117       FIELD_SET(*this, FIX::SettlCurrency);
118       FIELD_SET(*this, FIX::BookingType);
119       FIELD_SET(*this, FIX::Text);
120       FIELD_SET(*this, FIX::EncodedTextLen);
121       FIELD_SET(*this, FIX::EncodedText);
122       FIELD_SET(*this, FIX::PositionEffect);
123       FIELD_SET(*this, FIX::CoveredOrUncovered);
124       FIELD_SET(*this, FIX::CashMargin);
125       FIELD_SET(*this, FIX::ClearingFeeIndicator);
126       FIELD_SET(*this, FIX::SolicitedFlag);
127       FIELD_SET(*this, FIX::SideComplianceID);
128     };
129     FIELD_SET(*this, FIX::Symbol);
130     FIELD_SET(*this, FIX::SymbolSfx);
131     FIELD_SET(*this, FIX::SecurityID);
132     FIELD_SET(*this, FIX::SecurityIDSource);
133     FIELD_SET(*this, FIX::NoSecurityAltID);
134     class NoSecurityAltID: public FIX::Group
135     {
136     public:
NoSecurityAltID()137     NoSecurityAltID() : FIX::Group(454,455,FIX::message_order(455,456,0)) {}
138       FIELD_SET(*this, FIX::SecurityAltID);
139       FIELD_SET(*this, FIX::SecurityAltIDSource);
140     };
141     FIELD_SET(*this, FIX::Product);
142     FIELD_SET(*this, FIX::CFICode);
143     FIELD_SET(*this, FIX::SecurityType);
144     FIELD_SET(*this, FIX::SecuritySubType);
145     FIELD_SET(*this, FIX::MaturityMonthYear);
146     FIELD_SET(*this, FIX::MaturityDate);
147     FIELD_SET(*this, FIX::PutOrCall);
148     FIELD_SET(*this, FIX::CouponPaymentDate);
149     FIELD_SET(*this, FIX::IssueDate);
150     FIELD_SET(*this, FIX::RepoCollateralSecurityType);
151     FIELD_SET(*this, FIX::RepurchaseTerm);
152     FIELD_SET(*this, FIX::RepurchaseRate);
153     FIELD_SET(*this, FIX::Factor);
154     FIELD_SET(*this, FIX::CreditRating);
155     FIELD_SET(*this, FIX::InstrRegistry);
156     FIELD_SET(*this, FIX::CountryOfIssue);
157     FIELD_SET(*this, FIX::StateOrProvinceOfIssue);
158     FIELD_SET(*this, FIX::LocaleOfIssue);
159     FIELD_SET(*this, FIX::RedemptionDate);
160     FIELD_SET(*this, FIX::StrikePrice);
161     FIELD_SET(*this, FIX::StrikeCurrency);
162     FIELD_SET(*this, FIX::OptAttribute);
163     FIELD_SET(*this, FIX::ContractMultiplier);
164     FIELD_SET(*this, FIX::CouponRate);
165     FIELD_SET(*this, FIX::SecurityExchange);
166     FIELD_SET(*this, FIX::Issuer);
167     FIELD_SET(*this, FIX::EncodedIssuerLen);
168     FIELD_SET(*this, FIX::EncodedIssuer);
169     FIELD_SET(*this, FIX::SecurityDesc);
170     FIELD_SET(*this, FIX::EncodedSecurityDescLen);
171     FIELD_SET(*this, FIX::EncodedSecurityDesc);
172     FIELD_SET(*this, FIX::Pool);
173     FIELD_SET(*this, FIX::ContractSettlMonth);
174     FIELD_SET(*this, FIX::CPProgram);
175     FIELD_SET(*this, FIX::CPRegType);
176     FIELD_SET(*this, FIX::NoEvents);
177     class NoEvents: public FIX::Group
178     {
179     public:
NoEvents()180     NoEvents() : FIX::Group(864,865,FIX::message_order(865,866,867,868,0)) {}
181       FIELD_SET(*this, FIX::EventType);
182       FIELD_SET(*this, FIX::EventDate);
183       FIELD_SET(*this, FIX::EventPx);
184       FIELD_SET(*this, FIX::EventText);
185     };
186     FIELD_SET(*this, FIX::DatedDate);
187     FIELD_SET(*this, FIX::InterestAccrualDate);
188     FIELD_SET(*this, FIX::NoUnderlyings);
189     class NoUnderlyings: public FIX::Group
190     {
191     public:
NoUnderlyings()192     NoUnderlyings() : FIX::Group(711,311,FIX::message_order(311,312,309,305,462,463,310,763,313,542,315,241,242,243,244,245,246,256,595,592,593,594,247,316,941,317,436,435,308,306,362,363,307,364,365,877,878,318,879,810,882,883,884,885,886,0)) {}
193       FIELD_SET(*this, FIX::UnderlyingSymbol);
194       FIELD_SET(*this, FIX::UnderlyingSymbolSfx);
195       FIELD_SET(*this, FIX::UnderlyingSecurityID);
196       FIELD_SET(*this, FIX::UnderlyingSecurityIDSource);
197       FIELD_SET(*this, FIX::NoUnderlyingSecurityAltID);
198       class NoUnderlyingSecurityAltID: public FIX::Group
199       {
200       public:
NoUnderlyingSecurityAltID()201       NoUnderlyingSecurityAltID() : FIX::Group(457,458,FIX::message_order(458,459,0)) {}
202         FIELD_SET(*this, FIX::UnderlyingSecurityAltID);
203         FIELD_SET(*this, FIX::UnderlyingSecurityAltIDSource);
204       };
205       FIELD_SET(*this, FIX::UnderlyingProduct);
206       FIELD_SET(*this, FIX::UnderlyingCFICode);
207       FIELD_SET(*this, FIX::UnderlyingSecurityType);
208       FIELD_SET(*this, FIX::UnderlyingSecuritySubType);
209       FIELD_SET(*this, FIX::UnderlyingMaturityMonthYear);
210       FIELD_SET(*this, FIX::UnderlyingMaturityDate);
211       FIELD_SET(*this, FIX::UnderlyingPutOrCall);
212       FIELD_SET(*this, FIX::UnderlyingCouponPaymentDate);
213       FIELD_SET(*this, FIX::UnderlyingIssueDate);
214       FIELD_SET(*this, FIX::UnderlyingRepoCollateralSecurityType);
215       FIELD_SET(*this, FIX::UnderlyingRepurchaseTerm);
216       FIELD_SET(*this, FIX::UnderlyingRepurchaseRate);
217       FIELD_SET(*this, FIX::UnderlyingFactor);
218       FIELD_SET(*this, FIX::UnderlyingCreditRating);
219       FIELD_SET(*this, FIX::UnderlyingInstrRegistry);
220       FIELD_SET(*this, FIX::UnderlyingCountryOfIssue);
221       FIELD_SET(*this, FIX::UnderlyingStateOrProvinceOfIssue);
222       FIELD_SET(*this, FIX::UnderlyingLocaleOfIssue);
223       FIELD_SET(*this, FIX::UnderlyingRedemptionDate);
224       FIELD_SET(*this, FIX::UnderlyingStrikePrice);
225       FIELD_SET(*this, FIX::UnderlyingStrikeCurrency);
226       FIELD_SET(*this, FIX::UnderlyingOptAttribute);
227       FIELD_SET(*this, FIX::UnderlyingContractMultiplier);
228       FIELD_SET(*this, FIX::UnderlyingCouponRate);
229       FIELD_SET(*this, FIX::UnderlyingSecurityExchange);
230       FIELD_SET(*this, FIX::UnderlyingIssuer);
231       FIELD_SET(*this, FIX::EncodedUnderlyingIssuerLen);
232       FIELD_SET(*this, FIX::EncodedUnderlyingIssuer);
233       FIELD_SET(*this, FIX::UnderlyingSecurityDesc);
234       FIELD_SET(*this, FIX::EncodedUnderlyingSecurityDescLen);
235       FIELD_SET(*this, FIX::EncodedUnderlyingSecurityDesc);
236       FIELD_SET(*this, FIX::UnderlyingCPProgram);
237       FIELD_SET(*this, FIX::UnderlyingCPRegType);
238       FIELD_SET(*this, FIX::UnderlyingCurrency);
239       FIELD_SET(*this, FIX::UnderlyingQty);
240       FIELD_SET(*this, FIX::UnderlyingPx);
241       FIELD_SET(*this, FIX::UnderlyingDirtyPrice);
242       FIELD_SET(*this, FIX::UnderlyingEndPrice);
243       FIELD_SET(*this, FIX::UnderlyingStartValue);
244       FIELD_SET(*this, FIX::UnderlyingCurrentValue);
245       FIELD_SET(*this, FIX::UnderlyingEndValue);
246       FIELD_SET(*this, FIX::NoUnderlyingStips);
247       class NoUnderlyingStips: public FIX::Group
248       {
249       public:
NoUnderlyingStips()250       NoUnderlyingStips() : FIX::Group(887,888,FIX::message_order(888,889,0)) {}
251         FIELD_SET(*this, FIX::UnderlyingStipType);
252         FIELD_SET(*this, FIX::UnderlyingStipValue);
253       };
254     };
255     FIELD_SET(*this, FIX::NoLegs);
256     class NoLegs: public FIX::Group
257     {
258     public:
NoLegs()259     NoLegs() : FIX::Group(555,600,FIX::message_order(600,601,602,603,607,608,609,764,610,611,248,249,250,251,252,253,257,599,596,597,598,254,612,942,613,614,615,616,617,618,619,620,621,622,623,624,556,740,739,955,956,0)) {}
260       FIELD_SET(*this, FIX::LegSymbol);
261       FIELD_SET(*this, FIX::LegSymbolSfx);
262       FIELD_SET(*this, FIX::LegSecurityID);
263       FIELD_SET(*this, FIX::LegSecurityIDSource);
264       FIELD_SET(*this, FIX::NoLegSecurityAltID);
265       class NoLegSecurityAltID: public FIX::Group
266       {
267       public:
NoLegSecurityAltID()268       NoLegSecurityAltID() : FIX::Group(604,605,FIX::message_order(605,606,0)) {}
269         FIELD_SET(*this, FIX::LegSecurityAltID);
270         FIELD_SET(*this, FIX::LegSecurityAltIDSource);
271       };
272       FIELD_SET(*this, FIX::LegProduct);
273       FIELD_SET(*this, FIX::LegCFICode);
274       FIELD_SET(*this, FIX::LegSecurityType);
275       FIELD_SET(*this, FIX::LegSecuritySubType);
276       FIELD_SET(*this, FIX::LegMaturityMonthYear);
277       FIELD_SET(*this, FIX::LegMaturityDate);
278       FIELD_SET(*this, FIX::LegCouponPaymentDate);
279       FIELD_SET(*this, FIX::LegIssueDate);
280       FIELD_SET(*this, FIX::LegRepoCollateralSecurityType);
281       FIELD_SET(*this, FIX::LegRepurchaseTerm);
282       FIELD_SET(*this, FIX::LegRepurchaseRate);
283       FIELD_SET(*this, FIX::LegFactor);
284       FIELD_SET(*this, FIX::LegCreditRating);
285       FIELD_SET(*this, FIX::LegInstrRegistry);
286       FIELD_SET(*this, FIX::LegCountryOfIssue);
287       FIELD_SET(*this, FIX::LegStateOrProvinceOfIssue);
288       FIELD_SET(*this, FIX::LegLocaleOfIssue);
289       FIELD_SET(*this, FIX::LegRedemptionDate);
290       FIELD_SET(*this, FIX::LegStrikePrice);
291       FIELD_SET(*this, FIX::LegStrikeCurrency);
292       FIELD_SET(*this, FIX::LegOptAttribute);
293       FIELD_SET(*this, FIX::LegContractMultiplier);
294       FIELD_SET(*this, FIX::LegCouponRate);
295       FIELD_SET(*this, FIX::LegSecurityExchange);
296       FIELD_SET(*this, FIX::LegIssuer);
297       FIELD_SET(*this, FIX::EncodedLegIssuerLen);
298       FIELD_SET(*this, FIX::EncodedLegIssuer);
299       FIELD_SET(*this, FIX::LegSecurityDesc);
300       FIELD_SET(*this, FIX::EncodedLegSecurityDescLen);
301       FIELD_SET(*this, FIX::EncodedLegSecurityDesc);
302       FIELD_SET(*this, FIX::LegRatioQty);
303       FIELD_SET(*this, FIX::LegSide);
304       FIELD_SET(*this, FIX::LegCurrency);
305       FIELD_SET(*this, FIX::LegPool);
306       FIELD_SET(*this, FIX::LegDatedDate);
307       FIELD_SET(*this, FIX::LegContractSettlMonth);
308       FIELD_SET(*this, FIX::LegInterestAccrualDate);
309     };
310     FIELD_SET(*this, FIX::SettlType);
311     FIELD_SET(*this, FIX::SettlDate);
312     FIELD_SET(*this, FIX::HandlInst);
313     FIELD_SET(*this, FIX::ExecInst);
314     FIELD_SET(*this, FIX::MinQty);
315     FIELD_SET(*this, FIX::MaxFloor);
316     FIELD_SET(*this, FIX::ExDestination);
317     FIELD_SET(*this, FIX::NoTradingSessions);
318     class NoTradingSessions: public FIX::Group
319     {
320     public:
NoTradingSessions()321     NoTradingSessions() : FIX::Group(386,336,FIX::message_order(336,625,0)) {}
322       FIELD_SET(*this, FIX::TradingSessionID);
323       FIELD_SET(*this, FIX::TradingSessionSubID);
324     };
325     FIELD_SET(*this, FIX::ProcessCode);
326     FIELD_SET(*this, FIX::PrevClosePx);
327     FIELD_SET(*this, FIX::LocateReqd);
328     FIELD_SET(*this, FIX::TransactTime);
329     FIELD_SET(*this, FIX::NoStipulations);
330     class NoStipulations: public FIX::Group
331     {
332     public:
NoStipulations()333     NoStipulations() : FIX::Group(232,233,FIX::message_order(233,234,0)) {}
334       FIELD_SET(*this, FIX::StipulationType);
335       FIELD_SET(*this, FIX::StipulationValue);
336     };
337     FIELD_SET(*this, FIX::OrdType);
338     FIELD_SET(*this, FIX::PriceType);
339     FIELD_SET(*this, FIX::Price);
340     FIELD_SET(*this, FIX::StopPx);
341     FIELD_SET(*this, FIX::Spread);
342     FIELD_SET(*this, FIX::BenchmarkCurveCurrency);
343     FIELD_SET(*this, FIX::BenchmarkCurveName);
344     FIELD_SET(*this, FIX::BenchmarkCurvePoint);
345     FIELD_SET(*this, FIX::BenchmarkPrice);
346     FIELD_SET(*this, FIX::BenchmarkPriceType);
347     FIELD_SET(*this, FIX::BenchmarkSecurityID);
348     FIELD_SET(*this, FIX::BenchmarkSecurityIDSource);
349     FIELD_SET(*this, FIX::YieldType);
350     FIELD_SET(*this, FIX::Yield);
351     FIELD_SET(*this, FIX::YieldCalcDate);
352     FIELD_SET(*this, FIX::YieldRedemptionDate);
353     FIELD_SET(*this, FIX::YieldRedemptionPrice);
354     FIELD_SET(*this, FIX::YieldRedemptionPriceType);
355     FIELD_SET(*this, FIX::Currency);
356     FIELD_SET(*this, FIX::ComplianceID);
357     FIELD_SET(*this, FIX::IOIID);
358     FIELD_SET(*this, FIX::QuoteID);
359     FIELD_SET(*this, FIX::TimeInForce);
360     FIELD_SET(*this, FIX::EffectiveTime);
361     FIELD_SET(*this, FIX::ExpireDate);
362     FIELD_SET(*this, FIX::ExpireTime);
363     FIELD_SET(*this, FIX::GTBookingInst);
364     FIELD_SET(*this, FIX::MaxShow);
365     FIELD_SET(*this, FIX::PegOffsetValue);
366     FIELD_SET(*this, FIX::PegMoveType);
367     FIELD_SET(*this, FIX::PegOffsetType);
368     FIELD_SET(*this, FIX::PegLimitType);
369     FIELD_SET(*this, FIX::PegRoundDirection);
370     FIELD_SET(*this, FIX::PegScope);
371     FIELD_SET(*this, FIX::DiscretionInst);
372     FIELD_SET(*this, FIX::DiscretionOffsetValue);
373     FIELD_SET(*this, FIX::DiscretionMoveType);
374     FIELD_SET(*this, FIX::DiscretionOffsetType);
375     FIELD_SET(*this, FIX::DiscretionLimitType);
376     FIELD_SET(*this, FIX::DiscretionRoundDirection);
377     FIELD_SET(*this, FIX::DiscretionScope);
378     FIELD_SET(*this, FIX::TargetStrategy);
379     FIELD_SET(*this, FIX::TargetStrategyParameters);
380     FIELD_SET(*this, FIX::ParticipationRate);
381     FIELD_SET(*this, FIX::CancellationRights);
382     FIELD_SET(*this, FIX::MoneyLaunderingStatus);
383     FIELD_SET(*this, FIX::RegistID);
384     FIELD_SET(*this, FIX::Designation);
385   };
386 
387 }
388 
389 #endif
390