Main MRPT website > C++ reference for MRPT 1.4.0
CGPS_NTRIP.h
Go to the documentation of this file.
1/* +---------------------------------------------------------------------------+
2 | Mobile Robot Programming Toolkit (MRPT) |
3 | http://www.mrpt.org/ |
4 | |
5 | Copyright (c) 2005-2016, Individual contributors, see AUTHORS file |
6 | See: http://www.mrpt.org/Authors - All rights reserved. |
7 | Released under BSD License. See details in http://www.mrpt.org/License |
8 +---------------------------------------------------------------------------+ */
9
10#pragma once
11
15
16namespace mrpt
17{
18 namespace hwdrivers
19 {
20 /** A combination of GPS receiver + NTRIP receiver capable of submitting GGA frames to enable RTCM 3.0.
21 * This class holds instances of two classes, publicly exposed as member variables:
22 * - mrpt::hwdrivers::CGPSInterface gps;
23 * - mrpt::hwdrivers::CNTRIPEmitter ntrip;
24 *
25 * and acts as a "joint sensor", calling both objects' doProcess() inside the doProcess() loop, etc.
26 *
27 * The goal of this class is automatically gather GGA frames from the gps sensor and upload them to the NTRIP server.
28 *
29 * Configuration file format is a combination of the original parameters for both classes, each with
30 * a prefix: "gps_" for CGPSInterface params and "ntrip_" for CNTRIPEmitter.
31 *
32 * \code
33 * PARAMETERS IN THE ".INI"-LIKE CONFIGURATION STRINGS:
34 * -------------------------------------------------------
35 * [supplied_section_name]
36 * gps_COM_port_WIN = COM3
37 * gps_COM_port_LIN = ttyS0
38 * gps_baudRate = 4800 // The baudrate of the communications (typ. 4800 bauds)
39 * gps_pose_x = 0 // 3D position of the sensed point relative to the robot (meters)
40 * gps_pose_y = 0
41 * gps_pose_z = 0
42 * # Other params (see CGPSInterface)
43 *
44 * ntrip_COM_port_WIN = COM1 // Serial port where the NTRIP stream will be dumped to.
45 * ntrip_COM_port_LIN = ttyUSB0
46 * ntrip_baudRate = 38400
47 *
48 * ntrip_server = 143.123.9.129 // NTRIP caster IP
49 * ntrip_port = 2101
50 * ntrip_mountpoint = MYPOINT23
51 * #ntrip_user = pepe // User & password optional.
52 * #ntrip_password = loco
53 *
54 * \endcode
55 *
56 * The next picture summarizes existing MRPT classes related to GPS / GNSS devices (CGPSInterface, CNTRIPEmitter, CGPS_NTRIP):
57 *
58 * <div align=center> <img src="mrpt_gps_classes_usage.png"> </div>
59 *
60 * \note Verbose debug info will be dumped to cout if the environment variable "MRPT_HWDRIVERS_VERBOSE" is set to "1", or if you call CGenericSensor::enableVerbose(true)
61 *
62 * \ingroup mrpt_hwdrivers_grp
63 * \sa CGPSInterface, CNTRIPEmitter
64 */
66 {
68
69 public:
72
73 CGPS_NTRIP(); //!< Constructor
74 virtual ~CGPS_NTRIP(); //!< Destructor
75
76 void doProcess(); // See docs in parent class
77
78 virtual void initialize();
79 protected:
80 /** See the class documentation at the top for expected parameters */
81 void loadConfig_sensorSpecific( const mrpt::utils::CConfigFileBase &configSource, const std::string &iniSection );
82 }; // end class
83
84 } // end namespace
85} // end namespace
#define DEFINE_GENERIC_SENSOR(class_name)
This declaration must be inserted in all CGenericSensor classes definition, within the class declarat...
A combination of GPS receiver + NTRIP receiver capable of submitting GGA frames to enable RTCM 3....
Definition: CGPS_NTRIP.h:66
virtual ~CGPS_NTRIP()
Destructor.
mrpt::hwdrivers::CNTRIPEmitter ntrip
Definition: CGPS_NTRIP.h:71
void doProcess()
This method will be invoked at a minimum rate of "process_rate" (Hz)
virtual void initialize()
This method can or cannot be implemented in the derived class, depending on the need for it.
void loadConfig_sensorSpecific(const mrpt::utils::CConfigFileBase &configSource, const std::string &iniSection)
See the class documentation at the top for expected parameters.
mrpt::hwdrivers::CGPSInterface gps
Definition: CGPS_NTRIP.h:70
A class capable of reading GPS/GNSS/GNSS+IMU receiver data, from a serial port or from any input stre...
A generic interface for a wide-variety of sensors designed to be used in the application RawLogGrabbe...
This "virtual driver" encapsulates a NTRIP client (see CNTRIPClient) but adds the functionality of du...
Definition: CNTRIPEmitter.h:52
This class allows loading and storing values and vectors of different types from a configuration text...
#define HWDRIVERS_IMPEXP
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries.



Page generated by Doxygen 1.9.6 for MRPT 1.4.0 SVN: at Wed Mar 22 04:35:51 UTC 2023