GNSS-SDR  0.0.19
An Open Source GNSS Software Defined Receiver
gpx_printer.h
Go to the documentation of this file.
1 /*!
2  * \file gpx_printer.h
3  * \brief Interface of a class that prints PVT information to a gpx file
4  * \author Álvaro Cebrián Juan, 2018. acebrianjuan(at)gmail.com
5  *
6  *
7  * -----------------------------------------------------------------------------
8  *
9  * GNSS-SDR is a Global Navigation Satellite System software-defined receiver.
10  * This file is part of GNSS-SDR.
11  *
12  * Copyright (C) 2010-2020 (see AUTHORS file for a list of contributors)
13  * SPDX-License-Identifier: GPL-3.0-or-later
14  *
15  * -----------------------------------------------------------------------------
16  */
17 
18 
19 #ifndef GNSS_SDR_GPX_PRINTER_H
20 #define GNSS_SDR_GPX_PRINTER_H
21 
22 
23 #include <fstream>
24 #include <string>
25 
26 /** \addtogroup PVT
27  * \{ */
28 /** \addtogroup PVT_libs
29  * \{ */
30 
31 
32 class Pvt_Solution;
33 
34 /*!
35  * \brief Prints PVT information to GPX format file
36  *
37  * See https://www.topografix.com/gpx.asp
38  */
40 {
41 public:
42  explicit Gpx_Printer(const std::string& base_path = ".");
43  ~Gpx_Printer();
44  bool set_headers(const std::string& filename, bool time_tag_name = true);
45  bool print_position(const Pvt_Solution* const position);
46  bool close_file();
47 
48 private:
49  std::ofstream gpx_file;
50  std::string gpx_filename;
51  std::string indent;
52  std::string gpx_base_path;
53  bool positions_printed;
54 };
55 
56 
57 /** \} */
58 /** \} */
59 #endif // GNSS_SDR_GPX_PRINTER_H
Prints PVT information to GPX format file.
Definition: gpx_printer.h:39
Base class for a PVT solution.
Definition: pvt_solution.h:34