JayBeams  0.1
Another project to have fun coding.
reg_sho_restriction_message.hpp
Go to the documentation of this file.
1 #ifndef jb_itch5_reg_sho_restriction_message_hpp
2 #define jb_itch5_reg_sho_restriction_message_hpp
3 
7 
8 namespace jb {
9 namespace itch5 {
10 
11 /**
12  * Represent the 'Reg SHO Action' field of the 'Reg SHO Restriction'
13  * message.
14  */
16 
17 /**
18  * Represent a 'Reg SHO Restriction' message in the ITCH-5.0 protocol.
19  */
21  constexpr static int const message_type = u'Y';
22 
25  reg_sho_action_t reg_sho_action;
26 };
27 
28 /// Specialize decoder for a jb::itch5::reg_sho_restriction_message
29 template <bool V>
31  /// Please see the generic documentation for jb::itch5::decoder<>::r()
33  r(std::size_t size, void const* buf, std::size_t off) {
35  x.header = decoder<V, message_header>::r(size, buf, off + 0);
36  x.stock = decoder<V, stock_t>::r(size, buf, off + 11);
37  x.reg_sho_action = decoder<V, reg_sho_action_t>::r(size, buf, off + 19);
38  return x;
39  }
40 };
41 
42 /// Streaming operator for jb::itch5::reg_sho_restriction_message.
43 std::ostream&
44 operator<<(std::ostream& os, reg_sho_restriction_message const& x);
45 
46 } // namespace itch5
47 } // namespace jb
48 
49 #endif // jb_itch5_reg_sho_restriction_message_hpp
Define the header common to all ITCH 5.0 messages.
static T r(std::size_t size, void const *msg, std::size_t offset)
Read a single message or field.
Represent a &#39;Reg SHO Restriction&#39; message in the ITCH-5.0 protocol.
char_list_field< u '0', u '1', u '2'> reg_sho_action_t
Represent the &#39;Reg SHO Action&#39; field of the &#39;Reg SHO Restriction&#39; message.
Define the interface to decode ITCH-5.0 messages and message fields.
Definition: decoder.hpp:24
std::ostream & operator<<(std::ostream &os, add_order_message const &x)
Streaming operator for jb::itch5::add_order_message.
static reg_sho_restriction_message r(std::size_t size, void const *buf, std::size_t off)
Please see the generic documentation for jb::itch5::decoder<>::r()
The top-level namespace for the JayBeams library.
Definition: as_hhmmss.hpp:7