OnixS ICE iMpact Multicast Price Feed Handler C++ library 8.18.0
Users' manual and API documentation
Loading...
Searching...
No Matches
MulticastChannelGroups.h
Go to the documentation of this file.
1
5/*
6 * Copyright (c) Onix Solutions Limited. All rights reserved.
7 *
8 * This software owned by Onix Solutions Limited and is protected by copyright law
9 * and international copyright treaties.
10 *
11 * Access to and use of the software is governed by the terms of the applicable ONIXS Software
12 * Services Agreement (the Agreement) and Customer end user license agreements granting
13 * a non-assignable, non-transferable and non-exclusive license to use the software
14 * for it's own data processing purposes under the terms defined in the Agreement.
15 *
16 * Except as otherwise granted within the terms of the Agreement, copying or reproduction of any part
17 * of this source code or associated reference material to any other location for further reproduction
18 * or redistribution, and any amendments to this copyright notice, are expressly prohibited.
19 *
20 * Any reproduction or redistribution for sale or hiring of the Software not in accordance with
21 * the terms of the Agreement is a violation of copyright law.
22 */
23
24#pragma once
25
26#include "../Enumerations.h"
27#include "../Export.h"
28#include "../Types.h"
29
30#include <iosfwd>
31#include <string>
32#include <vector>
33
34namespace OnixS { namespace ICE { namespace iMpact { namespace MarketData {
35
37struct ONIXS_ICEMDH_EXPORT MulticastChannelGroups
38{
40 enum
41 {
43 };
44
46 struct ONIXS_ICEMDH_EXPORT ChannelGroup
47 {
50 short id;
51
54 std::string name;
55
58
62
66
70
74
78
82
86
90
93
95 typedef std::vector<MarketType> MarketTypes;
96
99
102
104 std::string toString() const;
105 };
106
108 typedef std::vector<ChannelGroup> ChannelGroups;
109
112
114 struct ONIXS_ICEMDH_EXPORT MarketTypeMapping
115 {
118
121
124 std::string marketTypeName;
125
128
130 std::string toString() const;
131 };
132
134 typedef std::vector<MarketTypeMapping> MarketTypeMappings;
135
138
141
143 MulticastChannelGroups(const char* data, std::size_t dataSize);
144
146 void deserialize(const char* data, std::size_t dataSize);
147
149 void reset();
150
152 std::string toString() const;
153};
154
156ONIXS_ICEMDH_EXPORT std::ostream& operator<<(std::ostream&, const MulticastChannelGroups&);
157
158}}}} // namespace OnixS::ICE::iMpact::MarketData
Declare ICE iMpact enumerations.
short MarketType
Alias for market types.
Definition Types.h:36
ONIXS_ICEMDH_EXPORT std::ostream & operator<<(std::ostream &, const Error &)
Make it printable to formatted C++ I/O streams.
std::string toString() const
Returns string representation.
std::vector< MarketType > MarketTypes
Alias for collection of MarketTypes.
MulticastChannelGroupType::Enum type
Indicates the type of this channel group.
std::string toString() const
Returns string representation.
MarketType marketTypeId
The ID for this Market Type as found in Appendix C.
short marketTypeNameLength
The length of the market type name to follow.
This class represents the Multicast Channel Groups Message.
std::string toString() const
Returns string representation.
std::vector< ChannelGroup > ChannelGroups
Alias for collection of ChannelGroups.
ChannelGroups channelGroups
Collection of ChannelGroups.
void deserialize(const char *data, std::size_t dataSize)
Deserialize from raw data.
void reset()
Reset all fields to default values.
std::vector< MarketTypeMapping > MarketTypeMappings
Alias for collection of MarketTypeMappings.
MarketTypeMappings marketTypeMappings
Collection of MarketTypeMappings.
MulticastChannelGroups(const char *data, std::size_t dataSize)
Initialize from raw message data.