OnixS BME SENAF Handler C++ library  2.2.1
API documentation
MarketRequestError.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
5  * copyright law and international copyright treaties.
6  *
7  * Access to and use of the software is governed by the terms of the applicable
8  * ONIXS Software Services Agreement (the Agreement) and Customer end user
9  * license agreements granting a non-assignable, non-transferable and
10  * non-exclusive license to use the software for it's own data processing
11  * purposes under the terms defined in the Agreement.
12  *
13  * Except as otherwise granted within the terms of the Agreement, copying or
14  * reproduction of any part of this source code or associated reference material
15  * to any other location for further reproduction or redistribution, and any
16  * amendments to this copyright notice, are expressly prohibited.
17  *
18  * Any reproduction or redistribution for sale or hiring of the Software not in
19  * accordance with the terms of the Agreement is a violation of copyright law.
20  */
21 
22 #pragma once
23 
24 #include <OnixS/Senaf/MarketData/Export.h>
25 
26 #include <iosfwd>
27 #include <string>
28 
29 namespace OnixS { namespace Senaf { namespace MarketData {
30 
31 /// Market-Request Error.
32 struct ONIXS_BME_SENAF_EXPORT MarketRequestError
33 {
34  /// Message code.
35  enum
36  {
37  code = 103
38  };
39 
40  /// Default constructor.
42 
43  /// Market.
44  unsigned char market;
45 
46  /// Error Generator.
47  unsigned char errorGenerator;
48 
49  /// Error Type.
50  unsigned char errorType;
51 
52  /// Text Description.
53  std::string textDescription;
54 
55  /// Request Number that generated the error.
56  unsigned requestNumber;
57 
58  /// Returns string representation.
59  std::string toString() const;
60 
61 private:
62  friend class MessageDeserializer;
63  MarketRequestError(const char* data, size_t dataSize);
64  void deserialize(const char* data, size_t dataSize);
65  void reset();
66 };
67 
68 /// Make it printable using C++ I/O streams.
69 ONIXS_BME_SENAF_EXPORT std::ostream& operator<<(std::ostream&, const MarketRequestError&);
70 
71 }}} // namespace OnixS::Senaf::MarketData
unsigned requestNumber
Request Number that generated the error.
unsigned char errorGenerator
Error Generator.
std::string textDescription
Text Description.
std::ostream & operator<<(std::ostream &, const Error &)
Make it printable to formatted C++ I/O streams.