OnixS C++ SGX Titan ITCH Market Data Handler  1.2.2
API documentation
Enumerations.h
Go to the documentation of this file.
1 /*
2 * Copyright Onix Solutions Limited [OnixS]. All rights reserved.
3 *
4 * This software owned by Onix Solutions Limited [OnixS] and is protected by copyright law
5 * and international copyright treaties.
6 *
7 * Access to and use of the software is governed by the terms of the applicable ONIXS Software
8 * Services Agreement (the Agreement) and Customer end user license agreements granting
9 * a non-assignable, non-transferable and non-exclusive license to use the software
10 * for it's own data processing purposes under the terms defined in the Agreement.
11 *
12 * Except as otherwise granted within the terms of the Agreement, copying or reproduction of any part
13 * of this source code or associated reference material to any other location for further reproduction
14 * or redistribution, and any amendments to this copyright notice, are expressly prohibited.
15 *
16 * Any reproduction or redistribution for sale or hiring of the Software not in accordance with
17 * the terms of the Agreement is a violation of copyright law.
18 */
19 
20 #pragma once
21 
22 #include <string>
23 
25 
26 ONIXS_SGXTITAN_ITCH_NAMESPACE_BEGIN
27 
28 
29  /// MessageType
30  struct MessageType
31  {
32  /// Integral type used as basement for constants.
33  typedef UInt8 Base;
34 
35  enum Enum
36  {
37  ///
38  Seconds = 'T',
39 
40  ///
41  OrderBookDirectory = 'R',
42 
43  ///
44  CombinationOrderBookLeg = 'M',
45 
46  ///
47  TickSizeTableEntry = 'L',
48 
49  ///
50  SystemEvent = 'S',
51 
52  ///
53  OrderBookState = 'O',
54 
55  ///
56  AddOrder = 'A',
57 
58  ///
59  OrderExecuted = 'E',
60 
61  ///
62  OrderExecutedWithPrice = 'C',
63 
64  ///
65  OrderReplace = 'U',
66 
67  ///
68  OrderDelete = 'D',
69 
70  ///
71  Trade = 'P',
72 
73  ///
74  EquilibriumPriceUpdate = 'Z',
75 
76  };
77  };
78 
79  /// Appends string presentation of object.
80  ONIXS_SGXTITAN_ITCH_API void toStr(std::string&, MessageType::Enum);
81 
82  /// Returns string presentation of object.
83  inline std::string toStr(MessageType::Enum value)
84  {
85  std::string str;
86  toStr(str, value);
87  return str;
88  }
89 
90  /// FinancialProduct
92  {
93  /// Integral type used as basement for constants.
94  typedef UInt8 Base;
95 
96  enum Enum
97  {
98  ///
99  Option = 1,
100 
101  ///
102  Forward = 2,
103 
104  ///
105  Future = 3,
106 
107  ///
108  FRA = 4,
109 
110  ///
111  Cash = 5,
112 
113  ///
114  Payment = 6,
115 
116  ///
117  ExchangeRate = 7,
118 
119  ///
120  InterestRateSwap = 8,
121 
122  ///
123  REPO = 9,
124 
125  ///
126  SyntheticBoxLegOrReference = 10,
127 
128  ///
129  StandardCombination = 11,
130 
131  ///
132  Guarantee = 12,
133 
134  ///
135  OtcGeneral = 13,
136 
137  ///
138  EquityWarrant = 14,
139 
140  ///
141  SecurityLending = 15,
142 
143  };
144  };
145 
146  /// Appends string presentation of object.
147  ONIXS_SGXTITAN_ITCH_API void toStr(std::string&, FinancialProduct::Enum);
148 
149  /// Returns string presentation of object.
150  inline std::string toStr(FinancialProduct::Enum value)
151  {
152  std::string str;
153  toStr(str, value);
154  return str;
155  }
156 
157  /// LegSide
158  struct LegSide
159  {
160  /// Integral type used as basement for constants.
161  typedef UInt8 Base;
162 
163  enum Enum
164  {
165  ///
166  AsDefined = 'B',
167 
168  ///
169  Opposite = 'C',
170 
171  };
172  };
173 
174  /// Appends string presentation of object.
175  ONIXS_SGXTITAN_ITCH_API void toStr(std::string&, LegSide::Enum);
176 
177  /// Returns string presentation of object.
178  inline std::string toStr(LegSide::Enum value)
179  {
180  std::string str;
181  toStr(str, value);
182  return str;
183  }
184 
185  /// EventCode
186  struct EventCode
187  {
188  /// Integral type used as basement for constants.
189  typedef UInt8 Base;
190 
191  enum Enum
192  {
193  ///
194  StartOfMessages = 'O',
195 
196  ///
197  EndOfMessages = 'C',
198 
199  };
200  };
201 
202  /// Appends string presentation of object.
203  ONIXS_SGXTITAN_ITCH_API void toStr(std::string&, EventCode::Enum);
204 
205  /// Returns string presentation of object.
206  inline std::string toStr(EventCode::Enum value)
207  {
208  std::string str;
209  toStr(str, value);
210  return str;
211  }
212 
213  /// Side
214  struct Side
215  {
216  /// Integral type used as basement for constants.
217  typedef UInt8 Base;
218 
219  enum Enum
220  {
221  ///
222  Buy = 'B',
223 
224  ///
225  Sell = 'S',
226 
227  };
228  };
229 
230  /// Appends string presentation of object.
231  ONIXS_SGXTITAN_ITCH_API void toStr(std::string&, Side::Enum);
232 
233  /// Returns string presentation of object.
234  inline std::string toStr(Side::Enum value)
235  {
236  std::string str;
237  toStr(str, value);
238  return str;
239  }
240 
241  /// TradeSide
242  struct TradeSide
243  {
244  /// Integral type used as basement for constants.
245  typedef UInt8 Base;
246 
247  enum Enum
248  {
249  ///
250  AnonymousMarkets = ' ',
251 
252  ///
253  Buy = 'B',
254 
255  ///
256  Sell = 'S',
257 
258  };
259  };
260 
261  /// Appends string presentation of object.
262  ONIXS_SGXTITAN_ITCH_API void toStr(std::string&, TradeSide::Enum);
263 
264  /// Returns string presentation of object.
265  inline std::string toStr(TradeSide::Enum value)
266  {
267  std::string str;
268  toStr(str, value);
269  return str;
270  }
271 
272  /// LotType
273  struct LotType
274  {
275  /// Integral type used as basement for constants.
276  typedef UInt8 Base;
277 
278  enum Enum
279  {
280  ///
281  RoundLot = 2,
282 
283  };
284  };
285 
286  /// Appends string presentation of object.
287  ONIXS_SGXTITAN_ITCH_API void toStr(std::string&, LotType::Enum);
288 
289  /// Returns string presentation of object.
290  inline std::string toStr(LotType::Enum value)
291  {
292  std::string str;
293  toStr(str, value);
294  return str;
295  }
296 
297  /// PutOrCall
298  struct PutOrCall
299  {
300  /// Integral type used as basement for constants.
301  typedef UInt8 Base;
302 
303  enum Enum
304  {
305  ///
306  Undefined = 0,
307 
308  ///
309  Call = 1,
310 
311  ///
312  Put = 2,
313 
314  };
315  };
316 
317  /// Appends string presentation of object.
318  ONIXS_SGXTITAN_ITCH_API void toStr(std::string&, PutOrCall::Enum);
319 
320  /// Returns string presentation of object.
321  inline std::string toStr(PutOrCall::Enum value)
322  {
323  std::string str;
324  toStr(str, value);
325  return str;
326  }
327 
328  /// OccurredAtCross
330  {
331  /// Integral type used as basement for constants.
332  typedef UInt8 Base;
333 
334  enum Enum
335  {
336  ///
337  Yes = 'Y',
338 
339  ///
340  No = 'N',
341 
342  };
343  };
344 
345  /// Appends string presentation of object.
346  ONIXS_SGXTITAN_ITCH_API void toStr(std::string&, OccurredAtCross::Enum);
347 
348  /// Returns string presentation of object.
349  inline std::string toStr(OccurredAtCross::Enum value)
350  {
351  std::string str;
352  toStr(str, value);
353  return str;
354  }
355 
356  /// Printable
357  struct Printable
358  {
359  /// Integral type used as basement for constants.
360  typedef UInt8 Base;
361 
362  enum Enum
363  {
364  ///
365  Yes = 'Y',
366 
367  ///
368  No = 'N',
369 
370  };
371  };
372 
373  /// Appends string presentation of object.
374  ONIXS_SGXTITAN_ITCH_API void toStr(std::string&, Printable::Enum);
375 
376  /// Returns string presentation of object.
377  inline std::string toStr(Printable::Enum value)
378  {
379  std::string str;
380  toStr(str, value);
381  return str;
382  }
383 
384 ONIXS_SGXTITAN_ITCH_NAMESPACE_END
UInt8 Base
Integral type used as basement for constants.
Definition: Enumerations.h:245
UInt8 Base
Integral type used as basement for constants.
Definition: Enumerations.h:33
UInt8 Base
Integral type used as basement for constants.
Definition: Enumerations.h:189
std::string toStr(Printable::Enum value)
Returns string presentation of object.
Definition: Enumerations.h:377
UInt8 Base
Integral type used as basement for constants.
Definition: Enumerations.h:94
UInt8 Base
Integral type used as basement for constants.
Definition: Enumerations.h:360
UInt8 Base
Integral type used as basement for constants.
Definition: Enumerations.h:301
UInt8 Base
Integral type used as basement for constants.
Definition: Enumerations.h:161
UInt8 Base
Integral type used as basement for constants.
Definition: Enumerations.h:276
UInt8 Base
Integral type used as basement for constants.
Definition: Enumerations.h:332
UInt8 Base
Integral type used as basement for constants.
Definition: Enumerations.h:217