General: reorganization of header files
[marnav.git] / include / marnav / io / default_seatalk_reader.hpp
blob2fcacdce0fd69d462b6683a43595737a324b6177
1 #ifndef MARNAV__IO__DEFAULT_SEATALK_READER__HPP
2 #define MARNAV__IO__DEFAULT_SEATALK_READER__HPP
4 #include <marnav/io/seatalk_reader.hpp>
6 namespace marnav
8 namespace io
10 /// Default implementation of a SeaTalk reader.
11 class default_seatalk_reader : public seatalk_reader
13 public:
14 default_seatalk_reader() = delete;
15 default_seatalk_reader(std::unique_ptr<device> &&);
16 default_seatalk_reader(const default_seatalk_reader &) = delete;
17 default_seatalk_reader(default_seatalk_reader &&) = default;
19 default_seatalk_reader & operator=(const default_seatalk_reader &) = delete;
20 default_seatalk_reader & operator=(default_seatalk_reader &&) = default;
22 virtual ~default_seatalk_reader() {}
24 bool read_message(seatalk::raw & data);
26 protected:
27 virtual void process_message(const seatalk::raw & msg) override;
29 private:
30 bool message_received_;
31 seatalk::raw message_;
36 #endif