10 #ifndef CGPSInterface_H
11 #define CGPSInterface_H
21 namespace slam {
class CObservationGPS; }
83 bool isGPS_connected();
87 bool isGPS_signalAcquired();
89 void setSerialPortName(
const std::string &COM_port);
90 std::string getSerialPortName()
const;
93 { m_out_COM = outPort; m_cs_out_COM = csOutPort; }
106 std::string getLastGGA(
bool reset=
true);
112 bool OnConnectionEstablished();
126 void loadConfig_sensorSpecific(
128 const std::string &iniSection );
142 bool setJAVAD_AIM_mode();
145 bool unsetJAVAD_AIM_mode();
179 bool tryToOpenTheCOM();
183 void processBuffer();
187 void processGPSstring(
const std::string &s);
196 void JAVAD_sendMessage(
const char*str,
bool waitForAnswer =
true);
A generic interface for a wide-variety of sensors designed to be used in the application RawLogGrabbe...
uint64_t TTimeStamp
A system independent time type, it holds the the number of 100-nanosecond intervals since January 1...
This class provides simple critical sections functionality.
A parser of NMEA commands, for connecting to a GPS by a serial port.
void setJAVAD_rtk_src_baud(unsigned int baud)
Only used when "m_JAVAD_rtk_src_port" is not empty.
A communications serial port built as an implementation of a utils::CStream.
bool m_useAIMMode
Use this mode for receive RTK corrections from a external source through the primary port...
bool m_AIMConfigured
Indicates if the AIM has been properly set up.
unsigned int m_JAVAD_rtk_src_baud
Only used when "m_JAVAD_rtk_src_port" is not empty.
std::string m_JAVAD_rtk_src_port
If not empty, will send a cmd "set,/par/pos/pd/port,...". Example value: "/dev/ser/b".
void setJAVAD_rtk_format(const std::string &s)
Only used when "m_JAVAD_rtk_src_port" is not empty: format of RTK corrections: "cmr", "rtcm", "rtcm3", etc.
This class allows loading and storing values and vectors of different types from a configuration text...
double m_data_period
The period in seconds which the data should be provided by the GPS.
std::string m_JAVAD_rtk_format
Only used when "m_JAVAD_rtk_src_port" is not empty: format of RTK corrections: "cmr", "rtcm", "rtcm3", etc.
A class used to store a 3D point.
Declares a class derived from "CObservation" that represents a Global Positioning System (GPS) readin...
bool useExternCOM() const
#define DEFINE_GENERIC_SENSOR(class_name)
This declaration must be inserted in all CGenericSensor classes definition, within the class declarat...
mrpt::slam::CObservationGPS m_latestGPS_data
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries.
void setJAVAD_rtk_src_port(const std::string &s)
If not empty, will send a cmd "set,/par/pos/pd/port,...".
bool m_GPS_signalAcquired
mrpt::synch::CCriticalSection * m_cs_out_COM
mrpt::system::TTimeStamp m_last_timestamp
poses::CPoint3D m_sensorPose
std::string m_last_GGA
Used in getLastGGA()
This base class provides a common printf-like method to send debug information to std::cout...
void setExternCOM(CSerialPort *outPort, mrpt::synch::CCriticalSection *csOutPort)
A UTC time-stamp structure for GPS messages.
mrpt::slam::CObservationGPS::TUTCTime m_last_UTC_time