CBOE Emulator  1.0
noop.hpp
1 // A dummy data feed handler that does nothing.
2 // Copyright 2020 Christian Kauten
3 //
4 // Author: Christian Kauten (kautenja@auburn.edu)
5 //
6 // This program is free software: you can redistribute it and/or modify
7 // it under the terms of the GNU General Public License as published by
8 // the Free Software Foundation, either version 3 of the License, or
9 // (at your option) any later version.
10 // This program is distributed in the hope that it will be useful,
11 // but WITHOUT ANY WARRANTY; without even the implied warranty of
12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 // GNU General Public License for more details.
14 // You should have received a copy of the GNU General Public License
15 // along with this program. If not, see <http://www.gnu.org/licenses/>.
16 //
17 
18 #ifndef DATA_FEED_HANDLERS_HEARTBEAT_HPP
19 #define DATA_FEED_HANDLERS_HEARTBEAT_HPP
20 
21 #include "data_feed/receiver.hpp"
22 
24 namespace DataFeed {
25 
27 namespace Handlers {
28 
30 class NoOp {
31  public:
37  inline void did_receive(Receiver<NoOp>* receiver, const Messages::StartOfSession& message) { }
38 
44  inline void did_receive(Receiver<NoOp>* receiver, const Messages::EndOfSession& message) { }
45 
51  inline void did_receive(Receiver<NoOp>* receiver, const Messages::Clear& message) { }
52 
58  inline void did_receive(Receiver<NoOp>* receiver, const Messages::AddOrder& message) { }
59 
65  inline void did_receive(Receiver<NoOp>* receiver, const Messages::DeleteOrder& message) { }
66 
72  inline void did_receive(Receiver<NoOp>* receiver, const Messages::Trade& message) { }
73 };
74 
75 } // namespace Handlers
76 
77 } // namespace DataFeed
78 
79 #endif // DATA_FEED_HANDLERS_HEARTBEAT_HPP
DataFeed::Handlers::NoOp::did_receive
void did_receive(Receiver< NoOp > *receiver, const Messages::StartOfSession &message)
Handle a start of session message.
Definition: noop.hpp:37
DataFeed::Receiver
A multi-cast receiver for recreating a LOB::LimitOrderBook from network messages.
Definition: receiver.hpp:36
DataFeed::Messages::Trade
A message that indicates a market order matches with a limit order.
Definition: messages.hpp:387
DataFeed::Handlers::NoOp::did_receive
void did_receive(Receiver< NoOp > *receiver, const Messages::Trade &message)
Handle a trade message.
Definition: noop.hpp:72
DataFeed::Messages::DeleteOrder
A message that indicates a limit order was added to the book.
Definition: messages.hpp:332
DataFeed::Messages::EndOfSession
A message that indicates the end of a trading session.
Definition: messages.hpp:506
DataFeed::Messages::Clear
A message that indicates to clear all orders in the order book.
Definition: messages.hpp:213
DataFeed::Messages::StartOfSession
A message that indicates the start of a trading session.
Definition: messages.hpp:460
DataFeed
Logic for sending and receiving messages on a financial data feed.
Definition: heartbeat.hpp:28
DataFeed::Handlers::NoOp::did_receive
void did_receive(Receiver< NoOp > *receiver, const Messages::DeleteOrder &message)
Handle a delete order message.
Definition: noop.hpp:65
DataFeed::Handlers::NoOp::did_receive
void did_receive(Receiver< NoOp > *receiver, const Messages::EndOfSession &message)
Handle an end of session message.
Definition: noop.hpp:44
DataFeed::Handlers::NoOp
A Receiver handler that does nothing.
Definition: noop.hpp:30
DataFeed::Handlers::NoOp::did_receive
void did_receive(Receiver< NoOp > *receiver, const Messages::Clear &message)
Handle a clear book message.
Definition: noop.hpp:51
DataFeed::Handlers::NoOp::did_receive
void did_receive(Receiver< NoOp > *receiver, const Messages::AddOrder &message)
Handle an add order message.
Definition: noop.hpp:58
DataFeed::Messages::AddOrder
A message that indicates a limit order was added to the book.
Definition: messages.hpp:259