25 #ifndef GOBY_MIDDLEWARE_FRONTSEAT_BLUEFIN_BLUEFIN_H
26 #define GOBY_MIDDLEWARE_FRONTSEAT_BLUEFIN_BLUEFIN_H
32 #include <boost/bimap/bimap.hpp>
65 void send_raw_to_frontseat(
const protobuf::Raw& data)
override;
69 bool frontseat_providing_data()
const override {
return frontseat_providing_data_; }
72 void load_nmea_mappings();
73 void initialize_huxley();
75 void remove_from_write_queue();
77 void check_send_heartbeat();
105 bool frontseat_providing_data_;
111 std::deque<goby::util::NMEASentence> out_;
112 std::deque<goby::util::NMEASentence> pending_;
113 bool waiting_for_huxley_;
114 unsigned nmea_demerits_;
115 unsigned nmea_present_fail_count_;
121 TALKER_NOT_DEFINED = 0,
128 SENTENCE_NOT_DEFINED = 0,
196 std::map<std::string, TalkerIDs> talker_id_map_;
197 boost::bimap<std::string, SentenceIDs> sentence_id_map_;
198 std::map<std::string, std::string> description_map_;
204 std::map<protobuf::BluefinExtraCommands::BluefinCommand, protobuf::CommandRequest>
205 outstanding_requests_;
208 std::multimap<goby::time::MicroTime, protobuf::BluefinExtraData::PayloadStatus> payload_status_;
211 std::map<double, int> speed_to_rpm_;