OnixS C++ CBOE CFE Binary Order Entry (BOE) Handler  1.12.0
API documentation
MutablePurgeAcknowledgement.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 namespace Testing {
35 
36  /// A Purge Acknowledgment is an unsequenced message sent when a Purge Orders message requesting an order purge has completed cancelling all individual orders.
37  struct ONIXS_CBOE_CFE_BOE_API MutablePurgeAcknowledgement : public OutgoingMessage
38  {
39  /// The time the event occurred in the CFE Matching Engine (not the time the message was sent).
41  {
42  return transactionTime_;
43  }
44 
45  /// The time the event occurred in the CFE Matching Engine (not the time the message was sent).
47  {
48  transactionTime_ = value;
49  }
50 
51  /// Echoed back from the TPH message
53  {
54  return massCancelId_;
55  }
56 
57  /// Echoed back from the TPH message
58  void massCancelId(StrRef value)
59  {
60  massCancelId_ = value;
61  }
62 
63  /// Number of orders cancelled.
65  {
66  return cancelledOrderCount_;
67  }
68 
69  /// Number of orders cancelled.
71  {
72  cancelledOrderCount_ = value;
73  }
74 
75  /// The earliest timestamp, populated with nanosecond precision, recorded by CFE of the corresponding inbound message being acknowledged.
77  {
78  return requestReceivedTime_;
79  }
80 
81  /// The earliest timestamp, populated with nanosecond precision, recorded by CFE of the corresponding inbound message being acknowledged.
83  {
84  requestReceivedTime_ = value;
85  }
86 
87  /// Returns message type
89 
90  /// Validates message data
91  /// Throws std::invalid_argument exception if message content is invalid.
92  void validate() const ONIXS_BATS_BOE_OVERRIDE;
93 
94  /// Returns the text representation
95  std::string toString() const ONIXS_BATS_BOE_OVERRIDE;
96 
97  /// The text representation
98  void toString(std::string& str) const ONIXS_BATS_BOE_OVERRIDE;
99 
100  private:
101  size_t serializeTo(unsigned char*) const ONIXS_BATS_BOE_NOEXCEPT ONIXS_BATS_BOE_OVERRIDE;
102 
103  DateTime transactionTime_;
104  Text<20> massCancelId_;
105  Binary4 cancelledOrderCount_;
106  DateTime requestReceivedTime_;
107  };
108 
109  /// Serializes object into string.
110  ONIXS_CBOE_CFE_BOE_API void toStr(std::string&, const MutablePurgeAcknowledgement&);
111 
112  /// Serializes object into string.
113  inline std::string toStr(const MutablePurgeAcknowledgement& msg)
114  {
115  std::string str;
116  toStr(str, msg);
117  return str;
118  }
119 
120 }
121 }
122 }
123 }
124 }
void massCancelId(StrRef value)
Echoed back from the TPH message.
A Purge Acknowledgment is an unsequenced message sent when a Purge Orders message requesting an order...
Provides efficient way of accessing text-based field values.
Definition: String.h:45
MessageType::Enum type() const ONIXS_BATS_BOE_NOEXCEPT ONIXS_BATS_BOE_OVERRIDE
Returns message type.
DateTime transactionTime() const
The time the event occurred in the CFE Matching Engine (not the time the message was sent)...
#define ONIXS_BATS_BOE_NOEXCEPT
Definition: ABI.h:49
void transactionTime(DateTime value)
The time the event occurred in the CFE Matching Engine (not the time the message was sent)...
Base class for outgoing messages.
ONIXS_CBOE_CFE_BOE_API void toStr(std::string &, const ConstantNewOrderV2 &)
Serializes object into string.
DateTime requestReceivedTime() const
The earliest timestamp, populated with nanosecond precision, recorded by CFE of the corresponding inb...
void requestReceivedTime(DateTime value)
The earliest timestamp, populated with nanosecond precision, recorded by CFE of the corresponding inb...