fix8  version 1.4.0
Open Source C++ FIX Framework
Perf_types.cpp
Go to the documentation of this file.
1 //-------------------------------------------------------------------------------------------------
2 // *** f8c generated file: DO NOT EDIT! Created: 2016-09-16 11:50:22 ***
3 //-------------------------------------------------------------------------------------------------
4 /*
5 
6 Fix8 is released under the GNU LESSER GENERAL PUBLIC LICENSE Version 3.
7 
8 Fix8 Open Source FIX Engine.
9 Copyright (C) 2010-16 David L. Dight <fix@fix8.org>
10 
11 Fix8 is free software: you can redistribute it and / or modify it under the terms of the
12 GNU Lesser General Public License as published by the Free Software Foundation, either
13 version 3 of the License, or (at your option) any later version.
14 
15 Fix8 is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without
16 even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
17 
18 You should have received a copy of the GNU Lesser General Public License along with Fix8.
19 If not, see <http://www.gnu.org/licenses/>.
20 
21 *******************************************************************************************
22 * Special note for Fix8 compiler generated source code *
23 * *
24 * Binary works that are the results of compilation of code that is generated by the Fix8 *
25 * compiler can be released without releasing your source code as long as your binary *
26 * links dynamically against an unmodified version of the Fix8 library. You are however *
27 * required to leave the copyright text in the generated code. *
28 * *
29 *******************************************************************************************
30 
31 BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO
32 THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE
33 COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY
34 KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
35 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO
36 THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE,
37 YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
38 
39 IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT
40 HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED
41 ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
42 CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT
43 NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR
44 THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH
45 HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
46 
47 */
48 
49 //-------------------------------------------------------------------------------------------------
50 #include <fix8/f8config.h>
51 #if defined FIX8_MAGIC_NUM && FIX8_MAGIC_NUM > 16793600L
52 #error Perf_types.cpp version 1.4.0 is out of date. Please regenerate with f8c.
53 #endif
54 //-------------------------------------------------------------------------------------------------
55 // Perf_types.cpp
56 //-------------------------------------------------------------------------------------------------
57 #include <iostream>
58 #include <fstream>
59 #include <iomanip>
60 #include <sstream>
61 #include <vector>
62 #include <map>
63 #include <list>
64 #include <set>
65 #include <iterator>
66 #include <algorithm>
67 #include <cerrno>
68 #include <string.h>
69 // f8 includes
70 #include <fix8/f8exception.hpp>
71 #include <fix8/hypersleep.hpp>
72 #include <fix8/mpmc.hpp>
73 #include <fix8/thread.hpp>
74 #include <fix8/f8types.hpp>
75 #include <fix8/f8utils.hpp>
76 #include <fix8/tickval.hpp>
77 #include <fix8/logger.hpp>
78 #include <fix8/traits.hpp>
79 #include <fix8/field.hpp>
80 #include <fix8/message.hpp>
81 #include "Perf_types.hpp"
82 //-------------------------------------------------------------------------------------------------
83 namespace FIX8 {
84 namespace TEX {
85 
86 namespace {
87 
88 //-------------------------------------------------------------------------------------------------
89 const f8String ExecInst_realm[]
90  { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", "E", "F", "G", "I", "L", "M", "N", "O", "P", "R", "S", "T", "U", "V", "W" };
91 const char *ExecInst_descriptions[]
92  { "STAY_ON_OFFERSIDE", "NOT_HELD", "WORK", "GO_ALONG", "OVER_THE_DAY", "HELD", "PARTICIPATE_DONT_INITIATE", "STRICT_SCALE", "TRY_TO_SCALE", "STAY_ON_BIDSIDE", "NO_CROSS", "OK_TO_CROSS", "CALL_FIRST", "PERCENT_OF_VOLUME", "DO_NOT_INCREASE", "DO_NOT_REDUCE", "ALL_OR_NONE", "INSTITUTIONS_ONLY", "LAST_PEG", "MID_PRICE_PEG", "NON_NEGOTIABLE", "OPENING_PEG", "MARKET_PEG", "PRIMARY_PEG", "SUSPEND", "FIXED_PEG_TO_LOCAL_BEST_BID_OR_OFFER_AT_TIME_OF_ORDER", "CUSTOMER_DISPLAY_INSTRUCTION", "NETTING", "PEG_TO_VWAP" };
93 const char ExecTransType_realm[]
94  { '0', '1', '2', '3' };
95 const char *ExecTransType_descriptions[]
96  { "NEW", "CANCEL", "CORRECT", "STATUS" };
97 const char HandlInst_realm[]
98  { '1', '2', '3' };
99 const char *HandlInst_descriptions[]
100  { "AUTOMATED_EXECUTION_ORDER_PRIVATE_NO_BROKER_INTERVENTION", "AUTOMATED_EXECUTION_ORDER_PUBLIC_BROKER_INTERVENTION_OK", "MANUAL_ORDER_BEST_EXECUTION" };
101 const f8String IDSource_realm[]
102  { "1", "2", "3", "4", "5", "6", "7", "8", "9" };
103 const char *IDSource_descriptions[]
104  { "CUSIP", "SEDOL", "QUIK", "ISIN_NUMBER", "RIC_CODE", "ISO_CURRENCY_CODE", "ISO_COUNTRY_CODE", "EXCHANGE_SYMBOL", "CONSOLIDATED_TAPE_ASSOCIATION" };
105 const char LastCapacity_realm[]
106  { '1', '2', '3', '4' };
107 const char *LastCapacity_descriptions[]
108  { "AGENT", "CROSS_AS_AGENT", "CROSS_AS_PRINCIPAL", "PRINCIPAL" };
109 const f8String MsgType_realm[]
110  { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", "E", "F", "G", "H", "J", "K", "L", "M", "N", "P", "Q", "R", "S", "T", "V", "W", "X", "Y", "Z", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m" };
111 const char *MsgType_descriptions[]
112  { "HEARTBEAT", "TEST_REQUEST", "RESEND_REQUEST", "REJECT", "SEQUENCE_RESET", "LOGOUT", "INDICATION_OF_INTEREST", "ADVERTISEMENT", "EXECUTION_REPORT", "ORDER_CANCEL_REJECT", "LOGON", "NEWS", "EMAIL", "ORDER_SINGLE", "ORDER_LIST", "ORDER_CANCEL_REQUEST", "ORDER_CANCEL_REPLACE_REQUEST", "ORDER_STATUS_REQUEST", "ALLOCATION", "LIST_CANCEL_REQUEST", "LIST_EXECUTE", "LIST_STATUS_REQUEST", "LIST_STATUS", "ALLOCATION_ACK", "DONT_KNOW_TRADE", "QUOTE_REQUEST", "QUOTE", "SETTLEMENT_INSTRUCTIONS", "MARKET_DATA_REQUEST", "MARKET_DATA_SNAPSHOT_FULL_REFRESH", "MARKET_DATA_INCREMENTAL_REFRESH", "MARKET_DATA_REQUEST_REJECT", "QUOTE_CANCEL", "QUOTE_STATUS_REQUEST", "QUOTE_ACKNOWLEDGEMENT", "SECURITY_DEFINITION_REQUEST", "SECURITY_DEFINITION", "SECURITY_STATUS_REQUEST", "SECURITY_STATUS", "TRADING_SESSION_STATUS_REQUEST", "TRADING_SESSION_STATUS", "MASS_QUOTE", "BUSINESS_MESSAGE_REJECT", "BID_REQUEST", "BID_RESPONSE", "LIST_STRIKE_PRICE" };
113 const char OrdStatus_realm[]
114  { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E' };
115 const char *OrdStatus_descriptions[]
116  { "NEW", "PARTIALLY_FILLED", "FILLED", "DONE_FOR_DAY", "CANCELED", "REPLACED", "PENDING_CANCEL", "STOPPED", "REJECTED", "SUSPENDED", "PENDING_NEW", "CALCULATED", "EXPIRED", "ACCEPTED_FOR_BIDDING", "PENDING_REPLACE" };
117 const char OrdType_realm[]
118  { '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'P' };
119 const char *OrdType_descriptions[]
120  { "MARKET", "LIMIT", "STOP", "STOP_LIMIT", "MARKET_ON_CLOSE", "WITH_OR_WITHOUT", "LIMIT_OR_BETTER", "LIMIT_WITH_OR_WITHOUT", "ON_BASIS", "ON_CLOSE", "LIMIT_ON_CLOSE", "FOREX_C", "PREVIOUSLY_QUOTED", "PREVIOUSLY_INDICATED", "FOREX_F", "FOREX_G", "FOREX_H", "FUNARI", "PEGGED" };
121 const char PossDupFlag_realm[]
122  { 'N', 'Y' };
123 const char *PossDupFlag_descriptions[]
124  { "NO", "YES" };
125 const char Side_realm[]
126  { '1', '2', '3', '4', '5', '6', '7', '8', '9' };
127 const char *Side_descriptions[]
128  { "BUY", "SELL", "BUY_MINUS", "SELL_PLUS", "SELL_SHORT", "SELL_SHORT_EXEMPT", "UNDISCLOSED", "CROSS", "CROSS_SHORT" };
129 const char TimeInForce_realm[]
130  { '0', '1', '2', '3', '4', '5', '6' };
131 const char *TimeInForce_descriptions[]
132  { "DAY", "GOOD_TILL_CANCEL", "AT_THE_OPENING", "IMMEDIATE_OR_CANCEL", "FILL_OR_KILL", "GOOD_TILL_CROSSING", "GOOD_TILL_DATE" };
133 const char SettlmntTyp_realm[]
134  { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' };
135 const char *SettlmntTyp_descriptions[]
136  { "REGULAR", "CASH", "NEXT_DAY", "T_PLUS_2", "T_PLUS_3", "T_PLUS_4", "FUTURE", "WHEN_ISSUED", "SELLERS_OPTION", "T_PLUS_5" };
137 const char OpenClose_realm[]
138  { 'C', 'O' };
139 const char *OpenClose_descriptions[]
140  { "CLOSE", "OPEN" };
141 const char ProcessCode_realm[]
142  { '0', '1', '2', '3', '4', '5', '6' };
143 const char *ProcessCode_descriptions[]
144  { "REGULAR", "SOFT_DOLLAR", "STEP_IN", "STEP_OUT", "SOFT_DOLLAR_STEP_IN", "SOFT_DOLLAR_STEP_OUT", "PLAN_SPONSOR" };
145 const char PossResend_realm[]
146  { 'N', 'Y' };
147 const char *PossResend_descriptions[]
148  { "NO", "YES" };
149 const int EncryptMethod_realm[]
150  { 0, 1, 2, 3, 4, 5, 6 };
151 const char *EncryptMethod_descriptions[]
152  { "NONE", "PKCS", "DES", "PKCS_DES", "PGP_DES", "PGP_DES_MD5", "PEM_DES_MD5" };
153 const int OrdRejReason_realm[]
154  { 0, 1, 2, 3, 4, 5, 6, 7, 8 };
155 const char *OrdRejReason_descriptions[]
156  { "BROKER_OPTION", "UNKNOWN_SYMBOL", "EXCHANGE_CLOSED", "ORDER_EXCEEDS_LIMIT", "TOO_LATE_TO_ENTER", "UNKNOWN_ORDER", "DUPLICATE_ORDER", "DUPLICATE_OF_A_VERBALLY_COMMUNICATED_ORDER", "STALE_ORDER" };
157 const char ReportToExch_realm[]
158  { 'N', 'Y' };
159 const char *ReportToExch_descriptions[]
160  { "NO", "YES" };
161 const char LocateReqd_realm[]
162  { 'N', 'Y' };
163 const char *LocateReqd_descriptions[]
164  { "NO", "YES" };
165 const char GapFillFlag_realm[]
166  { 'N', 'Y' };
167 const char *GapFillFlag_descriptions[]
168  { "NO", "YES" };
169 const char ResetSeqNumFlag_realm[]
170  { 'N', 'Y' };
171 const char *ResetSeqNumFlag_descriptions[]
172  { "NO", "YES" };
173 const char ExecType_realm[]
174  { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E' };
175 const char *ExecType_descriptions[]
176  { "NEW", "PARTIAL_FILL", "FILL", "DONE_FOR_DAY", "CANCELED", "REPLACE", "PENDING_CANCEL", "STOPPED", "REJECTED", "SUSPENDED", "PENDING_NEW", "CALCULATED", "EXPIRED", "RESTATED", "PENDING_REPLACE" };
177 const f8String SecurityType_realm[]
178  { "?", "BA", "CB", "CD", "CMO", "CORP", "CP", "CPP", "CS", "FHA", "FHL", "FN", "FOR", "FUT", "GN", "GOVT", "IET", "MF", "MIO", "MPO", "MPP", "MPT", "MUNI", "NONE", "OPT", "PS", "RP", "RVRP", "SL", "TD", "USTB", "WAR", "ZOO" };
179 const char *SecurityType_descriptions[]
180  { "WILDCARD_ENTRY", "BANKERS_ACCEPTANCE", "CONVERTIBLE_BOND", "CERTIFICATE_OF_DEPOSIT", "COLLATERALIZE_MORTGAGE_OBLIGATION", "CORPORATE_BOND", "COMMERCIAL_PAPER", "CORPORATE_PRIVATE_PLACEMENT", "COMMON_STOCK", "FEDERAL_HOUSING_AUTHORITY", "FEDERAL_HOME_LOAN", "FEDERAL_NATIONAL_MORTGAGE_ASSOCIATION", "FOREIGN_EXCHANGE_CONTRACT", "FUTURE", "GOVERNMENT_NATIONAL_MORTGAGE_ASSOCIATION", "TREASURIES_PLUS_AGENCY_DEBENTURE", "MORTGAGE_IOETTE", "MUTUAL_FUND", "MORTGAGE_INTEREST_ONLY", "MORTGAGE_PRINCIPAL_ONLY", "MORTGAGE_PRIVATE_PLACEMENT", "MISCELLANEOUS_PASS_THRU", "MUNICIPAL_BOND", "NO_ISITC_SECURITY_TYPE", "OPTION", "PREFERRED_STOCK", "REPURCHASE_AGREEMENT", "REVERSE_REPURCHASE_AGREEMENT", "STUDENT_LOAN_MARKETING_ASSOCIATION", "TIME_DEPOSIT", "US_TREASURY_BILL", "WARRANT", "CATS_TIGERS_LIONS" };
181 const int PutOrCall_realm[]
182  { 0, 1 };
183 const char *PutOrCall_descriptions[]
184  { "PUT", "CALL" };
185 const int CustomerOrFirm_realm[]
186  { 0, 1 };
187 const char *CustomerOrFirm_descriptions[]
188  { "CUSTOMER", "FIRM" };
189 const int SessionRejectReason_realm[]
190  { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 };
191 const char *SessionRejectReason_descriptions[]
192  { "INVALID_TAG_NUMBER", "REQUIRED_TAG_MISSING", "TAG_NOT_DEFINED_FOR_THIS_MESSAGE_TYPE", "UNDEFINED_TAG", "TAG_SPECIFIED_WITHOUT_A_VALUE", "VALUE_IS_INCORRECT", "INCORRECT_DATA_FORMAT_FOR_VALUE", "DECRYPTION_PROBLEM", "SIGNATURE_PROBLEM", "COMPID_PROBLEM", "SENDINGTIME_ACCURACY_PROBLEM", "INVALID_MSGTYPE" };
193 const int ExecRestatementReason_realm[]
194  { 0, 1, 2, 3, 4, 5 };
195 const char *ExecRestatementReason_descriptions[]
196  { "GT_CORPORATE_ACTION", "GT_RENEWAL", "VERBAL_CHANGE", "REPRICING_OF_ORDER", "BROKER_OPTION", "PARTIAL_DECLINE_OF_ORDERQTY" };
197 const char MsgDirection_realm[]
198  { 'R', 'S' };
199 const char *MsgDirection_descriptions[]
200  { "RECEIVE", "SEND" };
201 
202 //-------------------------------------------------------------------------------------------------
203 const RealmBase realmbases[]
204 {
205  { reinterpret_cast<const void *>(ExecInst_realm), RealmBase::dt_set, FieldTrait::ft_MultipleStringValue, 29, ExecInst_descriptions },
206  { reinterpret_cast<const void *>(ExecTransType_realm), RealmBase::dt_set, FieldTrait::ft_char, 4, ExecTransType_descriptions },
207  { reinterpret_cast<const void *>(HandlInst_realm), RealmBase::dt_set, FieldTrait::ft_char, 3, HandlInst_descriptions },
208  { reinterpret_cast<const void *>(IDSource_realm), RealmBase::dt_set, FieldTrait::ft_string, 9, IDSource_descriptions },
209  { reinterpret_cast<const void *>(LastCapacity_realm), RealmBase::dt_set, FieldTrait::ft_char, 4, LastCapacity_descriptions },
210  { reinterpret_cast<const void *>(MsgType_realm), RealmBase::dt_set, FieldTrait::ft_string, 46, MsgType_descriptions },
211  { reinterpret_cast<const void *>(OrdStatus_realm), RealmBase::dt_set, FieldTrait::ft_char, 15, OrdStatus_descriptions },
212  { reinterpret_cast<const void *>(OrdType_realm), RealmBase::dt_set, FieldTrait::ft_char, 19, OrdType_descriptions },
213  { reinterpret_cast<const void *>(PossDupFlag_realm), RealmBase::dt_set, FieldTrait::ft_Boolean, 2, PossDupFlag_descriptions },
214  { reinterpret_cast<const void *>(Side_realm), RealmBase::dt_set, FieldTrait::ft_char, 9, Side_descriptions },
215  { reinterpret_cast<const void *>(TimeInForce_realm), RealmBase::dt_set, FieldTrait::ft_char, 7, TimeInForce_descriptions },
216  { reinterpret_cast<const void *>(SettlmntTyp_realm), RealmBase::dt_set, FieldTrait::ft_char, 10, SettlmntTyp_descriptions },
217  { reinterpret_cast<const void *>(OpenClose_realm), RealmBase::dt_set, FieldTrait::ft_char, 2, OpenClose_descriptions },
218  { reinterpret_cast<const void *>(ProcessCode_realm), RealmBase::dt_set, FieldTrait::ft_char, 7, ProcessCode_descriptions },
219  { reinterpret_cast<const void *>(PossResend_realm), RealmBase::dt_set, FieldTrait::ft_Boolean, 2, PossResend_descriptions },
220  { reinterpret_cast<const void *>(EncryptMethod_realm), RealmBase::dt_set, FieldTrait::ft_int, 7, EncryptMethod_descriptions },
221  { reinterpret_cast<const void *>(OrdRejReason_realm), RealmBase::dt_set, FieldTrait::ft_int, 9, OrdRejReason_descriptions },
222  { reinterpret_cast<const void *>(ReportToExch_realm), RealmBase::dt_set, FieldTrait::ft_Boolean, 2, ReportToExch_descriptions },
223  { reinterpret_cast<const void *>(LocateReqd_realm), RealmBase::dt_set, FieldTrait::ft_Boolean, 2, LocateReqd_descriptions },
224  { reinterpret_cast<const void *>(GapFillFlag_realm), RealmBase::dt_set, FieldTrait::ft_Boolean, 2, GapFillFlag_descriptions },
225  { reinterpret_cast<const void *>(ResetSeqNumFlag_realm), RealmBase::dt_set, FieldTrait::ft_Boolean, 2, ResetSeqNumFlag_descriptions },
226  { reinterpret_cast<const void *>(ExecType_realm), RealmBase::dt_set, FieldTrait::ft_char, 15, ExecType_descriptions },
227  { reinterpret_cast<const void *>(SecurityType_realm), RealmBase::dt_set, FieldTrait::ft_string, 33, SecurityType_descriptions },
228  { reinterpret_cast<const void *>(PutOrCall_realm), RealmBase::dt_set, FieldTrait::ft_int, 2, PutOrCall_descriptions },
229  { reinterpret_cast<const void *>(CustomerOrFirm_realm), RealmBase::dt_set, FieldTrait::ft_int, 2, CustomerOrFirm_descriptions },
230  { reinterpret_cast<const void *>(SessionRejectReason_realm), RealmBase::dt_set, FieldTrait::ft_int, 12, SessionRejectReason_descriptions },
231  { reinterpret_cast<const void *>(ExecRestatementReason_realm), RealmBase::dt_set, FieldTrait::ft_int, 6, ExecRestatementReason_descriptions },
232  { reinterpret_cast<const void *>(MsgDirection_realm), RealmBase::dt_set, FieldTrait::ft_char, 2, MsgDirection_descriptions },
233 };
234 
235 //-------------------------------------------------------------------------------------------------
236 
237 } // namespace
238 
239 //-------------------------------------------------------------------------------------------------
240 extern const Perf_BaseEntry::Pair fldpairs[];
241 const Perf_BaseEntry::Pair fldpairs[]
242 {
243  { 1, { Type2Type<TEX::Account>(), "Account", 1 } },
244  { 6, { Type2Type<TEX::AvgPx>(), "AvgPx", 6 } },
245  { 7, { Type2Type<TEX::BeginSeqNo>(), "BeginSeqNo", 7 } },
246  { 8, { Type2Type<TEX::BeginString>(), "BeginString", 8 } },
247  { 9, { Type2Type<TEX::BodyLength>(), "BodyLength", 9 } },
248  { 10, { Type2Type<TEX::CheckSum>(), "CheckSum", 10 } },
249  { 11, { Type2Type<TEX::ClOrdID>(), "ClOrdID", 11 } },
250  { 12, { Type2Type<TEX::Commission>(), "Commission", 12 } },
251  { 14, { Type2Type<TEX::CumQty>(), "CumQty", 14 } },
252  { 15, { Type2Type<TEX::Currency>(), "Currency", 15 } },
253  { 16, { Type2Type<TEX::EndSeqNo>(), "EndSeqNo", 16 } },
254  { 17, { Type2Type<TEX::ExecID>(), "ExecID", 17 } },
255  { 18, { Type2Type<TEX::ExecInst>(), "ExecInst", 18, &TEX::realmbases[0] } },
256  { 19, { Type2Type<TEX::ExecRefID>(), "ExecRefID", 19 } },
257  { 20, { Type2Type<TEX::ExecTransType>(), "ExecTransType", 20, &TEX::realmbases[1] } },
258  { 21, { Type2Type<TEX::HandlInst>(), "HandlInst", 21, &TEX::realmbases[2] } },
259  { 22, { Type2Type<TEX::IDSource>(), "IDSource", 22, &TEX::realmbases[3] } },
260  { 29, { Type2Type<TEX::LastCapacity>(), "LastCapacity", 29, &TEX::realmbases[4],
261  "Last capacity" } },
262  { 30, { Type2Type<TEX::LastMkt>(), "LastMkt", 30 } },
263  { 31, { Type2Type<TEX::LastPx>(), "LastPx", 31, nullptr,
264  "Last price" } },
265  { 32, { Type2Type<TEX::LastShares>(), "LastShares", 32 } },
266  { 34, { Type2Type<TEX::MsgSeqNum>(), "MsgSeqNum", 34 } },
267  { 35, { Type2Type<TEX::MsgType>(), "MsgType", 35, &TEX::realmbases[5] } },
268  { 36, { Type2Type<TEX::NewSeqNo>(), "NewSeqNo", 36 } },
269  { 37, { Type2Type<TEX::OrderID>(), "OrderID", 37 } },
270  { 38, { Type2Type<TEX::OrderQty>(), "OrderQty", 38 } },
271  { 39, { Type2Type<TEX::OrdStatus>(), "OrdStatus", 39, &TEX::realmbases[6] } },
272  { 40, { Type2Type<TEX::OrdType>(), "OrdType", 40, &TEX::realmbases[7] } },
273  { 41, { Type2Type<TEX::OrigClOrdID>(), "OrigClOrdID", 41 } },
274  { 43, { Type2Type<TEX::PossDupFlag>(), "PossDupFlag", 43, &TEX::realmbases[8] } },
275  { 44, { Type2Type<TEX::Price>(), "Price", 44 } },
276  { 45, { Type2Type<TEX::RefSeqNum>(), "RefSeqNum", 45 } },
277  { 48, { Type2Type<TEX::SecurityID>(), "SecurityID", 48 } },
278  { 49, { Type2Type<TEX::SenderCompID>(), "SenderCompID", 49 } },
279  { 52, { Type2Type<TEX::SendingTime>(), "SendingTime", 52 } },
280  { 54, { Type2Type<TEX::Side>(), "Side", 54, &TEX::realmbases[9] } },
281  { 55, { Type2Type<TEX::Symbol>(), "Symbol", 55 } },
282  { 56, { Type2Type<TEX::TargetCompID>(), "TargetCompID", 56 } },
283  { 58, { Type2Type<TEX::Text>(), "Text", 58 } },
284  { 59, { Type2Type<TEX::TimeInForce>(), "TimeInForce", 59, &TEX::realmbases[10] } },
285  { 60, { Type2Type<TEX::TransactTime>(), "TransactTime", 60 } },
286  { 63, { Type2Type<TEX::SettlmntTyp>(), "SettlmntTyp", 63, &TEX::realmbases[11] } },
287  { 64, { Type2Type<TEX::FutSettDate>(), "FutSettDate", 64 } },
288  { 65, { Type2Type<TEX::SymbolSfx>(), "SymbolSfx", 65 } },
289  { 66, { Type2Type<TEX::ListID>(), "ListID", 66 } },
290  { 75, { Type2Type<TEX::TradeDate>(), "TradeDate", 75 } },
291  { 76, { Type2Type<TEX::ExecBroker>(), "ExecBroker", 76 } },
292  { 77, { Type2Type<TEX::OpenClose>(), "OpenClose", 77, &TEX::realmbases[12] } },
293  { 81, { Type2Type<TEX::ProcessCode>(), "ProcessCode", 81, &TEX::realmbases[13] } },
294  { 89, { Type2Type<TEX::Signature>(), "Signature", 89 } },
295  { 90, { Type2Type<TEX::SecureDataLen>(), "SecureDataLen", 90 } },
296  { 91, { Type2Type<TEX::SecureData>(), "SecureData", 91 } },
297  { 93, { Type2Type<TEX::SignatureLength>(), "SignatureLength", 93 } },
298  { 95, { Type2Type<TEX::RawDataLength>(), "RawDataLength", 95 } },
299  { 96, { Type2Type<TEX::RawData>(), "RawData", 96 } },
300  { 97, { Type2Type<TEX::PossResend>(), "PossResend", 97, &TEX::realmbases[14] } },
301  { 98, { Type2Type<TEX::EncryptMethod>(), "EncryptMethod", 98, &TEX::realmbases[15] } },
302  { 99, { Type2Type<TEX::StopPx>(), "StopPx", 99 } },
303  { 100, { Type2Type<TEX::ExDestination>(), "ExDestination", 100 } },
304  { 103, { Type2Type<TEX::OrdRejReason>(), "OrdRejReason", 103, &TEX::realmbases[16] } },
305  { 106, { Type2Type<TEX::Issuer>(), "Issuer", 106 } },
306  { 107, { Type2Type<TEX::SecurityDesc>(), "SecurityDesc", 107 } },
307  { 108, { Type2Type<TEX::HeartBtInt>(), "HeartBtInt", 108 } },
308  { 109, { Type2Type<TEX::ClientID>(), "ClientID", 109 } },
309  { 110, { Type2Type<TEX::MinQty>(), "MinQty", 110 } },
310  { 111, { Type2Type<TEX::MaxFloor>(), "MaxFloor", 111 } },
311  { 112, { Type2Type<TEX::TestReqID>(), "TestReqID", 112 } },
312  { 113, { Type2Type<TEX::ReportToExch>(), "ReportToExch", 113, &TEX::realmbases[17] } },
313  { 114, { Type2Type<TEX::LocateReqd>(), "LocateReqd", 114, &TEX::realmbases[18] } },
314  { 115, { Type2Type<TEX::OnBehalfOfCompID>(), "OnBehalfOfCompID", 115 } },
315  { 117, { Type2Type<TEX::QuoteID>(), "QuoteID", 117 } },
316  { 119, { Type2Type<TEX::SettlCurrAmt>(), "SettlCurrAmt", 119 } },
317  { 120, { Type2Type<TEX::SettlCurrency>(), "SettlCurrency", 120 } },
318  { 122, { Type2Type<TEX::OrigSendingTime>(), "OrigSendingTime", 122 } },
319  { 123, { Type2Type<TEX::GapFillFlag>(), "GapFillFlag", 123, &TEX::realmbases[19] } },
320  { 126, { Type2Type<TEX::ExpireTime>(), "ExpireTime", 126 } },
321  { 128, { Type2Type<TEX::DeliverToCompID>(), "DeliverToCompID", 128 } },
322  { 140, { Type2Type<TEX::PrevClosePx>(), "PrevClosePx", 140 } },
323  { 141, { Type2Type<TEX::ResetSeqNumFlag>(), "ResetSeqNumFlag", 141, &TEX::realmbases[20] } },
324  { 150, { Type2Type<TEX::ExecType>(), "ExecType", 150, &TEX::realmbases[21] } },
325  { 151, { Type2Type<TEX::LeavesQty>(), "LeavesQty", 151 } },
326  { 152, { Type2Type<TEX::CashOrderQty>(), "CashOrderQty", 152 } },
327  { 167, { Type2Type<TEX::SecurityType>(), "SecurityType", 167, &TEX::realmbases[22] } },
328  { 168, { Type2Type<TEX::EffectiveTime>(), "EffectiveTime", 168 } },
329  { 198, { Type2Type<TEX::SecondaryOrderID>(), "SecondaryOrderID", 198 } },
330  { 200, { Type2Type<TEX::MaturityMonthYear>(), "MaturityMonthYear", 200 } },
331  { 201, { Type2Type<TEX::PutOrCall>(), "PutOrCall", 201, &TEX::realmbases[23] } },
332  { 202, { Type2Type<TEX::StrikePrice>(), "StrikePrice", 202 } },
333  { 204, { Type2Type<TEX::CustomerOrFirm>(), "CustomerOrFirm", 204, &TEX::realmbases[24] } },
334  { 205, { Type2Type<TEX::MaturityDay>(), "MaturityDay", 205 } },
335  { 206, { Type2Type<TEX::OptAttribute>(), "OptAttribute", 206 } },
336  { 207, { Type2Type<TEX::SecurityExchange>(), "SecurityExchange", 207 } },
337  { 210, { Type2Type<TEX::MaxShow>(), "MaxShow", 210 } },
338  { 231, { Type2Type<TEX::ContractMultiplier>(), "ContractMultiplier", 231 } },
339  { 336, { Type2Type<TEX::TradingSessionID>(), "TradingSessionID", 336 } },
340  { 348, { Type2Type<TEX::EncodedIssuerLen>(), "EncodedIssuerLen", 348 } },
341  { 349, { Type2Type<TEX::EncodedIssuer>(), "EncodedIssuer", 349 } },
342  { 354, { Type2Type<TEX::EncodedTextLen>(), "EncodedTextLen", 354 } },
343  { 355, { Type2Type<TEX::EncodedText>(), "EncodedText", 355 } },
344  { 371, { Type2Type<TEX::RefTagID>(), "RefTagID", 371 } },
345  { 372, { Type2Type<TEX::RefMsgType>(), "RefMsgType", 372 } },
346  { 373, { Type2Type<TEX::SessionRejectReason>(), "SessionRejectReason", 373, &TEX::realmbases[25] } },
347  { 376, { Type2Type<TEX::ComplianceID>(), "ComplianceID", 376 } },
348  { 378, { Type2Type<TEX::ExecRestatementReason>(), "ExecRestatementReason", 378, &TEX::realmbases[26] } },
349  { 383, { Type2Type<TEX::MaxMessageSize>(), "MaxMessageSize", 383 } },
350  { 384, { Type2Type<TEX::NoMsgTypes>(), "NoMsgTypes", 384 } },
351  { 385, { Type2Type<TEX::MsgDirection>(), "MsgDirection", 385, &TEX::realmbases[27] } },
352  { 424, { Type2Type<TEX::DayOrderQty>(), "DayOrderQty", 424 } },
353  { 425, { Type2Type<TEX::DayCumQty>(), "DayCumQty", 425 } },
354  { 426, { Type2Type<TEX::DayAvgPx>(), "DayAvgPx", 426 } },
355  { 432, { Type2Type<TEX::ExpireDate>(), "ExpireDate", 432 } }
356 }; // 111
357 } // namespace TEX
358 
359 } // namespace FIX8
_pair< Key, Val > Pair
Definition: f8types.hpp:103
const TEX::Myfix_BaseMsgEntry::Pair const Myfix_BaseEntry::Pair fldpairs[]
std::string f8String
Definition: f8types.hpp:47