OnixS C++ B3 Binary UMDF Market Data Handler 1.11.1
Users' manual and API documentation
Loading...
Searching...
No Matches
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
24
25#include <string>
26#include <ostream>
27#include <memory>
28#include <set>
29
30namespace OnixS
31{
32 namespace B3
33 {
34 namespace MarketData
35 {
36 namespace UMDF
37 {
38 typedef char Char;
39
40 struct NoCheck {};
41
44
45#if defined (_MSC_VER)
46#pragma warning (push)
47#pragma warning (disable: 4251)
48#endif
49
96
97#if defined (_MSC_VER)
98#pragma warning (pop)
99#endif
100
101 ONIXS_B3_UMDF_MD_API std::ostream& operator << (std::ostream& stream, const DataSource& ds);
102
103 namespace System
104 {
106 typedef size_t CpuIndex;
107
109 class ONIXS_B3_UMDF_MD_API ThreadAffinity
110 {
111 typedef std::set<CpuIndex> CpuIndexes;
112
113 public:
116
119
122
124 bool empty() const;
125
127 void copyTo(CpuIndexes&) const;
128
130 bool insert(CpuIndex index);
131
133 bool erase(CpuIndex index);
134
136 void clear();
137
139 ThreadAffinity& operator = (const ThreadAffinity&);
140
142 std::string toString() const;
143
144 private:
145
147 CpuIndexes* indices_;
148 };
149 }
150 }
151 }
152 }
153}
std::string toString() const
Returns the string representation.
ThreadAffinity(const ThreadAffinity &)
Initializes as copy of other set.
bool empty() const
Indicates whether is empty.
bool erase(CpuIndex index)
Removes CPU index from the set.
bool insert(CpuIndex index)
Adds CPU index into set.
void copyTo(CpuIndexes &) const
Copies set into another set.
Represents time point without time-zone information.
Definition Time.h:483
size_t CpuIndex
Zero-based index of CPU.
Definition Defines.h:106
Messaging::UInt16 UInt16
Definition Integral.h:34
std::ostream & operator<<(std::ostream &stream, const LoggerSettings &settings)
Messaging::UInt8 UInt8
Definition Integral.h:31
UInt32 PacketSequenceNumber
Alias for Packet Sequence Number type (PSN).
Definition Defines.h:43
Messaging::UInt64 UInt64
Definition Integral.h:40
Messaging::UInt32 UInt32
Definition Integral.h:37
bool lastMessage
Indicates if the message is the last in the packet.
Definition Defines.h:86
Origin origin
the way data received
Definition Defines.h:89
PacketSequenceNumber packetSequenceNumber
Packet Sequence Number. Always incremented by one in the same channel and same SequenceVersion.
Definition Defines.h:70
UInt8 packetMessageNumber
Number of message in the packet.
Definition Defines.h:83
UInt16 packetSequenceVersion
Packet Sequence Version.
Definition Defines.h:77
bool cached
The packet was cached due to incorrect sequence.
Definition Defines.h:92
UInt64 sendingTime
UTC date and time of packet transmission, in nanoseconds since Unix epoch (Jan 1st....
Definition Defines.h:67
Timestamp packetReceptionTime
Time when the packet was received by Handler from UDP, in system ticks,.
Definition Defines.h:64
DataSource(Timestamp ts) noexcept
Definition Defines.h:54
UInt8 channelId
Channel identification.
Definition Defines.h:80