OnixS C++ CBOE CFE Binary Order Entry (BOE) Handler  1.11.0
API documentation
CancelOrder.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 
22 #include <vector>
23 
28 
29 
30 namespace OnixS {
31 namespace CboeCFE {
32 namespace Trading {
33 namespace BOE {
34 
35  /// Cancel Order
36  struct ONIXS_CBOE_CFE_BOE_API CancelOrder : public OutgoingMessage
37  {
38  ///
40  {
41  return origClOrdId_;
42  }
43 
44  ///
45  void origClOrdId(StrRef value)
46  {
47  origClOrdId_ = value;
48  }
49 
50  /// EFID that will clear the trade.
52  {
53  return clearingFirm_;
54  }
55 
56  /// EFID that will clear the trade.
57  void clearingFirm(StrRef value)
58  {
59  clearingFirm_ = value;
60  }
61 
62  /// Manual order indicator.
64  {
65  return manualOrderIndicator_;
66  }
67 
68  /// Manual order indicator.
70  {
71  manualOrderIndicator_ = value;
72  }
73 
74  /// Identifies the Order Entry Operator responsible for this message.
75  StrRef oEOID() const
76  {
77  return oEOID_;
78  }
79 
80  /// Identifies the Order Entry Operator responsible for this message.
81  void oEOID(StrRef value)
82  {
83  oEOID_ = value;
84  }
85 
86  /// Returns message type
87  MessageType::Enum type() const ONIXS_BATS_BOE_NOEXCEPT ONIXS_BATS_BOE_OVERRIDE { return MessageType::CancelOrder; };
88 
89  /// Validates message data
90  /// Throws std::invalid_argument exception if message content is invalid.
91  void validate() const ONIXS_BATS_BOE_OVERRIDE;
92 
93  /// Returns the text representation
94  std::string toString() const ONIXS_BATS_BOE_OVERRIDE;
95 
96  /// The text representation
97  void toString(std::string& str) const ONIXS_BATS_BOE_OVERRIDE;
98 
99  private:
100  size_t serializeTo(unsigned char*) const ONIXS_BATS_BOE_NOEXCEPT ONIXS_BATS_BOE_OVERRIDE;
101 
102  Text<20> origClOrdId_;
103  Alpha<4> clearingFirm_;
104  ManualOrderIndicator::Enum manualOrderIndicator_;
105  Text<18> oEOID_;
106  };
107 
108  /// Serializes object into string.
109  ONIXS_CBOE_CFE_BOE_API void toStr(std::string&, const CancelOrder&);
110 
111  /// Serializes object into string.
112  inline std::string toStr(const CancelOrder& msg)
113  {
114  std::string str;
115  toStr(str, msg);
116  return str;
117  }
118 
119 }
120 }
121 }
122 }
void manualOrderIndicator(ManualOrderIndicator::Enum value)
Manual order indicator.
Definition: CancelOrder.h:69
Provides efficient way of accessing text-based field values.
Definition: String.h:45
StrRef oEOID() const
Identifies the Order Entry Operator responsible for this message.
Definition: CancelOrder.h:75
void toStr(std::string &str, const FixedPointDecimal< Mantissa, Exponent > &number)
Serializes fixed-point decimal into a string.
Definition: Decimal.h:156
StrRef clearingFirm() const
EFID that will clear the trade.
Definition: CancelOrder.h:51
void oEOID(StrRef value)
Identifies the Order Entry Operator responsible for this message.
Definition: CancelOrder.h:81
ManualOrderIndicator::Enum manualOrderIndicator() const
Manual order indicator.
Definition: CancelOrder.h:63
void clearingFirm(StrRef value)
EFID that will clear the trade.
Definition: CancelOrder.h:57
Base class for outgoing messages.
MessageType::Enum type() const ONIXS_BATS_BOE_NOEXCEPT ONIXS_BATS_BOE_OVERRIDE
Returns message type.
Definition: CancelOrder.h:87