OnixS C++ SGX Titan ITCH Market Data Handler  1.2.2
API documentation
Defines.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 
23 #include <OnixS/SgxTitan/MarketData/Itch/Bootstrap.h>
26 
27 #include <string>
28 #include <ostream>
29 #include <memory>
30 
31 ONIXS_SGXTITAN_ITCH_NAMESPACE_BEGIN
32 
33 /// Aliases message length type.
34 typedef UInt16 MessageSize;
35 
36 /// Alias for Sequence Number type.
37 typedef UInt64 SequenceNumber;
38 
39 /// Alias for OrderId type.
40 typedef UInt64 OrderId;
41 
42 /// Alias for Security Id type.
43 typedef UInt32 OrderBookId;
44 
45 /// Alias for Quantity type.
46 typedef UInt64 Quantity;
47 
48 /// Alias for Date type.
49 typedef UInt32 Date;
50 
51 /// Data source
52 struct ONIXS_SGXTITAN_ITCH_API DataSource
53 {
54  enum Origin
55  {
56  multicast = 0,
57  replay = 1,
58  glimpse = 2,
59  };
60 
61  /// Time when the packet was received by Handler from UDP, in system ticks, @see Time.h
63 
64  /// Message sequence number
66 
67  /// Number of message in packet
69 
70  /// Message sequence number
71  UInt64 messageSeqNum;
72 
73  /// Session Id
74  const Byte* session;
75 
76  /// the way data received
78 
79  std::string toString () const;
80 };
81 
82 ONIXS_SGXTITAN_ITCH_API std::ostream& operator << (std::ostream& stream, const DataSource& ds);
83 
84 ONIXS_SGXTITAN_ITCH_NAMESPACE_END
Origin origin
the way data received
Definition: Defines.h:77
UInt64 OrderId
Alias for OrderId type.
Definition: Defines.h:40
UInt16 packetMessageCount
Message sequence number.
Definition: Defines.h:65
UInt64 SequenceNumber
Alias for Sequence Number type.
Definition: Defines.h:37
Represents timestamp without time-zone information.
Definition: Timestamp.h:84
UInt32 Date
Alias for Date type.
Definition: Defines.h:49
UInt64 Quantity
Alias for Quantity type.
Definition: Defines.h:46
UInt32 OrderBookId
Alias for Security Id type.
Definition: Defines.h:43
const Byte * session
Session Id.
Definition: Defines.h:74
UInt16 MessageSize
Aliases message length type.
Definition: Defines.h:34
UInt8 packetMessageNumber
Number of message in packet.
Definition: Defines.h:68
UInt8 Byte
Alias for Byte.
Definition: Memory.h:30
UInt64 messageSeqNum
Message sequence number.
Definition: Defines.h:71
Timestamp packetReceptionTime
Time when the packet was received by Handler from UDP, in system ticks,.
Definition: Defines.h:62
ONIXS_SGXTITAN_ITCH_API std::ostream & operator<<(std::ostream &stream, const DataSource &ds)
Definition: Defines.cpp:57