OnixS C++ B3 Binary UMDF Market Data Handler 1.10.0
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
91
92 ONIXS_B3_UMDF_MD_API std::ostream& operator << (std::ostream& stream, const DataSource& ds);
93
94 namespace System
95 {
97 typedef size_t CpuIndex;
98
100 class ONIXS_B3_UMDF_MD_API ThreadAffinity
101 {
102 typedef std::set<CpuIndex> CpuIndexes;
103
104 public:
107
110
113
115 bool empty() const;
116
118 void copyTo(CpuIndexes&) const;
119
121 bool insert(CpuIndex index);
122
124 bool erase(CpuIndex index);
125
127 void clear();
128
130 ThreadAffinity& operator = (const ThreadAffinity&);
131
133 std::string toString() const;
134
135 private:
136
138 CpuIndexes* indices_;
139 };
140 }
141 }
142 }
143 }
144}
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:97
Messaging::UInt16 UInt16
Definition Integral.h:34
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
ONIXS_B3_UMDF_MD_API std::ostream & operator<<(std::ostream &stream, const LoggerSettings &settings)
bool lastMessage
Indicates if the message is the last in the packet.
Definition Defines.h:81
Origin origin
the way data received
Definition Defines.h:84
PacketSequenceNumber packetSequenceNumber
Packet Sequence Number. Always incremented by one in the same channel and same SequenceVersion.
Definition Defines.h:65
UInt8 packetMessageNumber
Number of message in the packet.
Definition Defines.h:78
UInt16 packetSequenceVersion
Packet Sequence Version.
Definition Defines.h:72
bool cached
The packet was cached due to incorrect sequence.
Definition Defines.h:87
UInt64 sendingTime
UTC date and time of packet transmission, in nanoseconds since Unix epoch (Jan 1st....
Definition Defines.h:62
Timestamp packetReceptionTime
Time when the packet was received by Handler from UDP, in system ticks,.
Definition Defines.h:59
DataSource(Timestamp ts) noexcept
Definition Defines.h:49
UInt8 channelId
Channel identification.
Definition Defines.h:75