Go to the documentation of this file.
24 #ifndef GOBY_UTIL_LINEBASEDCOMMS_GPS_SENTENCE_H
25 #define GOBY_UTIL_LINEBASEDCOMMS_GPS_SENTENCE_H
27 #include <boost/format.hpp>
28 #include <boost/optional.hpp>
29 #include <boost/units/base_units/metric/knot.hpp>
30 #include <boost/units/systems/angle/degrees.hpp>
31 #include <boost/units/systems/si.hpp>
32 #include <boost/units/systems/temperature/celsius.hpp>
66 boost::optional<goby::time::SystemClock::time_point>
time;
68 boost::optional<boost::units::quantity<boost::units::degree::plane_angle>>
latitude;
69 boost::optional<boost::units::quantity<boost::units::degree::plane_angle>>
longitude;
123 boost::optional<boost::units::quantity<boost::units::degree::plane_angle>>
true_heading;
154 boost::optional<boost::units::quantity<boost::units::degree::plane_angle>>
latitude;
155 boost::optional<boost::units::quantity<boost::units::degree::plane_angle>>
longitude;
156 boost::optional<std::string>
name;
190 boost::optional<std::string>
name;
std::pair< std::string, char > decimal_to_nmea_geo(double decimal, CoordType t)
Convert a decimal degrees latitude or longitude into a pair of NMEA string representation and hemisph...
void parse(const NMEASentence &sentence)
The global namespace for the Goby project.
void parse(const NMEASentence &sentence)
void parse(const NMEASentence &sentence)
boost::optional< boost::units::quantity< boost::units::degree::plane_angle > > longitude
constexpr static int min_size
boost::optional< boost::units::quantity< boost::units::degree::plane_angle > > magnetic_variation
RTE(const NMEASentence &sentence)
void parse(const NMEASentence &sentence)
std::vector< std::string > waypoint_names
@ NavigationReceiverWarning
constexpr static int min_size
boost::optional< boost::units::quantity< boost::units::degree::plane_angle > > true_heading
boost::optional< boost::units::quantity< boost::units::si::velocity > > speed_over_ground
WPL(const NMEASentence &sentence)
RMC(const NMEASentence &sentence)
NMEASentence serialize(std::string talker_id="EC") const
constexpr static int min_size
double nmea_geo_to_decimal(std::string nmea_geo_str, char hemi)
Convert NMEA latitude/longitude string plus hemisphere to a decimal degrees value.
HDT(const NMEASentence &sentence)
boost::optional< int > total_number_sentences
boost::optional< goby::time::SystemClock::time_point > time
constexpr static int size
boost::optional< boost::units::quantity< boost::units::degree::plane_angle > > latitude
std::ostream & operator<<(std::ostream &os, const RMC &rmc)
constexpr static int size
boost::optional< std::string > name
boost::optional< std::string > name
boost::optional< Status > status
boost::optional< boost::units::quantity< boost::units::degree::plane_angle > > latitude
NMEASentence serialize(std::string talker_id="EC") const
NMEASentence serialize(std::string talker_id="GP", int num_fields=min_size) const
bool operator==(const RMC &rmc1, const RMC &rmc2)
boost::optional< int > current_sentence_index
@ ROUTE_TYPE__WORKING_ROUTE
NMEASentence serialize(std::string talker_id="GP") const
boost::optional< boost::units::quantity< boost::units::degree::plane_angle > > course_over_ground
boost::optional< boost::units::quantity< boost::units::degree::plane_angle > > longitude
std::string message() const
constexpr static int min_size