diff --git a/src/nmea_gps/nmea_gps.cxx b/src/nmea_gps/nmea_gps.cxx index 588ccdfb..2e8a09c4 100644 --- a/src/nmea_gps/nmea_gps.cxx +++ b/src/nmea_gps/nmea_gps.cxx @@ -616,3 +616,10 @@ std::string NMEAGPS::__str__() return oss.str(); } + +std::string coord_DD::__str__() +{ + std::ostringstream oss; + oss << latitude << ", " << longitude; + return oss.str(); +} diff --git a/src/nmea_gps/nmea_gps.hpp b/src/nmea_gps/nmea_gps.hpp index 6696c775..b16bde8f 100644 --- a/src/nmea_gps/nmea_gps.hpp +++ b/src/nmea_gps/nmea_gps.hpp @@ -79,6 +79,11 @@ namespace upm { double latitude = 0.0; /** Longitude in decimal degrees */ double longitude = 0.0; + /** + * Provide a string representation of this structure. + * @return String representing coordinates + */ + std::string __str__(); }; /** Satellite structure definition */ diff --git a/src/nmea_gps/nmea_gps.i b/src/nmea_gps/nmea_gps.i index b5308cf8..97529eff 100644 --- a/src/nmea_gps/nmea_gps.i +++ b/src/nmea_gps/nmea_gps.i @@ -13,6 +13,7 @@ JAVA_JNI_LOADLIBRARY(javaupm_nmea_gps) %feature("python:slot", "tp_str", functype="reprfunc") upm::satellite::__str__; %feature("python:slot", "tp_str", functype="reprfunc") upm::nmeatxt::__str__; %feature("python:slot", "tp_str", functype="reprfunc") upm::NMEAGPS::__str__; +%feature("python:slot", "tp_str", functype="reprfunc") upm::coord_DD::__str__; #endif /* END Python syntax */