mirror of
https://github.com/gnss-sdr/gnss-sdr
synced 2025-01-15 11:45:47 +00:00
Merge branch 'next' of https://github.com/carlesfernandez/gnss-sdr into next
This commit is contained in:
commit
e6863b371d
@ -3,7 +3,8 @@
|
|||||||
### Improvements in Maintainability:
|
### Improvements in Maintainability:
|
||||||
|
|
||||||
- New CMake option ENABLE_ARMA_NO_DEBUG defines the macro ARMA_NO_DEBUG, which disables all run-time checks, such as bounds checking, in the Armadillo library. This will result in faster code. This option is disabled by default during development, but automatically set to ON if the option ENABLE_PACKAGING is set to ON.
|
- New CMake option ENABLE_ARMA_NO_DEBUG defines the macro ARMA_NO_DEBUG, which disables all run-time checks, such as bounds checking, in the Armadillo library. This will result in faster code. This option is disabled by default during development, but automatically set to ON if the option ENABLE_PACKAGING is set to ON.
|
||||||
- Apply more clang-tidy checks related to readability: readability-avoid-const-params-in-decls, readability-isolate-declaration, readability-redundant-control-flow, readability-uppercase-literal-suffix.
|
- Apply more clang-tidy checks related to readability: readability-avoid-const-params-in-decls, readability-isolate-declaration, readability-redundant-control-flow, readability-uppercase-literal-suffix. Fixed raised warnings.
|
||||||
|
- Fixed cpplint.py build/include_what_you_use, whitespace/tab, whitespace/blank_line errors.
|
||||||
- Add more check options to .clang-tidy file.
|
- Add more check options to .clang-tidy file.
|
||||||
|
|
||||||
|
|
||||||
@ -15,8 +16,14 @@
|
|||||||
### Improvements in Reliability:
|
### Improvements in Reliability:
|
||||||
|
|
||||||
- Decoding of navigation messages no longer rely on implementation defined behavior for shifting left a signed integer.
|
- Decoding of navigation messages no longer rely on implementation defined behavior for shifting left a signed integer.
|
||||||
- Removed usage of functions with insecure API (e.g., strcpy)
|
- Removed usage of functions with insecure API (e.g., strcpy).
|
||||||
- Added clang-tidy checks clang-analyzer-security.*
|
- Added clang-tidy checks clang-analyzer-security.*, clang-analyzer-optin.portability.UnixAPI clang-tidy checks. Fixed raised warnings.
|
||||||
|
|
||||||
|
|
||||||
|
### Improvements in Usability:
|
||||||
|
|
||||||
|
- Improved DLL-PLL binary dump MATLAB/Octave plot script. Old versions removed.
|
||||||
|
- Simplified RTKLIB error log.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -1940,10 +1940,10 @@ int rtklib_pvt_gs::work(int noutput_items, gr_vector_const_void_star& input_item
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
// debug code
|
// debug code
|
||||||
// else
|
// else
|
||||||
// {
|
// {
|
||||||
// DLOG(INFO) << "Internal PVT solver error";
|
// DLOG(INFO) << "Internal PVT solver error";
|
||||||
// }
|
// }
|
||||||
|
|
||||||
// compute on the fly PVT solution
|
// compute on the fly PVT solution
|
||||||
if (flag_compute_pvt_output == true)
|
if (flag_compute_pvt_output == true)
|
||||||
|
@ -39,7 +39,6 @@
|
|||||||
#include <exception> // for exception
|
#include <exception> // for exception
|
||||||
#include <iostream> // for cout, cerr
|
#include <iostream> // for cout, cerr
|
||||||
#include <sstream>
|
#include <sstream>
|
||||||
#include <string>
|
|
||||||
#include <sys/stat.h> // for S_IXUSR | S_IRWXG | S_IRWXO
|
#include <sys/stat.h> // for S_IXUSR | S_IRWXG | S_IRWXO
|
||||||
#include <sys/types.h> // for mode_t
|
#include <sys/types.h> // for mode_t
|
||||||
|
|
||||||
|
@ -35,7 +35,7 @@
|
|||||||
|
|
||||||
#include <fstream> // for ofstream
|
#include <fstream> // for ofstream
|
||||||
#include <memory> // for shared_ptr
|
#include <memory> // for shared_ptr
|
||||||
|
#include <string>
|
||||||
|
|
||||||
class Rtklib_Solver;
|
class Rtklib_Solver;
|
||||||
|
|
||||||
|
@ -35,6 +35,9 @@
|
|||||||
#include "monitor_pvt.h"
|
#include "monitor_pvt.h"
|
||||||
#include "serdes_monitor_pvt.h"
|
#include "serdes_monitor_pvt.h"
|
||||||
#include <boost/asio.hpp>
|
#include <boost/asio.hpp>
|
||||||
|
#include <memory>
|
||||||
|
#include <string>
|
||||||
|
#include <vector>
|
||||||
|
|
||||||
#if BOOST_GREATER_1_65
|
#if BOOST_GREATER_1_65
|
||||||
using b_io_context = boost::asio::io_context;
|
using b_io_context = boost::asio::io_context;
|
||||||
|
@ -43,6 +43,7 @@
|
|||||||
#include <fcntl.h>
|
#include <fcntl.h>
|
||||||
#include <iostream> // for cout, cerr
|
#include <iostream> // for cout, cerr
|
||||||
#include <termios.h>
|
#include <termios.h>
|
||||||
|
#include <utility>
|
||||||
|
|
||||||
#if HAS_STD_FILESYSTEM
|
#if HAS_STD_FILESYSTEM
|
||||||
#include <system_error>
|
#include <system_error>
|
||||||
|
@ -38,6 +38,7 @@
|
|||||||
#include <fstream> // for std::ofstream
|
#include <fstream> // for std::ofstream
|
||||||
#include <map> // for std::map
|
#include <map> // for std::map
|
||||||
#include <memory> // std::shared_ptr
|
#include <memory> // std::shared_ptr
|
||||||
|
#include <string>
|
||||||
|
|
||||||
class Galileo_Ephemeris;
|
class Galileo_Ephemeris;
|
||||||
class Glonass_Gnav_Ephemeris;
|
class Glonass_Gnav_Ephemeris;
|
||||||
|
@ -926,7 +926,7 @@ bool Rtklib_Solver::get_PVT(const std::map<int, Gnss_Synchro> &gnss_observables_
|
|||||||
if (result == 0)
|
if (result == 0)
|
||||||
{
|
{
|
||||||
LOG(INFO) << "RTKLIB rtkpos error: " << rtk_.errbuf;
|
LOG(INFO) << "RTKLIB rtkpos error: " << rtk_.errbuf;
|
||||||
rtk_.neb = 0; //clear error buffer to avoid repeating the error message
|
rtk_.neb = 0; // clear error buffer to avoid repeating the error message
|
||||||
this->set_time_offset_s(0.0); // reset rx time estimation
|
this->set_time_offset_s(0.0); // reset rx time estimation
|
||||||
this->set_num_valid_observations(0);
|
this->set_num_valid_observations(0);
|
||||||
}
|
}
|
||||||
|
@ -35,6 +35,8 @@
|
|||||||
#include "monitor_pvt.h"
|
#include "monitor_pvt.h"
|
||||||
#include "monitor_pvt.pb.h" // file created by Protocol Buffers at compile time
|
#include "monitor_pvt.pb.h" // file created by Protocol Buffers at compile time
|
||||||
#include <memory>
|
#include <memory>
|
||||||
|
#include <string>
|
||||||
|
#include <utility>
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief This class implements serialization and deserialization of
|
* \brief This class implements serialization and deserialization of
|
||||||
|
@ -62,6 +62,7 @@
|
|||||||
#include <fstream>
|
#include <fstream>
|
||||||
#include <iostream>
|
#include <iostream>
|
||||||
#include <sstream>
|
#include <sstream>
|
||||||
|
#include <utility>
|
||||||
|
|
||||||
|
|
||||||
pcps_opencl_acquisition_cc_sptr pcps_make_opencl_acquisition_cc(
|
pcps_opencl_acquisition_cc_sptr pcps_make_opencl_acquisition_cc(
|
||||||
|
@ -61,6 +61,7 @@
|
|||||||
#include "opencl/cl.hpp"
|
#include "opencl/cl.hpp"
|
||||||
#include <cstdint>
|
#include <cstdint>
|
||||||
#include <fstream>
|
#include <fstream>
|
||||||
|
#include <memory> // for weak_ptr
|
||||||
#include <string>
|
#include <string>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
||||||
|
@ -60,6 +60,7 @@
|
|||||||
#include <cassert>
|
#include <cassert>
|
||||||
#include <fstream>
|
#include <fstream>
|
||||||
#include <functional>
|
#include <functional>
|
||||||
|
#include <memory> // for weak_ptr
|
||||||
#include <string>
|
#include <string>
|
||||||
#include <utility>
|
#include <utility>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
@ -57,6 +57,7 @@
|
|||||||
#include <gnuradio/fft/fft.h>
|
#include <gnuradio/fft/fft.h>
|
||||||
#include <gnuradio/gr_complex.h>
|
#include <gnuradio/gr_complex.h>
|
||||||
#include <fstream>
|
#include <fstream>
|
||||||
|
#include <memory> // for weak_ptr
|
||||||
#include <string>
|
#include <string>
|
||||||
#include <utility>
|
#include <utility>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
@ -32,6 +32,7 @@
|
|||||||
#include "interleaved_byte_to_complex_byte.h"
|
#include "interleaved_byte_to_complex_byte.h"
|
||||||
#include <gnuradio/io_signature.h>
|
#include <gnuradio/io_signature.h>
|
||||||
#include <volk/volk.h>
|
#include <volk/volk.h>
|
||||||
|
#include <algorithm> // for max
|
||||||
|
|
||||||
|
|
||||||
interleaved_byte_to_complex_byte_sptr make_interleaved_byte_to_complex_byte()
|
interleaved_byte_to_complex_byte_sptr make_interleaved_byte_to_complex_byte()
|
||||||
|
@ -32,6 +32,7 @@
|
|||||||
#include "interleaved_byte_to_complex_short.h"
|
#include "interleaved_byte_to_complex_short.h"
|
||||||
#include <gnuradio/io_signature.h>
|
#include <gnuradio/io_signature.h>
|
||||||
#include <volk/volk.h>
|
#include <volk/volk.h>
|
||||||
|
#include <algorithm> // for max
|
||||||
|
|
||||||
|
|
||||||
interleaved_byte_to_complex_short_sptr make_interleaved_byte_to_complex_short()
|
interleaved_byte_to_complex_short_sptr make_interleaved_byte_to_complex_short()
|
||||||
|
@ -32,6 +32,7 @@
|
|||||||
#include "interleaved_short_to_complex_short.h"
|
#include "interleaved_short_to_complex_short.h"
|
||||||
#include <gnuradio/io_signature.h>
|
#include <gnuradio/io_signature.h>
|
||||||
#include <volk/volk.h>
|
#include <volk/volk.h>
|
||||||
|
#include <algorithm> // for max
|
||||||
|
|
||||||
|
|
||||||
interleaved_short_to_complex_short_sptr make_interleaved_short_to_complex_short()
|
interleaved_short_to_complex_short_sptr make_interleaved_short_to_complex_short()
|
||||||
|
@ -34,7 +34,7 @@
|
|||||||
#include "notch_lite_cc.h"
|
#include "notch_lite_cc.h"
|
||||||
#include <boost/lexical_cast.hpp>
|
#include <boost/lexical_cast.hpp>
|
||||||
#include <glog/logging.h>
|
#include <glog/logging.h>
|
||||||
#include <cmath>
|
#include <algorithm> // for max
|
||||||
|
|
||||||
|
|
||||||
NotchFilterLite::NotchFilterLite(ConfigurationInterface* configuration, const std::string& role,
|
NotchFilterLite::NotchFilterLite(ConfigurationInterface* configuration, const std::string& role,
|
||||||
|
@ -32,7 +32,7 @@
|
|||||||
#include <boost/math/distributions/chi_squared.hpp>
|
#include <boost/math/distributions/chi_squared.hpp>
|
||||||
#include <gnuradio/io_signature.h>
|
#include <gnuradio/io_signature.h>
|
||||||
#include <volk/volk.h>
|
#include <volk/volk.h>
|
||||||
#include <cmath>
|
#include <algorithm>
|
||||||
#include <cstring>
|
#include <cstring>
|
||||||
|
|
||||||
|
|
||||||
|
@ -32,7 +32,7 @@
|
|||||||
#include <boost/math/distributions/chi_squared.hpp>
|
#include <boost/math/distributions/chi_squared.hpp>
|
||||||
#include <gnuradio/io_signature.h>
|
#include <gnuradio/io_signature.h>
|
||||||
#include <volk/volk.h>
|
#include <volk/volk.h>
|
||||||
#include <cmath>
|
#include <algorithm>
|
||||||
#include <cstring>
|
#include <cstring>
|
||||||
|
|
||||||
|
|
||||||
|
@ -32,7 +32,7 @@
|
|||||||
#include <boost/math/distributions/chi_squared.hpp>
|
#include <boost/math/distributions/chi_squared.hpp>
|
||||||
#include <gnuradio/io_signature.h>
|
#include <gnuradio/io_signature.h>
|
||||||
#include <volk/volk.h>
|
#include <volk/volk.h>
|
||||||
#include <cmath>
|
#include <algorithm>
|
||||||
|
|
||||||
|
|
||||||
pulse_blanking_cc_sptr make_pulse_blanking_cc(float pfa, int32_t length_,
|
pulse_blanking_cc_sptr make_pulse_blanking_cc(float pfa, int32_t length_,
|
||||||
|
@ -35,6 +35,7 @@
|
|||||||
#include "gnss_signal_processing.h"
|
#include "gnss_signal_processing.h"
|
||||||
#include <memory>
|
#include <memory>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
#include <utility>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
||||||
|
|
||||||
|
@ -36,6 +36,7 @@
|
|||||||
#include "gnss_signal_processing.h"
|
#include "gnss_signal_processing.h"
|
||||||
#include <gnuradio/gr_complex.h>
|
#include <gnuradio/gr_complex.h>
|
||||||
#include <memory>
|
#include <memory>
|
||||||
|
#include <utility>
|
||||||
|
|
||||||
|
|
||||||
void galileo_e5_a_code_gen_complex_primary(gsl::span<std::complex<float>> _dest, int32_t _prn, const std::array<char, 3>& _Signal)
|
void galileo_e5_a_code_gen_complex_primary(gsl::span<std::complex<float>> _dest, int32_t _prn, const std::array<char, 3>& _Signal)
|
||||||
|
@ -516,18 +516,18 @@ void cart2utm(const arma::vec &r_eb_e, int zone, arma::vec &r_enu)
|
|||||||
// Erster Band, Springer Verlag
|
// Erster Band, Springer Verlag
|
||||||
//
|
//
|
||||||
// Explanation of variables used:
|
// Explanation of variables used:
|
||||||
// f flattening of ellipsoid
|
// r flattening of ellipsoid
|
||||||
// a semi major axis in m
|
// a semi major axis in m
|
||||||
// m0 1 - scale at central meridian; for UTM 0.0004
|
// m0 1 - scale at central meridian; for UTM 0.0004
|
||||||
// Q_n normalized meridian quadrant
|
// Q_n normalized meridian quadrant
|
||||||
// E0 Easting of central meridian
|
// E0 Easting of central meridian
|
||||||
// L0 Longitude of central meridian
|
// L0 Longitude of central meridian
|
||||||
// bg constants for ellipsoidal geogr. to spherical geogr.
|
// bg constants for ellipsoidal geogr. to spherical geogr.
|
||||||
// gb constants for spherical geogr. to ellipsoidal geogr.
|
// gb constants for spherical geogr. to ellipsoidal geogr.
|
||||||
// gtu constants for ellipsoidal N, E to spherical N, E
|
// gtu constants for ellipsoidal N, E to spherical N, E
|
||||||
// utg constants for spherical N, E to ellipoidal N, E
|
// utg constants for spherical N, E to ellipoidal N, E
|
||||||
// tolutm tolerance for utm, 1.2E-10*meridian quadrant
|
// tolutm tolerance for utm, 1.2E-10*meridian quadrant
|
||||||
// tolgeo tolerance for geographical, 0.00040 second of arc
|
// tolgeo tolerance for geographical, 0.00040 second of arc
|
||||||
//
|
//
|
||||||
// B, L refer to latitude and longitude. Southern latitude is negative
|
// B, L refer to latitude and longitude. Southern latitude is negative
|
||||||
// International ellipsoid of 1924, valid for ED50
|
// International ellipsoid of 1924, valid for ED50
|
||||||
|
@ -68,7 +68,6 @@ extern "C"
|
|||||||
{
|
{
|
||||||
clFFT_Forward = -1,
|
clFFT_Forward = -1,
|
||||||
clFFT_Inverse = 1
|
clFFT_Inverse = 1
|
||||||
|
|
||||||
} clFFT_Direction;
|
} clFFT_Direction;
|
||||||
|
|
||||||
// XForm dimension
|
// XForm dimension
|
||||||
@ -77,7 +76,6 @@ extern "C"
|
|||||||
clFFT_1D = 0,
|
clFFT_1D = 0,
|
||||||
clFFT_2D = 1,
|
clFFT_2D = 1,
|
||||||
clFFT_3D = 3
|
clFFT_3D = 3
|
||||||
|
|
||||||
} clFFT_Dimension;
|
} clFFT_Dimension;
|
||||||
|
|
||||||
// XForm Data type
|
// XForm Data type
|
||||||
|
@ -112,38 +112,38 @@ static string baseKernels = string(
|
|||||||
"\n"
|
"\n"
|
||||||
"#define fftKernel8(a,dir) \\\n"
|
"#define fftKernel8(a,dir) \\\n"
|
||||||
"{ \\\n"
|
"{ \\\n"
|
||||||
" const float2 w1 = (float2)(0x1.6a09e6p-1f, dir*0x1.6a09e6p-1f); \\\n"
|
" const float2 w1 = (float2)(0x1.6a09e6p-1f, dir*0x1.6a09e6p-1f); \\\n"
|
||||||
" const float2 w3 = (float2)(-0x1.6a09e6p-1f, dir*0x1.6a09e6p-1f); \\\n"
|
" const float2 w3 = (float2)(-0x1.6a09e6p-1f, dir*0x1.6a09e6p-1f); \\\n"
|
||||||
" float2 c; \\\n"
|
" float2 c; \\\n"
|
||||||
" fftKernel2S((a)[0], (a)[4], dir); \\\n"
|
" fftKernel2S((a)[0], (a)[4], dir); \\\n"
|
||||||
" fftKernel2S((a)[1], (a)[5], dir); \\\n"
|
" fftKernel2S((a)[1], (a)[5], dir); \\\n"
|
||||||
" fftKernel2S((a)[2], (a)[6], dir); \\\n"
|
" fftKernel2S((a)[2], (a)[6], dir); \\\n"
|
||||||
" fftKernel2S((a)[3], (a)[7], dir); \\\n"
|
" fftKernel2S((a)[3], (a)[7], dir); \\\n"
|
||||||
" (a)[5] = complexMul(w1, (a)[5]); \\\n"
|
" (a)[5] = complexMul(w1, (a)[5]); \\\n"
|
||||||
" (a)[6] = (float2)(dir)*(conjTransp((a)[6])); \\\n"
|
" (a)[6] = (float2)(dir)*(conjTransp((a)[6])); \\\n"
|
||||||
" (a)[7] = complexMul(w3, (a)[7]); \\\n"
|
" (a)[7] = complexMul(w3, (a)[7]); \\\n"
|
||||||
" fftKernel2S((a)[0], (a)[2], dir); \\\n"
|
" fftKernel2S((a)[0], (a)[2], dir); \\\n"
|
||||||
" fftKernel2S((a)[1], (a)[3], dir); \\\n"
|
" fftKernel2S((a)[1], (a)[3], dir); \\\n"
|
||||||
" fftKernel2S((a)[4], (a)[6], dir); \\\n"
|
" fftKernel2S((a)[4], (a)[6], dir); \\\n"
|
||||||
" fftKernel2S((a)[5], (a)[7], dir); \\\n"
|
" fftKernel2S((a)[5], (a)[7], dir); \\\n"
|
||||||
" (a)[3] = (float2)(dir)*(conjTransp((a)[3])); \\\n"
|
" (a)[3] = (float2)(dir)*(conjTransp((a)[3])); \\\n"
|
||||||
" (a)[7] = (float2)(dir)*(conjTransp((a)[7])); \\\n"
|
" (a)[7] = (float2)(dir)*(conjTransp((a)[7])); \\\n"
|
||||||
" fftKernel2S((a)[0], (a)[1], dir); \\\n"
|
" fftKernel2S((a)[0], (a)[1], dir); \\\n"
|
||||||
" fftKernel2S((a)[2], (a)[3], dir); \\\n"
|
" fftKernel2S((a)[2], (a)[3], dir); \\\n"
|
||||||
" fftKernel2S((a)[4], (a)[5], dir); \\\n"
|
" fftKernel2S((a)[4], (a)[5], dir); \\\n"
|
||||||
" fftKernel2S((a)[6], (a)[7], dir); \\\n"
|
" fftKernel2S((a)[6], (a)[7], dir); \\\n"
|
||||||
" bitreverse8((a)); \\\n"
|
" bitreverse8((a)); \\\n"
|
||||||
"}\n"
|
"}\n"
|
||||||
"\n"
|
"\n"
|
||||||
"#define bitreverse4x4(a) \\\n"
|
"#define bitreverse4x4(a) \\\n"
|
||||||
"{ \\\n"
|
"{ \\\n"
|
||||||
" float2 c; \\\n"
|
" float2 c; \\\n"
|
||||||
" c = (a)[1]; (a)[1] = (a)[4]; (a)[4] = c; \\\n"
|
" c = (a)[1]; (a)[1] = (a)[4]; (a)[4] = c; \\\n"
|
||||||
" c = (a)[2]; (a)[2] = (a)[8]; (a)[8] = c; \\\n"
|
" c = (a)[2]; (a)[2] = (a)[8]; (a)[8] = c; \\\n"
|
||||||
" c = (a)[3]; (a)[3] = (a)[12]; (a)[12] = c; \\\n"
|
" c = (a)[3]; (a)[3] = (a)[12]; (a)[12] = c; \\\n"
|
||||||
" c = (a)[6]; (a)[6] = (a)[9]; (a)[9] = c; \\\n"
|
" c = (a)[6]; (a)[6] = (a)[9]; (a)[9] = c; \\\n"
|
||||||
" c = (a)[7]; (a)[7] = (a)[13]; (a)[13] = c; \\\n"
|
" c = (a)[7]; (a)[7] = (a)[13]; (a)[13] = c; \\\n"
|
||||||
" c = (a)[11]; (a)[11] = (a)[14]; (a)[14] = c; \\\n"
|
" c = (a)[11]; (a)[11] = (a)[14]; (a)[14] = c; \\\n"
|
||||||
"}\n"
|
"}\n"
|
||||||
"\n"
|
"\n"
|
||||||
"#define fftKernel16(a,dir) \\\n"
|
"#define fftKernel16(a,dir) \\\n"
|
||||||
@ -227,21 +227,21 @@ static string twistKernelInterleaved = string(
|
|||||||
" float2 a, w; \\\n"
|
" float2 a, w; \\\n"
|
||||||
" float ang; \\\n"
|
" float ang; \\\n"
|
||||||
" unsigned int j; \\\n"
|
" unsigned int j; \\\n"
|
||||||
" unsigned int i = get_global_id(0); \\\n"
|
" unsigned int i = get_global_id(0); \\\n"
|
||||||
" unsigned int startIndex = i; \\\n"
|
" unsigned int startIndex = i; \\\n"
|
||||||
" \\\n"
|
" \\\n"
|
||||||
" if(i < numCols) \\\n"
|
" if(i < numCols) \\\n"
|
||||||
" { \\\n"
|
" { \\\n"
|
||||||
" for(j = 0; j < numRowsToProcess; j++) \\\n"
|
" for(j = 0; j < numRowsToProcess; j++) \\\n"
|
||||||
" { \\\n"
|
" { \\\n"
|
||||||
" a = in[startIndex]; \\\n"
|
" a = in[startIndex]; \\\n"
|
||||||
" ang = 2.0f * M_PI * dir * i * (startRow + j) / N; \\\n"
|
" ang = 2.0f * M_PI * dir * i * (startRow + j) / N; \\\n"
|
||||||
" w = (float2)(native_cos(ang), native_sin(ang)); \\\n"
|
" w = (float2)(native_cos(ang), native_sin(ang)); \\\n"
|
||||||
" a = complexMul(a, w); \\\n"
|
" a = complexMul(a, w); \\\n"
|
||||||
" in[startIndex] = a; \\\n"
|
" in[startIndex] = a; \\\n"
|
||||||
" startIndex += numCols; \\\n"
|
" startIndex += numCols; \\\n"
|
||||||
" } \\\n"
|
" } \\\n"
|
||||||
" } \\\n"
|
" } \\\n"
|
||||||
"} \\\n");
|
"} \\\n");
|
||||||
|
|
||||||
static string twistKernelPlannar = string(
|
static string twistKernelPlannar = string(
|
||||||
@ -251,22 +251,22 @@ static string twistKernelPlannar = string(
|
|||||||
" float2 a, w; \\\n"
|
" float2 a, w; \\\n"
|
||||||
" float ang; \\\n"
|
" float ang; \\\n"
|
||||||
" unsigned int j; \\\n"
|
" unsigned int j; \\\n"
|
||||||
" unsigned int i = get_global_id(0); \\\n"
|
" unsigned int i = get_global_id(0); \\\n"
|
||||||
" unsigned int startIndex = i; \\\n"
|
" unsigned int startIndex = i; \\\n"
|
||||||
" \\\n"
|
" \\\n"
|
||||||
" if(i < numCols) \\\n"
|
" if(i < numCols) \\\n"
|
||||||
" { \\\n"
|
" { \\\n"
|
||||||
" for(j = 0; j < numRowsToProcess; j++) \\\n"
|
" for(j = 0; j < numRowsToProcess; j++) \\\n"
|
||||||
" { \\\n"
|
" { \\\n"
|
||||||
" a = (float2)(in_real[startIndex], in_imag[startIndex]); \\\n"
|
" a = (float2)(in_real[startIndex], in_imag[startIndex]); \\\n"
|
||||||
" ang = 2.0f * M_PI * dir * i * (startRow + j) / N; \\\n"
|
" ang = 2.0f * M_PI * dir * i * (startRow + j) / N; \\\n"
|
||||||
" w = (float2)(native_cos(ang), native_sin(ang)); \\\n"
|
" w = (float2)(native_cos(ang), native_sin(ang)); \\\n"
|
||||||
" a = complexMul(a, w); \\\n"
|
" a = complexMul(a, w); \\\n"
|
||||||
" in_real[startIndex] = a.x; \\\n"
|
" in_real[startIndex] = a.x; \\\n"
|
||||||
" in_imag[startIndex] = a.y; \\\n"
|
" in_imag[startIndex] = a.y; \\\n"
|
||||||
" startIndex += numCols; \\\n"
|
" startIndex += numCols; \\\n"
|
||||||
" } \\\n"
|
" } \\\n"
|
||||||
" } \\\n"
|
" } \\\n"
|
||||||
"} \\\n");
|
"} \\\n");
|
||||||
|
|
||||||
|
|
||||||
|
@ -77,7 +77,7 @@ obsd_t insert_obs_to_rtklib(obsd_t& rtklib_obs, const Gnss_Synchro& gnss_synchro
|
|||||||
}
|
}
|
||||||
auto CN0_dB_Hz = static_cast<unsigned char>(std::round(CN0_dB_Hz_est / 0.25));
|
auto CN0_dB_Hz = static_cast<unsigned char>(std::round(CN0_dB_Hz_est / 0.25));
|
||||||
rtklib_obs.SNR[band] = CN0_dB_Hz;
|
rtklib_obs.SNR[band] = CN0_dB_Hz;
|
||||||
//Galileo is the third satellite system for RTKLIB, so, add the required offset to discriminate Galileo ephemeris
|
// Galileo is the third satellite system for RTKLIB, so, add the required offset to discriminate Galileo ephemeris
|
||||||
switch (gnss_synchro.System)
|
switch (gnss_synchro.System)
|
||||||
{
|
{
|
||||||
case 'G':
|
case 'G':
|
||||||
@ -107,22 +107,21 @@ obsd_t insert_obs_to_rtklib(obsd_t& rtklib_obs, const Gnss_Synchro& gnss_synchro
|
|||||||
rtklib_obs.sat = gnss_synchro.PRN;
|
rtklib_obs.sat = gnss_synchro.PRN;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Mote that BeiDou week numbers do not need adjustment for foreseeable future. Consider change
|
// Note that BeiDou week numbers do not need adjustment for foreseeable future. Consider change
|
||||||
// to more elegant solution
|
// to more elegant solution
|
||||||
// if(gnss_synchro.System == 'C')
|
// if(gnss_synchro.System == 'C')
|
||||||
// {
|
// {
|
||||||
// rtklib_obs.time = bdt2gpst(bdt2time(week, gnss_synchro.RX_time));
|
// rtklib_obs.time = bdt2gpst(bdt2time(week, gnss_synchro.RX_time));
|
||||||
// }
|
// }
|
||||||
// else
|
// else
|
||||||
// {
|
// {
|
||||||
// rtklib_obs.time = gpst2time(adjgpsweek(week), gnss_synchro.RX_time);
|
// rtklib_obs.time = gpst2time(adjgpsweek(week), gnss_synchro.RX_time);
|
||||||
// }
|
// }
|
||||||
//
|
//
|
||||||
rtklib_obs.time = gpst2time(adjgpsweek(week), gnss_synchro.RX_time);
|
rtklib_obs.time = gpst2time(adjgpsweek(week), gnss_synchro.RX_time);
|
||||||
//account for the TOW crossover transitory in the first 18 seconds where the week is not yet updated!
|
// account for the TOW crossover transitory in the first 18 seconds where the week is not yet updated!
|
||||||
if (gnss_synchro.RX_time < 18.0)
|
if (gnss_synchro.RX_time < 18.0)
|
||||||
{
|
{
|
||||||
//p_time += boost::posix_time::seconds(604800);
|
|
||||||
rtklib_obs.time = timeadd(rtklib_obs.time, 604800);
|
rtklib_obs.time = timeadd(rtklib_obs.time, 604800);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -130,6 +129,7 @@ obsd_t insert_obs_to_rtklib(obsd_t& rtklib_obs, const Gnss_Synchro& gnss_synchro
|
|||||||
return rtklib_obs;
|
return rtklib_obs;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
geph_t eph_to_rtklib(const Glonass_Gnav_Ephemeris& glonass_gnav_eph, const Glonass_Gnav_Utc_Model& gnav_clock_model)
|
geph_t eph_to_rtklib(const Glonass_Gnav_Ephemeris& glonass_gnav_eph, const Glonass_Gnav_Utc_Model& gnav_clock_model)
|
||||||
{
|
{
|
||||||
double week;
|
double week;
|
||||||
@ -174,7 +174,7 @@ eph_t eph_to_rtklib(const Galileo_Ephemeris& gal_eph)
|
|||||||
{
|
{
|
||||||
eph_t rtklib_sat = {0, 0, 0, 0, 0, 0, 0, 0, {0, 0}, {0, 0}, {0, 0}, 0.0, 0.0, 0.0, 0.0, 0.0,
|
eph_t rtklib_sat = {0, 0, 0, 0, 0, 0, 0, 0, {0, 0}, {0, 0}, {0, 0}, 0.0, 0.0, 0.0, 0.0, 0.0,
|
||||||
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, {}, {}, 0.0, 0.0};
|
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, {}, {}, 0.0, 0.0};
|
||||||
//Galileo is the third satellite system for RTKLIB, so, add the required offset to discriminate Galileo ephemeris
|
// Galileo is the third satellite system for RTKLIB, so, add the required offset to discriminate Galileo ephemeris
|
||||||
rtklib_sat.sat = gal_eph.i_satellite_PRN + NSATGPS + NSATGLO;
|
rtklib_sat.sat = gal_eph.i_satellite_PRN + NSATGPS + NSATGLO;
|
||||||
rtklib_sat.A = gal_eph.A_1 * gal_eph.A_1;
|
rtklib_sat.A = gal_eph.A_1 * gal_eph.A_1;
|
||||||
rtklib_sat.M0 = gal_eph.M0_1;
|
rtklib_sat.M0 = gal_eph.M0_1;
|
||||||
@ -185,8 +185,8 @@ eph_t eph_to_rtklib(const Galileo_Ephemeris& gal_eph)
|
|||||||
rtklib_sat.i0 = gal_eph.i_0_2;
|
rtklib_sat.i0 = gal_eph.i_0_2;
|
||||||
rtklib_sat.idot = gal_eph.iDot_2;
|
rtklib_sat.idot = gal_eph.iDot_2;
|
||||||
rtklib_sat.e = gal_eph.e_1;
|
rtklib_sat.e = gal_eph.e_1;
|
||||||
rtklib_sat.Adot = 0; //only in CNAV;
|
rtklib_sat.Adot = 0; // only in CNAV;
|
||||||
rtklib_sat.ndot = 0; //only in CNAV;
|
rtklib_sat.ndot = 0; // only in CNAV;
|
||||||
|
|
||||||
rtklib_sat.week = adjgpsweek(gal_eph.WN_5); /* week of tow */
|
rtklib_sat.week = adjgpsweek(gal_eph.WN_5); /* week of tow */
|
||||||
rtklib_sat.cic = gal_eph.C_ic_4;
|
rtklib_sat.cic = gal_eph.C_ic_4;
|
||||||
@ -243,8 +243,8 @@ eph_t eph_to_rtklib(const Gps_Ephemeris& gps_eph)
|
|||||||
rtklib_sat.i0 = gps_eph.d_i_0;
|
rtklib_sat.i0 = gps_eph.d_i_0;
|
||||||
rtklib_sat.idot = gps_eph.d_IDOT;
|
rtklib_sat.idot = gps_eph.d_IDOT;
|
||||||
rtklib_sat.e = gps_eph.d_e_eccentricity;
|
rtklib_sat.e = gps_eph.d_e_eccentricity;
|
||||||
rtklib_sat.Adot = 0; //only in CNAV;
|
rtklib_sat.Adot = 0; // only in CNAV;
|
||||||
rtklib_sat.ndot = 0; //only in CNAV;
|
rtklib_sat.ndot = 0; // only in CNAV;
|
||||||
|
|
||||||
rtklib_sat.week = adjgpsweek(gps_eph.i_GPS_week); /* week of tow */
|
rtklib_sat.week = adjgpsweek(gps_eph.i_GPS_week); /* week of tow */
|
||||||
rtklib_sat.cic = gps_eph.d_Cic;
|
rtklib_sat.cic = gps_eph.d_Cic;
|
||||||
@ -301,14 +301,14 @@ eph_t eph_to_rtklib(const Beidou_Dnav_Ephemeris& bei_eph)
|
|||||||
rtklib_sat.i0 = bei_eph.d_i_0;
|
rtklib_sat.i0 = bei_eph.d_i_0;
|
||||||
rtklib_sat.idot = bei_eph.d_IDOT;
|
rtklib_sat.idot = bei_eph.d_IDOT;
|
||||||
rtklib_sat.e = bei_eph.d_eccentricity;
|
rtklib_sat.e = bei_eph.d_eccentricity;
|
||||||
rtklib_sat.Adot = 0; //only in CNAV;
|
rtklib_sat.Adot = 0; // only in CNAV;
|
||||||
rtklib_sat.ndot = 0; //only in CNAV;
|
rtklib_sat.ndot = 0; // only in CNAV;
|
||||||
|
|
||||||
rtklib_sat.svh = bei_eph.i_SV_health;
|
rtklib_sat.svh = bei_eph.i_SV_health;
|
||||||
rtklib_sat.sva = bei_eph.i_SV_accuracy;
|
rtklib_sat.sva = bei_eph.i_SV_accuracy;
|
||||||
|
|
||||||
rtklib_sat.code = bei_eph.i_sig_type; /*B1I data*/
|
rtklib_sat.code = bei_eph.i_sig_type; /* B1I data */
|
||||||
rtklib_sat.flag = bei_eph.i_nav_type; /*MEO/IGSO satellite*/
|
rtklib_sat.flag = bei_eph.i_nav_type; /* MEO/IGSO satellite */
|
||||||
rtklib_sat.iode = static_cast<int32_t>(bei_eph.d_AODE); /* AODE */
|
rtklib_sat.iode = static_cast<int32_t>(bei_eph.d_AODE); /* AODE */
|
||||||
rtklib_sat.iodc = static_cast<int32_t>(bei_eph.d_AODC); /* AODC */
|
rtklib_sat.iodc = static_cast<int32_t>(bei_eph.d_AODC); /* AODC */
|
||||||
|
|
||||||
@ -374,8 +374,8 @@ eph_t eph_to_rtklib(const Gps_CNAV_Ephemeris& gps_cnav_eph)
|
|||||||
rtklib_sat.i0 = gps_cnav_eph.d_i_0;
|
rtklib_sat.i0 = gps_cnav_eph.d_i_0;
|
||||||
rtklib_sat.idot = gps_cnav_eph.d_IDOT;
|
rtklib_sat.idot = gps_cnav_eph.d_IDOT;
|
||||||
rtklib_sat.e = gps_cnav_eph.d_e_eccentricity;
|
rtklib_sat.e = gps_cnav_eph.d_e_eccentricity;
|
||||||
rtklib_sat.Adot = gps_cnav_eph.d_A_DOT; //only in CNAV;
|
rtklib_sat.Adot = gps_cnav_eph.d_A_DOT; // only in CNAV;
|
||||||
rtklib_sat.ndot = gps_cnav_eph.d_DELTA_DOT_N; //only in CNAV;
|
rtklib_sat.ndot = gps_cnav_eph.d_DELTA_DOT_N; // only in CNAV;
|
||||||
|
|
||||||
rtklib_sat.week = adjgpsweek(gps_cnav_eph.i_GPS_week); /* week of tow */
|
rtklib_sat.week = adjgpsweek(gps_cnav_eph.i_GPS_week); /* week of tow */
|
||||||
rtklib_sat.cic = gps_cnav_eph.d_Cic;
|
rtklib_sat.cic = gps_cnav_eph.d_Cic;
|
||||||
|
@ -236,8 +236,8 @@ double prange(const obsd_t *obs, const nav_t *nav, const double *azel,
|
|||||||
|
|
||||||
//CHECK IF IT IS STILL NEEDED
|
//CHECK IF IT IS STILL NEEDED
|
||||||
if (opt->ionoopt == IONOOPT_IFLC)
|
if (opt->ionoopt == IONOOPT_IFLC)
|
||||||
{ /* dual-frequency */
|
{
|
||||||
|
/* dual-frequency */
|
||||||
if (P1 == 0.0 || P2 == 0.0)
|
if (P1 == 0.0 || P2 == 0.0)
|
||||||
{
|
{
|
||||||
return 0.0;
|
return 0.0;
|
||||||
|
@ -1689,7 +1689,6 @@ int res_ppp(int iter __attribute__((unused)), const obsd_t *obs, int n, const do
|
|||||||
|
|
||||||
for (j = 0; j < 2; j++)
|
for (j = 0; j < 2; j++)
|
||||||
{ /* for phase and code */
|
{ /* for phase and code */
|
||||||
|
|
||||||
if (meas[j] == 0.0)
|
if (meas[j] == 0.0)
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
|
@ -79,6 +79,7 @@
|
|||||||
#define GNSS_SDR_RTKLIB_RTKCMN_H_
|
#define GNSS_SDR_RTKLIB_RTKCMN_H_
|
||||||
|
|
||||||
#include "rtklib.h"
|
#include "rtklib.h"
|
||||||
|
#include <string>
|
||||||
|
|
||||||
|
|
||||||
/* coordinate rotation matrix ------------------------------------------------*/
|
/* coordinate rotation matrix ------------------------------------------------*/
|
||||||
|
@ -1657,7 +1657,6 @@ int ddres(rtk_t *rtk, const nav_t *nav, double dt, const double *x,
|
|||||||
}
|
}
|
||||||
for (m = 0; m < 4; m++)
|
for (m = 0; m < 4; m++)
|
||||||
{ /* m=0:gps/qzs/sbs, 1:glo, 2:gal, 3:bds */
|
{ /* m=0:gps/qzs/sbs, 1:glo, 2:gal, 3:bds */
|
||||||
|
|
||||||
for (f = opt->mode > PMODE_DGPS ? 0 : nf; f < nf * 2; f++)
|
for (f = opt->mode > PMODE_DGPS ? 0 : nf; f < nf * 2; f++)
|
||||||
{
|
{
|
||||||
/* search reference satellite with highest elevation */
|
/* search reference satellite with highest elevation */
|
||||||
@ -2863,7 +2862,6 @@ int rtkpos(rtk_t *rtk, const obsd_t *obs, int n, const nav_t *nav)
|
|||||||
}
|
}
|
||||||
if (opt->mode == PMODE_MOVEB)
|
if (opt->mode == PMODE_MOVEB)
|
||||||
{ /* moving baseline */
|
{ /* moving baseline */
|
||||||
|
|
||||||
/* estimate position/velocity of base station */
|
/* estimate position/velocity of base station */
|
||||||
if (!pntpos(obs + nu, nr, nav, &rtk->opt, &solb, nullptr, nullptr, msg))
|
if (!pntpos(obs + nu, nr, nav, &rtk->opt, &solb, nullptr, nullptr, msg))
|
||||||
{
|
{
|
||||||
|
@ -494,7 +494,6 @@ void decodefile(rtksvr_t *svr, int index)
|
|||||||
|
|
||||||
if (svr->format[index] == STRFMT_SP3)
|
if (svr->format[index] == STRFMT_SP3)
|
||||||
{ /* precise ephemeris */
|
{ /* precise ephemeris */
|
||||||
|
|
||||||
/* read sp3 precise ephemeris */
|
/* read sp3 precise ephemeris */
|
||||||
readsp3(file, &nav, 0);
|
readsp3(file, &nav, 0);
|
||||||
if (nav.ne <= 0)
|
if (nav.ne <= 0)
|
||||||
@ -517,8 +516,8 @@ void decodefile(rtksvr_t *svr, int index)
|
|||||||
rtksvrunlock(svr);
|
rtksvrunlock(svr);
|
||||||
}
|
}
|
||||||
else if (svr->format[index] == STRFMT_RNXCLK)
|
else if (svr->format[index] == STRFMT_RNXCLK)
|
||||||
{ /* precise clock */
|
{
|
||||||
|
/* precise clock */
|
||||||
/* read rinex clock */ // Disabled!!
|
/* read rinex clock */ // Disabled!!
|
||||||
if (true /*readrnxc(file, &nav)<=0 */)
|
if (true /*readrnxc(file, &nav)<=0 */)
|
||||||
{
|
{
|
||||||
|
@ -955,7 +955,6 @@ int gentcp(tcp_t *tcp, int type, char *msg)
|
|||||||
|
|
||||||
if (type == 0)
|
if (type == 0)
|
||||||
{ /* server socket */
|
{ /* server socket */
|
||||||
|
|
||||||
#ifdef SVR_REUSEADDR
|
#ifdef SVR_REUSEADDR
|
||||||
/* multiple-use of server socket */
|
/* multiple-use of server socket */
|
||||||
setsockopt(tcp->sock, SOL_SOCKET, SO_REUSEADDR, (const char *)&opt,
|
setsockopt(tcp->sock, SOL_SOCKET, SO_REUSEADDR, (const char *)&opt,
|
||||||
|
@ -355,7 +355,6 @@ void tidedisp(gtime_t tutc, const double *rr, int opt, const erp_t *erp,
|
|||||||
|
|
||||||
if (opt & 1)
|
if (opt & 1)
|
||||||
{ /* solid earth tides */
|
{ /* solid earth tides */
|
||||||
|
|
||||||
/* sun and moon position in ecef */
|
/* sun and moon position in ecef */
|
||||||
sunmoonpos(tutc, erpv, rs, rm, &gmst);
|
sunmoonpos(tutc, erpv, rs, rm, &gmst);
|
||||||
|
|
||||||
|
@ -28,7 +28,6 @@
|
|||||||
/* From gnuradio/gnuradio-runtime/lib/math/sine_table.h
|
/* From gnuradio/gnuradio-runtime/lib/math/sine_table.h
|
||||||
* max_error = 2.353084136763606e-06 */
|
* max_error = 2.353084136763606e-06 */
|
||||||
static const float sine_table_10bits[1 << 10][2] = {
|
static const float sine_table_10bits[1 << 10][2] = {
|
||||||
|
|
||||||
{2.925817799165007e-09, 7.219194364267018e-09},
|
{2.925817799165007e-09, 7.219194364267018e-09},
|
||||||
{2.925707643778599e-09, 2.526699001579799e-07},
|
{2.925707643778599e-09, 2.526699001579799e-07},
|
||||||
{2.925487337153070e-09, 1.191140162167675e-06},
|
{2.925487337153070e-09, 1.191140162167675e-06},
|
||||||
|
@ -30,6 +30,7 @@
|
|||||||
|
|
||||||
#include "qa_utils.h"
|
#include "qa_utils.h"
|
||||||
#include <volk_gnsssdr/volk_gnsssdr.h>
|
#include <volk_gnsssdr/volk_gnsssdr.h>
|
||||||
|
#include <string>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
||||||
|
|
||||||
|
@ -45,7 +45,6 @@
|
|||||||
#include <iostream> // for cerr, cout
|
#include <iostream> // for cerr, cout
|
||||||
#include <limits> // for numeric_limits
|
#include <limits> // for numeric_limits
|
||||||
#include <utility> // for move
|
#include <utility> // for move
|
||||||
#include <vector> // for vector
|
|
||||||
|
|
||||||
#if HAS_STD_FILESYSTEM
|
#if HAS_STD_FILESYSTEM
|
||||||
#include <system_error>
|
#include <system_error>
|
||||||
|
@ -41,6 +41,8 @@
|
|||||||
#include <cstdint> // for int32_t
|
#include <cstdint> // for int32_t
|
||||||
#include <fstream> // for string, ofstream
|
#include <fstream> // for string, ofstream
|
||||||
#include <memory> // for shared_ptr
|
#include <memory> // for shared_ptr
|
||||||
|
#include <string>
|
||||||
|
#include <vector>
|
||||||
|
|
||||||
class Gnss_Synchro;
|
class Gnss_Synchro;
|
||||||
class hybrid_observables_gs;
|
class hybrid_observables_gs;
|
||||||
|
@ -35,7 +35,7 @@
|
|||||||
#include <gnuradio/blocks/file_sink.h>
|
#include <gnuradio/blocks/file_sink.h>
|
||||||
#include <cmath>
|
#include <cmath>
|
||||||
#include <limits>
|
#include <limits>
|
||||||
|
#include <vector>
|
||||||
|
|
||||||
MmseResamplerConditioner::MmseResamplerConditioner(
|
MmseResamplerConditioner::MmseResamplerConditioner(
|
||||||
ConfigurationInterface* configuration, const std::string& role,
|
ConfigurationInterface* configuration, const std::string& role,
|
||||||
|
@ -34,6 +34,7 @@
|
|||||||
|
|
||||||
#include "direct_resampler_conditioner_cb.h"
|
#include "direct_resampler_conditioner_cb.h"
|
||||||
#include <gnuradio/io_signature.h>
|
#include <gnuradio/io_signature.h>
|
||||||
|
#include <algorithm> // for min
|
||||||
|
|
||||||
|
|
||||||
direct_resampler_conditioner_cb_sptr direct_resampler_make_conditioner_cb(
|
direct_resampler_conditioner_cb_sptr direct_resampler_make_conditioner_cb(
|
||||||
|
@ -34,7 +34,7 @@
|
|||||||
|
|
||||||
#include "direct_resampler_conditioner_cc.h"
|
#include "direct_resampler_conditioner_cc.h"
|
||||||
#include <gnuradio/io_signature.h>
|
#include <gnuradio/io_signature.h>
|
||||||
|
#include <algorithm> // for min
|
||||||
|
|
||||||
direct_resampler_conditioner_cc_sptr direct_resampler_make_conditioner_cc(
|
direct_resampler_conditioner_cc_sptr direct_resampler_make_conditioner_cc(
|
||||||
double sample_freq_in, double sample_freq_out)
|
double sample_freq_in, double sample_freq_out)
|
||||||
|
@ -34,6 +34,7 @@
|
|||||||
|
|
||||||
#include "direct_resampler_conditioner_cs.h"
|
#include "direct_resampler_conditioner_cs.h"
|
||||||
#include <gnuradio/io_signature.h>
|
#include <gnuradio/io_signature.h>
|
||||||
|
#include <algorithm> // for min
|
||||||
|
|
||||||
|
|
||||||
direct_resampler_conditioner_cs_sptr direct_resampler_make_conditioner_cs(
|
direct_resampler_conditioner_cs_sptr direct_resampler_make_conditioner_cs(
|
||||||
|
@ -40,6 +40,7 @@
|
|||||||
#include <gnuradio/blocks/vector_to_stream.h>
|
#include <gnuradio/blocks/vector_to_stream.h>
|
||||||
#include <gnuradio/hier_block2.h>
|
#include <gnuradio/hier_block2.h>
|
||||||
#include <pmt/pmt.h>
|
#include <pmt/pmt.h>
|
||||||
|
#include <memory>
|
||||||
#include <string>
|
#include <string>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
||||||
|
@ -38,6 +38,7 @@
|
|||||||
#include <boost/shared_ptr.hpp>
|
#include <boost/shared_ptr.hpp>
|
||||||
#include <pmt/pmt.h>
|
#include <pmt/pmt.h>
|
||||||
#include <cstdint>
|
#include <cstdint>
|
||||||
|
#include <memory>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
class ConfigurationInterface;
|
class ConfigurationInterface;
|
||||||
|
@ -39,6 +39,7 @@
|
|||||||
#include <gnuradio/blocks/file_sink.h>
|
#include <gnuradio/blocks/file_sink.h>
|
||||||
#include <gnuradio/blocks/null_sink.h>
|
#include <gnuradio/blocks/null_sink.h>
|
||||||
#include <pmt/pmt.h>
|
#include <pmt/pmt.h>
|
||||||
|
#include <memory>
|
||||||
#include <stdexcept>
|
#include <stdexcept>
|
||||||
#include <string>
|
#include <string>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
@ -42,6 +42,7 @@
|
|||||||
#include <gnuradio/blocks/null_sink.h>
|
#include <gnuradio/blocks/null_sink.h>
|
||||||
#include <gnuradio/hier_block2.h>
|
#include <gnuradio/hier_block2.h>
|
||||||
#include <pmt/pmt.h>
|
#include <pmt/pmt.h>
|
||||||
|
#include <memory>
|
||||||
#include <string>
|
#include <string>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
||||||
|
@ -43,6 +43,7 @@
|
|||||||
#endif
|
#endif
|
||||||
#include "concurrent_queue.h"
|
#include "concurrent_queue.h"
|
||||||
#include <pmt/pmt.h>
|
#include <pmt/pmt.h>
|
||||||
|
#include <memory>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
class ConfigurationInterface;
|
class ConfigurationInterface;
|
||||||
|
@ -37,6 +37,7 @@
|
|||||||
#include "concurrent_queue.h"
|
#include "concurrent_queue.h"
|
||||||
#include "gnss_block_interface.h"
|
#include "gnss_block_interface.h"
|
||||||
#include <pmt/pmt.h>
|
#include <pmt/pmt.h>
|
||||||
|
#include <memory>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
|
@ -37,6 +37,7 @@
|
|||||||
#include <gnuradio/blocks/file_sink.h>
|
#include <gnuradio/blocks/file_sink.h>
|
||||||
#include <gnuradio/hier_block2.h>
|
#include <gnuradio/hier_block2.h>
|
||||||
#include <pmt/pmt.h>
|
#include <pmt/pmt.h>
|
||||||
|
#include <memory>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
|
|
||||||
|
@ -37,6 +37,7 @@
|
|||||||
#include <gnuradio/blocks/file_sink.h>
|
#include <gnuradio/blocks/file_sink.h>
|
||||||
#include <gnuradio/hier_block2.h>
|
#include <gnuradio/hier_block2.h>
|
||||||
#include <pmt/pmt.h>
|
#include <pmt/pmt.h>
|
||||||
|
#include <memory>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
class ConfigurationInterface;
|
class ConfigurationInterface;
|
||||||
|
@ -43,6 +43,7 @@
|
|||||||
#include <gnuradio/hier_block2.h>
|
#include <gnuradio/hier_block2.h>
|
||||||
#include <pmt/pmt.h>
|
#include <pmt/pmt.h>
|
||||||
#include <cstdint>
|
#include <cstdint>
|
||||||
|
#include <memory>
|
||||||
#include <string>
|
#include <string>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
||||||
|
@ -43,6 +43,7 @@
|
|||||||
#include <gnuradio/blocks/throttle.h>
|
#include <gnuradio/blocks/throttle.h>
|
||||||
#include <gnuradio/hier_block2.h>
|
#include <gnuradio/hier_block2.h>
|
||||||
#include <pmt/pmt.h>
|
#include <pmt/pmt.h>
|
||||||
|
#include <memory>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
class ConfigurationInterface;
|
class ConfigurationInterface;
|
||||||
|
@ -39,6 +39,7 @@
|
|||||||
#include <gnuradio/blocks/file_sink.h>
|
#include <gnuradio/blocks/file_sink.h>
|
||||||
#include <pmt/pmt.h>
|
#include <pmt/pmt.h>
|
||||||
#include <cstdint>
|
#include <cstdint>
|
||||||
|
#include <memory>
|
||||||
#include <osmosdr/source.h>
|
#include <osmosdr/source.h>
|
||||||
#include <stdexcept>
|
#include <stdexcept>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
@ -42,6 +42,7 @@
|
|||||||
#endif
|
#endif
|
||||||
#include "concurrent_queue.h"
|
#include "concurrent_queue.h"
|
||||||
#include <pmt/pmt.h>
|
#include <pmt/pmt.h>
|
||||||
|
#include <memory>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
|
|
||||||
|
@ -37,6 +37,7 @@
|
|||||||
#include <gnuradio/blocks/file_sink.h>
|
#include <gnuradio/blocks/file_sink.h>
|
||||||
#include <gnuradio/hier_block2.h>
|
#include <gnuradio/hier_block2.h>
|
||||||
#include <pmt/pmt.h>
|
#include <pmt/pmt.h>
|
||||||
|
#include <memory>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
class ConfigurationInterface;
|
class ConfigurationInterface;
|
||||||
|
@ -40,6 +40,7 @@
|
|||||||
#include <gnuradio/blocks/file_sink.h>
|
#include <gnuradio/blocks/file_sink.h>
|
||||||
#include <gnuradio/blocks/float_to_complex.h>
|
#include <gnuradio/blocks/float_to_complex.h>
|
||||||
#include <pmt/pmt.h>
|
#include <pmt/pmt.h>
|
||||||
|
#include <memory>
|
||||||
#include <stdexcept>
|
#include <stdexcept>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
|
@ -41,6 +41,7 @@
|
|||||||
#include <gnuradio/hier_block2.h>
|
#include <gnuradio/hier_block2.h>
|
||||||
#include <pmt/pmt.h>
|
#include <pmt/pmt.h>
|
||||||
#include <cstdint>
|
#include <cstdint>
|
||||||
|
#include <memory>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
class ConfigurationInterface;
|
class ConfigurationInterface;
|
||||||
|
@ -45,6 +45,7 @@
|
|||||||
#include <gnuradio/hier_block2.h>
|
#include <gnuradio/hier_block2.h>
|
||||||
#include <pmt/pmt.h>
|
#include <pmt/pmt.h>
|
||||||
#include <cstdint>
|
#include <cstdint>
|
||||||
|
#include <memory>
|
||||||
#include <string>
|
#include <string>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
||||||
|
@ -44,6 +44,7 @@
|
|||||||
#include <gnuradio/hier_block2.h>
|
#include <gnuradio/hier_block2.h>
|
||||||
#include <pmt/pmt.h>
|
#include <pmt/pmt.h>
|
||||||
#include <cstdint>
|
#include <cstdint>
|
||||||
|
#include <memory>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
|
|
||||||
|
@ -45,6 +45,7 @@
|
|||||||
#include <gnuradio/hier_block2.h>
|
#include <gnuradio/hier_block2.h>
|
||||||
#include <pmt/pmt.h>
|
#include <pmt/pmt.h>
|
||||||
#include <cstdint>
|
#include <cstdint>
|
||||||
|
#include <memory>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
|
|
||||||
|
@ -39,6 +39,7 @@
|
|||||||
#include <gnuradio/uhd/usrp_source.h>
|
#include <gnuradio/uhd/usrp_source.h>
|
||||||
#include <pmt/pmt.h>
|
#include <pmt/pmt.h>
|
||||||
#include <cstdint>
|
#include <cstdint>
|
||||||
|
#include <memory>
|
||||||
#include <string>
|
#include <string>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
||||||
|
@ -36,6 +36,7 @@
|
|||||||
#include <pmt/pmt.h>
|
#include <pmt/pmt.h>
|
||||||
#include <cstdint>
|
#include <cstdint>
|
||||||
#include <fstream>
|
#include <fstream>
|
||||||
|
#include <memory>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
|
|
||||||
|
@ -47,6 +47,7 @@
|
|||||||
#include <gnuradio/sync_block.h>
|
#include <gnuradio/sync_block.h>
|
||||||
#include <cstdint>
|
#include <cstdint>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
#include <vector>
|
||||||
|
|
||||||
class rtl_tcp_signal_source_c;
|
class rtl_tcp_signal_source_c;
|
||||||
|
|
||||||
|
@ -70,6 +70,7 @@
|
|||||||
|
|
||||||
#include <gnuradio/sync_interpolator.h>
|
#include <gnuradio/sync_interpolator.h>
|
||||||
#include <cstdint>
|
#include <cstdint>
|
||||||
|
#include <vector>
|
||||||
|
|
||||||
class unpack_2bit_samples;
|
class unpack_2bit_samples;
|
||||||
|
|
||||||
|
@ -41,6 +41,7 @@
|
|||||||
#include <pmt/pmt.h>
|
#include <pmt/pmt.h>
|
||||||
#include <cstddef> // for size_t
|
#include <cstddef> // for size_t
|
||||||
#include <cstdint>
|
#include <cstdint>
|
||||||
|
#include <memory>
|
||||||
|
|
||||||
class Gnss_Sdr_Valve;
|
class Gnss_Sdr_Valve;
|
||||||
|
|
||||||
|
@ -34,6 +34,7 @@
|
|||||||
#include "rtl_tcp_dongle_info.h"
|
#include "rtl_tcp_dongle_info.h"
|
||||||
#include <boost/foreach.hpp>
|
#include <boost/foreach.hpp>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
#include <vector>
|
||||||
|
|
||||||
using boost::asio::ip::tcp;
|
using boost::asio::ip::tcp;
|
||||||
|
|
||||||
|
@ -34,6 +34,7 @@
|
|||||||
#include <glog/logging.h>
|
#include <glog/logging.h>
|
||||||
#include <gnuradio/io_signature.h>
|
#include <gnuradio/io_signature.h>
|
||||||
#include <pmt/pmt_sugar.h> // for mp
|
#include <pmt/pmt_sugar.h> // for mp
|
||||||
|
#include <algorithm> // for copy
|
||||||
#include <array>
|
#include <array>
|
||||||
#include <cmath> // for abs
|
#include <cmath> // for abs
|
||||||
#include <exception> // for exception
|
#include <exception> // for exception
|
||||||
|
@ -45,7 +45,8 @@
|
|||||||
#include <pmt/pmt.h> // for pmt_t
|
#include <pmt/pmt.h> // for pmt_t
|
||||||
#include <cstdint> // for int32_t
|
#include <cstdint> // for int32_t
|
||||||
#include <fstream> // for string, ofstream
|
#include <fstream> // for string, ofstream
|
||||||
#include <utility> // for pair
|
#include <string>
|
||||||
|
#include <utility> // for pair
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
||||||
class Gnss_Synchro;
|
class Gnss_Synchro;
|
||||||
|
@ -44,7 +44,9 @@
|
|||||||
#include <pmt/pmt.h> // for pmt_t
|
#include <pmt/pmt.h> // for pmt_t
|
||||||
#include <cstdint> // for int32_t
|
#include <cstdint> // for int32_t
|
||||||
#include <fstream> // for string, ofstream
|
#include <fstream> // for string, ofstream
|
||||||
#include <utility> // for pair
|
#include <memory>
|
||||||
|
#include <string>
|
||||||
|
#include <utility> // for pair
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
||||||
class Fpga_Multicorrelator_8sc;
|
class Fpga_Multicorrelator_8sc;
|
||||||
|
@ -46,6 +46,7 @@
|
|||||||
#include "tracking_FLL_PLL_filter.h"
|
#include "tracking_FLL_PLL_filter.h"
|
||||||
#include <gnuradio/block.h>
|
#include <gnuradio/block.h>
|
||||||
#include <volk_gnsssdr/volk_gnsssdr.h>
|
#include <volk_gnsssdr/volk_gnsssdr.h>
|
||||||
|
#include <deque>
|
||||||
#include <fstream>
|
#include <fstream>
|
||||||
#include <map>
|
#include <map>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
@ -44,6 +44,7 @@
|
|||||||
#include "tracking_FLL_PLL_filter.h"
|
#include "tracking_FLL_PLL_filter.h"
|
||||||
#include <gnuradio/block.h>
|
#include <gnuradio/block.h>
|
||||||
#include <volk_gnsssdr/volk_gnsssdr.h>
|
#include <volk_gnsssdr/volk_gnsssdr.h>
|
||||||
|
#include <deque>
|
||||||
#include <fstream>
|
#include <fstream>
|
||||||
#include <map>
|
#include <map>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
@ -39,6 +39,7 @@
|
|||||||
|
|
||||||
#include <gnuradio/block.h>
|
#include <gnuradio/block.h>
|
||||||
#include <cstdint>
|
#include <cstdint>
|
||||||
|
#include <string>
|
||||||
|
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
|
@ -40,6 +40,7 @@
|
|||||||
|
|
||||||
#include "gnss_block_interface.h"
|
#include "gnss_block_interface.h"
|
||||||
#include "gnss_synchro.h"
|
#include "gnss_synchro.h"
|
||||||
|
#include <memory>
|
||||||
|
|
||||||
template <typename Data>
|
template <typename Data>
|
||||||
class Concurrent_Queue;
|
class Concurrent_Queue;
|
||||||
|
@ -42,6 +42,7 @@
|
|||||||
#include "gnss_block_interface.h"
|
#include "gnss_block_interface.h"
|
||||||
#include "gps_almanac.h"
|
#include "gps_almanac.h"
|
||||||
#include "gps_ephemeris.h"
|
#include "gps_ephemeris.h"
|
||||||
|
#include <map>
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief This class represents an interface to a PVT block.
|
* \brief This class represents an interface to a PVT block.
|
||||||
|
@ -35,6 +35,7 @@
|
|||||||
#include "monitor_pvt.h"
|
#include "monitor_pvt.h"
|
||||||
#include <gnuradio/block.h>
|
#include <gnuradio/block.h>
|
||||||
#include <pmt/pmt.h>
|
#include <pmt/pmt.h>
|
||||||
|
#include <map>
|
||||||
#include <memory>
|
#include <memory>
|
||||||
|
|
||||||
class channel_status_msg_receiver;
|
class channel_status_msg_receiver;
|
||||||
|
@ -25,7 +25,6 @@ extern "C"
|
|||||||
GANSSAlmanacElement_PR_NOTHING, /* No components present */
|
GANSSAlmanacElement_PR_NOTHING, /* No components present */
|
||||||
GANSSAlmanacElement_PR_keplerianAlmanacSet,
|
GANSSAlmanacElement_PR_keplerianAlmanacSet,
|
||||||
/* Extensions may appear below */
|
/* Extensions may appear below */
|
||||||
|
|
||||||
} GANSSAlmanacElement_PR;
|
} GANSSAlmanacElement_PR;
|
||||||
|
|
||||||
/* GANSSAlmanacElement */
|
/* GANSSAlmanacElement */
|
||||||
|
@ -25,7 +25,6 @@ extern "C"
|
|||||||
GANSSClockModel_PR_NOTHING, /* No components present */
|
GANSSClockModel_PR_NOTHING, /* No components present */
|
||||||
GANSSClockModel_PR_standardClockModelList,
|
GANSSClockModel_PR_standardClockModelList,
|
||||||
/* Extensions may appear below */
|
/* Extensions may appear below */
|
||||||
|
|
||||||
} GANSSClockModel_PR;
|
} GANSSClockModel_PR;
|
||||||
|
|
||||||
/* GANSSClockModel */
|
/* GANSSClockModel */
|
||||||
|
@ -25,7 +25,6 @@ extern "C"
|
|||||||
GANSSOrbitModel_PR_NOTHING, /* No components present */
|
GANSSOrbitModel_PR_NOTHING, /* No components present */
|
||||||
GANSSOrbitModel_PR_keplerianSet,
|
GANSSOrbitModel_PR_keplerianSet,
|
||||||
/* Extensions may appear below */
|
/* Extensions may appear below */
|
||||||
|
|
||||||
} GANSSOrbitModel_PR;
|
} GANSSOrbitModel_PR;
|
||||||
|
|
||||||
/* GANSSOrbitModel */
|
/* GANSSOrbitModel */
|
||||||
|
@ -33,7 +33,6 @@ extern "C"
|
|||||||
RRLP_Component_PR_assistanceDataAck,
|
RRLP_Component_PR_assistanceDataAck,
|
||||||
RRLP_Component_PR_protocolError,
|
RRLP_Component_PR_protocolError,
|
||||||
/* Extensions may appear below */
|
/* Extensions may appear below */
|
||||||
|
|
||||||
} RRLP_Component_PR;
|
} RRLP_Component_PR;
|
||||||
|
|
||||||
/* RRLP-Component */
|
/* RRLP-Component */
|
||||||
|
@ -28,7 +28,6 @@ extern "C"
|
|||||||
SatStatus_PR_oldSatelliteAndModel,
|
SatStatus_PR_oldSatelliteAndModel,
|
||||||
SatStatus_PR_newNaviModelUC,
|
SatStatus_PR_newNaviModelUC,
|
||||||
/* Extensions may appear below */
|
/* Extensions may appear below */
|
||||||
|
|
||||||
} SatStatus_PR;
|
} SatStatus_PR;
|
||||||
|
|
||||||
/* SatStatus */
|
/* SatStatus */
|
||||||
|
@ -58,8 +58,8 @@ extern "C"
|
|||||||
} UncompressedEphemeris_t;
|
} UncompressedEphemeris_t;
|
||||||
|
|
||||||
/* Implementation */
|
/* Implementation */
|
||||||
/* extern asn_TYPE_descriptor_t asn_DEF_ephemE_17; // (Use -fall-defs-global to expose) */
|
/* extern asn_TYPE_descriptor_t asn_DEF_ephemE_17; // (Use -fall-defs-global to expose) */
|
||||||
/* extern asn_TYPE_descriptor_t asn_DEF_ephemAPowerHalf_19; // (Use -fall-defs-global to expose) */
|
/* extern asn_TYPE_descriptor_t asn_DEF_ephemAPowerHalf_19; // (Use -fall-defs-global to expose) */
|
||||||
extern asn_TYPE_descriptor_t asn_DEF_UncompressedEphemeris;
|
extern asn_TYPE_descriptor_t asn_DEF_UncompressedEphemeris;
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
|
@ -116,8 +116,8 @@ typedef unsigned int uint32_t;
|
|||||||
|
|
||||||
#ifndef MIN /* Suitable for comparing primitive types (integers) */
|
#ifndef MIN /* Suitable for comparing primitive types (integers) */
|
||||||
#if defined(__GNUC__)
|
#if defined(__GNUC__)
|
||||||
#define MIN(a, b) ({ __typeof a _a = a; __typeof b _b = b; \
|
#define MIN(a, b) ({ __typeof a _a = a; __typeof b _b = b; \
|
||||||
((_a)<(_b)?(_a):(_b)); })
|
((_a)<(_b)?(_a):(_b)); })
|
||||||
#else /* !__GNUC__ */
|
#else /* !__GNUC__ */
|
||||||
#define MIN(a, b) ((a) < (b) ? (a) : (b)) /* Unsafe variant */
|
#define MIN(a, b) ((a) < (b) ? (a) : (b)) /* Unsafe variant */
|
||||||
#endif /* __GNUC__ */
|
#endif /* __GNUC__ */
|
||||||
|
@ -43,7 +43,7 @@ extern "C"
|
|||||||
} AltitudeInfo_t;
|
} AltitudeInfo_t;
|
||||||
|
|
||||||
/* Implementation */
|
/* Implementation */
|
||||||
/* extern asn_TYPE_descriptor_t asn_DEF_altitudeDirection_2; // (Use -fall-defs-global to expose) */
|
/* extern asn_TYPE_descriptor_t asn_DEF_altitudeDirection_2; // (Use -fall-defs-global to expose) */
|
||||||
extern asn_TYPE_descriptor_t asn_DEF_AltitudeInfo;
|
extern asn_TYPE_descriptor_t asn_DEF_AltitudeInfo;
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
|
@ -29,7 +29,6 @@ extern "C"
|
|||||||
CellInfo_PR_wcdmaCell,
|
CellInfo_PR_wcdmaCell,
|
||||||
CellInfo_PR_cdmaCell,
|
CellInfo_PR_cdmaCell,
|
||||||
/* Extensions may appear below */
|
/* Extensions may appear below */
|
||||||
|
|
||||||
} CellInfo_PR;
|
} CellInfo_PR;
|
||||||
|
|
||||||
/* CellInfo */
|
/* CellInfo */
|
||||||
|
@ -28,7 +28,6 @@ extern "C"
|
|||||||
fmodeSpecificInfo_PR_fdd,
|
fmodeSpecificInfo_PR_fdd,
|
||||||
fmodeSpecificInfo_PR_tdd,
|
fmodeSpecificInfo_PR_tdd,
|
||||||
/* Extensions may appear below */
|
/* Extensions may appear below */
|
||||||
|
|
||||||
} fmodeSpecificInfo_PR;
|
} fmodeSpecificInfo_PR;
|
||||||
|
|
||||||
/* FrequencyInfo */
|
/* FrequencyInfo */
|
||||||
|
@ -50,7 +50,7 @@ INTEGER_encode_der(asn_TYPE_descriptor_t *td, void *sptr,
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* Canonicalize integer in the buffer.
|
* Canonicalize integer in the buffer.
|
||||||
* (Remove too long sign extension, remove some first 0x00 bytes)
|
* (Remove too int64_t sign extension, remove some first 0x00 bytes)
|
||||||
*/
|
*/
|
||||||
if(st->buf) {
|
if(st->buf) {
|
||||||
uint8_t *buf = st->buf;
|
uint8_t *buf = st->buf;
|
||||||
@ -106,7 +106,7 @@ INTEGER__dump(asn_TYPE_descriptor_t *td, const INTEGER_t *st, asn_app_consume_by
|
|||||||
char scratch[32]; /* Enough for 64-bit integer */
|
char scratch[32]; /* Enough for 64-bit integer */
|
||||||
uint8_t *buf = st->buf;
|
uint8_t *buf = st->buf;
|
||||||
uint8_t *buf_end = st->buf + st->size;
|
uint8_t *buf_end = st->buf + st->size;
|
||||||
signed long accum;
|
int64_t accum;
|
||||||
ssize_t wrote = 0;
|
ssize_t wrote = 0;
|
||||||
char *p;
|
char *p;
|
||||||
int ret;
|
int ret;
|
||||||
@ -133,9 +133,9 @@ INTEGER__dump(asn_TYPE_descriptor_t *td, const INTEGER_t *st, asn_app_consume_by
|
|||||||
char *scr;
|
char *scr;
|
||||||
|
|
||||||
if(buf == buf_end) {
|
if(buf == buf_end) {
|
||||||
accum = 0;
|
accum = 0LL;
|
||||||
} else {
|
} else {
|
||||||
accum = (*buf & 0x80) ? -1 : 0;
|
accum = (*buf & 0x80) ? -1LL : 0LL;
|
||||||
for(; buf < buf_end; buf++)
|
for(; buf < buf_end; buf++)
|
||||||
accum = (accum * 256) | *buf;
|
accum = (accum * 256) | *buf;
|
||||||
}
|
}
|
||||||
@ -146,7 +146,7 @@ INTEGER__dump(asn_TYPE_descriptor_t *td, const INTEGER_t *st, asn_app_consume_by
|
|||||||
scr = (char *)alloca(scrsize);
|
scr = (char *)alloca(scrsize);
|
||||||
if(plainOrXER == 0)
|
if(plainOrXER == 0)
|
||||||
ret = snprintf(scr, scrsize,
|
ret = snprintf(scr, scrsize,
|
||||||
"%ld (%s)", accum, el->enum_name);
|
"%lld (%s)", accum, el->enum_name);
|
||||||
else
|
else
|
||||||
ret = snprintf(scr, scrsize,
|
ret = snprintf(scr, scrsize,
|
||||||
"<%s/>", el->enum_name);
|
"<%s/>", el->enum_name);
|
||||||
@ -160,7 +160,7 @@ INTEGER__dump(asn_TYPE_descriptor_t *td, const INTEGER_t *st, asn_app_consume_by
|
|||||||
scr = scratch;
|
scr = scratch;
|
||||||
ret = snprintf(scr, scrsize,
|
ret = snprintf(scr, scrsize,
|
||||||
(specs && specs->field_unsigned)
|
(specs && specs->field_unsigned)
|
||||||
?"%lu":"%ld", accum);
|
?"%llu":"%lld", accum);
|
||||||
}
|
}
|
||||||
assert(ret > 0 && (size_t)ret < scrsize);
|
assert(ret > 0 && (size_t)ret < scrsize);
|
||||||
return (cb(scr, ret, app_key) < 0) ? -1 : ret;
|
return (cb(scr, ret, app_key) < 0) ? -1 : ret;
|
||||||
@ -175,7 +175,7 @@ INTEGER__dump(asn_TYPE_descriptor_t *td, const INTEGER_t *st, asn_app_consume_by
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Output in the long xx:yy:zz... format */
|
/* Output in the int64_t xx:yy:zz... format */
|
||||||
/* TODO: replace with generic algorithm (Knuth TAOCP Vol 2, 4.3.1) */
|
/* TODO: replace with generic algorithm (Knuth TAOCP Vol 2, 4.3.1) */
|
||||||
for(p = scratch; buf < buf_end; buf++) {
|
for(p = scratch; buf < buf_end; buf++) {
|
||||||
static const char *h2c = "0123456789ABCDEF";
|
static const char *h2c = "0123456789ABCDEF";
|
||||||
@ -284,9 +284,9 @@ INTEGER_map_enum2value(asn_INTEGER_specifics_t *specs, const char *lstart, const
|
|||||||
|
|
||||||
static int
|
static int
|
||||||
INTEGER__compar_value2enum(const void *kp, const void *am) {
|
INTEGER__compar_value2enum(const void *kp, const void *am) {
|
||||||
long a = *(const long *)kp;
|
int64_t a = *(const int64_t *)kp;
|
||||||
const asn_INTEGER_enum_map_t *el = (const asn_INTEGER_enum_map_t *)am;
|
const asn_INTEGER_enum_map_t *el = (const asn_INTEGER_enum_map_t *)am;
|
||||||
long b = el->nat_value;
|
int64_t b = el->nat_value;
|
||||||
if(a < b) return -1;
|
if(a < b) return -1;
|
||||||
else if(a == b) return 0;
|
else if(a == b) return 0;
|
||||||
else return 1;
|
else return 1;
|
||||||
@ -321,8 +321,8 @@ INTEGER_st_prealloc(INTEGER_t *st, int min_size) {
|
|||||||
static enum xer_pbd_rval
|
static enum xer_pbd_rval
|
||||||
INTEGER__xer_body_decode(asn_TYPE_descriptor_t *td, void *sptr, const void *chunk_buf, size_t chunk_size) {
|
INTEGER__xer_body_decode(asn_TYPE_descriptor_t *td, void *sptr, const void *chunk_buf, size_t chunk_size) {
|
||||||
INTEGER_t *st = (INTEGER_t *)sptr;
|
INTEGER_t *st = (INTEGER_t *)sptr;
|
||||||
long sign = 1;
|
int64_t sign = 1LL;
|
||||||
long value;
|
int64_t value;
|
||||||
const char *lp;
|
const char *lp;
|
||||||
const char *lstart = (const char *)chunk_buf;
|
const char *lstart = (const char *)chunk_buf;
|
||||||
const char *lstop = lstart + chunk_size;
|
const char *lstop = lstart + chunk_size;
|
||||||
@ -339,7 +339,7 @@ INTEGER__xer_body_decode(asn_TYPE_descriptor_t *td, void *sptr, const void *chun
|
|||||||
|
|
||||||
if(chunk_size)
|
if(chunk_size)
|
||||||
ASN_DEBUG("INTEGER body %ld 0x%2x..0x%2x",
|
ASN_DEBUG("INTEGER body %ld 0x%2x..0x%2x",
|
||||||
(long)chunk_size, *lstart, lstop[-1]);
|
(int64_t)chunk_size, *lstart, lstop[-1]);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* We may have received a tag here. It will be processed inline.
|
* We may have received a tag here. It will be processed inline.
|
||||||
@ -398,7 +398,7 @@ INTEGER__xer_body_decode(asn_TYPE_descriptor_t *td, void *sptr, const void *chun
|
|||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
long new_value = value * 10;
|
int64_t new_value = value * 10;
|
||||||
|
|
||||||
if(new_value / 10 != value)
|
if(new_value / 10 != value)
|
||||||
/* Overflow */
|
/* Overflow */
|
||||||
@ -409,8 +409,8 @@ INTEGER__xer_body_decode(asn_TYPE_descriptor_t *td, void *sptr, const void *chun
|
|||||||
if(value < 0) {
|
if(value < 0) {
|
||||||
/* Check whether it is a LONG_MIN */
|
/* Check whether it is a LONG_MIN */
|
||||||
if(sign == -1
|
if(sign == -1
|
||||||
&& (unsigned long)value
|
&& (uint64_t)value
|
||||||
== ~((unsigned long)-1 >> 1)) {
|
== ~((uint64_t)-1 >> 1)) {
|
||||||
sign = 1;
|
sign = 1;
|
||||||
} else {
|
} else {
|
||||||
/* Overflow */
|
/* Overflow */
|
||||||
@ -601,9 +601,9 @@ INTEGER_decode_uper(asn_codec_ctx_t *opt_codec_ctx, asn_TYPE_descriptor_t *td,
|
|||||||
/* #10.5.6 */
|
/* #10.5.6 */
|
||||||
ASN_DEBUG("Integer with range %d bits", ct->range_bits);
|
ASN_DEBUG("Integer with range %d bits", ct->range_bits);
|
||||||
if(ct->range_bits >= 0) {
|
if(ct->range_bits >= 0) {
|
||||||
long value;
|
int64_t value;
|
||||||
if(ct->range_bits == 32) {
|
if(ct->range_bits == 32) {
|
||||||
long lhalf;
|
int64_t lhalf;
|
||||||
value = per_get_few_bits(pd, 16);
|
value = per_get_few_bits(pd, 16);
|
||||||
if(value < 0) _ASN_DECODE_STARVED;
|
if(value < 0) _ASN_DECODE_STARVED;
|
||||||
lhalf = per_get_few_bits(pd, 16);
|
lhalf = per_get_few_bits(pd, 16);
|
||||||
@ -687,11 +687,11 @@ INTEGER_encode_uper(asn_TYPE_descriptor_t *td,
|
|||||||
_ASN_ENCODE_FAILED;
|
_ASN_ENCODE_FAILED;
|
||||||
/* Check proper range */
|
/* Check proper range */
|
||||||
if(ct->flags & APC_SEMI_CONSTRAINED) {
|
if(ct->flags & APC_SEMI_CONSTRAINED) {
|
||||||
if(uval < (unsigned long)ct->lower_bound)
|
if(uval < (uint64_t)ct->lower_bound)
|
||||||
inext = 1;
|
inext = 1;
|
||||||
} else if(ct->range_bits >= 0) {
|
} else if(ct->range_bits >= 0) {
|
||||||
if(uval < (unsigned long)ct->lower_bound
|
if(uval < (uint64_t)ct->lower_bound
|
||||||
|| uval > (unsigned long)ct->upper_bound)
|
|| uval > (uint64_t)ct->upper_bound)
|
||||||
inext = 1;
|
inext = 1;
|
||||||
}
|
}
|
||||||
ASN_DEBUG("Value %lu (%02x/%d) lb %lu ub %lu %s",
|
ASN_DEBUG("Value %lu (%02x/%d) lb %lu ub %lu %s",
|
||||||
@ -733,7 +733,7 @@ INTEGER_encode_uper(asn_TYPE_descriptor_t *td,
|
|||||||
ct->range_bits);
|
ct->range_bits);
|
||||||
if(ct->range_bits == 32) {
|
if(ct->range_bits == 32) {
|
||||||
/* TODO: extend to >32 bits */
|
/* TODO: extend to >32 bits */
|
||||||
long v = value - ct->lower_bound;
|
int64_t v = value - ct->lower_bound;
|
||||||
if(per_put_few_bits(po, v >> 1, 31)
|
if(per_put_few_bits(po, v >> 1, 31)
|
||||||
|| per_put_few_bits(po, v, 1))
|
|| per_put_few_bits(po, v, 1))
|
||||||
_ASN_ENCODE_FAILED;
|
_ASN_ENCODE_FAILED;
|
||||||
@ -768,7 +768,7 @@ asn_INTEGER2long(const INTEGER_t *iptr, int64_t *lptr) {
|
|||||||
uint8_t *b;
|
uint8_t *b;
|
||||||
uint8_t *end;
|
uint8_t *end;
|
||||||
size_t size;
|
size_t size;
|
||||||
long l;
|
int64_t l;
|
||||||
|
|
||||||
/* Sanity checking */
|
/* Sanity checking */
|
||||||
if(!iptr || !iptr->buf || !lptr) {
|
if(!iptr || !iptr->buf || !lptr) {
|
||||||
@ -781,11 +781,11 @@ asn_INTEGER2long(const INTEGER_t *iptr, int64_t *lptr) {
|
|||||||
size = iptr->size;
|
size = iptr->size;
|
||||||
end = b + size; /* Where to stop */
|
end = b + size; /* Where to stop */
|
||||||
|
|
||||||
if(size > sizeof(long)) {
|
if(size > sizeof(int64_t)) {
|
||||||
uint8_t *end1 = end - 1;
|
uint8_t *end1 = end - 1;
|
||||||
/*
|
/*
|
||||||
* Slightly more advanced processing,
|
* Slightly more advanced processing,
|
||||||
* able to >sizeof(long) bytes,
|
* able to >sizeof(int64_t) bytes,
|
||||||
* when the actual value is small
|
* when the actual value is small
|
||||||
* (0x0000000000abcdef would yield a fine 0x00abcdef)
|
* (0x0000000000abcdef would yield a fine 0x00abcdef)
|
||||||
*/
|
*/
|
||||||
@ -799,8 +799,8 @@ asn_INTEGER2long(const INTEGER_t *iptr, int64_t *lptr) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
size = end - b;
|
size = end - b;
|
||||||
if(size > sizeof(long)) {
|
if(size > sizeof(int64_t)) {
|
||||||
/* Still cannot fit the long */
|
/* Still cannot fit the int64_t */
|
||||||
errno = ERANGE;
|
errno = ERANGE;
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
@ -828,7 +828,7 @@ int
|
|||||||
asn_INTEGER2ulong(const INTEGER_t *iptr, uint64_t *lptr) {
|
asn_INTEGER2ulong(const INTEGER_t *iptr, uint64_t *lptr) {
|
||||||
uint8_t *b;
|
uint8_t *b;
|
||||||
uint8_t *end;
|
uint8_t *end;
|
||||||
unsigned long l;
|
uint64_t l;
|
||||||
size_t size;
|
size_t size;
|
||||||
|
|
||||||
if(!iptr || !iptr->buf || !lptr) {
|
if(!iptr || !iptr->buf || !lptr) {
|
||||||
@ -841,9 +841,9 @@ asn_INTEGER2ulong(const INTEGER_t *iptr, uint64_t *lptr) {
|
|||||||
end = b + size;
|
end = b + size;
|
||||||
|
|
||||||
/* If all extra leading bytes are zeroes, ignore them */
|
/* If all extra leading bytes are zeroes, ignore them */
|
||||||
for(; size > sizeof(unsigned long); b++, size--) {
|
for(; size > sizeof(uint64_t); b++, size--) {
|
||||||
if(*b) {
|
if(*b) {
|
||||||
/* Value won't fit unsigned long */
|
/* Value won't fit uint64_t */
|
||||||
errno = ERANGE;
|
errno = ERANGE;
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
@ -872,7 +872,7 @@ asn_ulong2INTEGER(INTEGER_t *st, uint64_t value) {
|
|||||||
|
|
||||||
end = buf + (sizeof(value) + 1);
|
end = buf + (sizeof(value) + 1);
|
||||||
buf[0] = 0;
|
buf[0] = 0;
|
||||||
for(b = buf + 1, shr = (sizeof(long)-1)*8; b < end; shr -= 8, b++)
|
for(b = buf + 1, shr = (sizeof(int64_t)-1)*8; b < end; shr -= 8, b++)
|
||||||
*b = (uint8_t)(value >> shr);
|
*b = (uint8_t)(value >> shr);
|
||||||
|
|
||||||
if(st->buf) FREEMEM(st->buf);
|
if(st->buf) FREEMEM(st->buf);
|
||||||
|
@ -27,7 +27,6 @@ extern "C"
|
|||||||
PosPayLoad_PR_rrcPayload,
|
PosPayLoad_PR_rrcPayload,
|
||||||
PosPayLoad_PR_rrlpPayload,
|
PosPayLoad_PR_rrlpPayload,
|
||||||
/* Extensions may appear below */
|
/* Extensions may appear below */
|
||||||
|
|
||||||
} PosPayLoad_PR;
|
} PosPayLoad_PR;
|
||||||
|
|
||||||
/* PosPayLoad */
|
/* PosPayLoad */
|
||||||
|
@ -57,7 +57,7 @@ extern "C"
|
|||||||
} PositionEstimate_t;
|
} PositionEstimate_t;
|
||||||
|
|
||||||
/* Implementation */
|
/* Implementation */
|
||||||
/* extern asn_TYPE_descriptor_t asn_DEF_latitudeSign_2; // (Use -fall-defs-global to expose) */
|
/* extern asn_TYPE_descriptor_t asn_DEF_latitudeSign_2; // (Use -fall-defs-global to expose) */
|
||||||
extern asn_TYPE_descriptor_t asn_DEF_PositionEstimate;
|
extern asn_TYPE_descriptor_t asn_DEF_PositionEstimate;
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
|
@ -26,7 +26,6 @@ extern "C"
|
|||||||
SETAuthKey_PR_shortKey,
|
SETAuthKey_PR_shortKey,
|
||||||
SETAuthKey_PR_longKey,
|
SETAuthKey_PR_longKey,
|
||||||
/* Extensions may appear below */
|
/* Extensions may appear below */
|
||||||
|
|
||||||
} SETAuthKey_PR;
|
} SETAuthKey_PR;
|
||||||
|
|
||||||
/* SETAuthKey */
|
/* SETAuthKey */
|
||||||
|
@ -33,7 +33,6 @@ extern "C"
|
|||||||
SETId_PR_nai,
|
SETId_PR_nai,
|
||||||
SETId_PR_iPAddress,
|
SETId_PR_iPAddress,
|
||||||
/* Extensions may appear below */
|
/* Extensions may appear below */
|
||||||
|
|
||||||
} SETId_PR;
|
} SETId_PR;
|
||||||
|
|
||||||
/* SETId */
|
/* SETId */
|
||||||
|
@ -27,7 +27,6 @@ extern "C"
|
|||||||
SLPAddress_PR_iPAddress,
|
SLPAddress_PR_iPAddress,
|
||||||
SLPAddress_PR_fQDN,
|
SLPAddress_PR_fQDN,
|
||||||
/* Extensions may appear below */
|
/* Extensions may appear below */
|
||||||
|
|
||||||
} SLPAddress_PR;
|
} SLPAddress_PR;
|
||||||
|
|
||||||
/* SLPAddress */
|
/* SLPAddress */
|
||||||
|
@ -38,7 +38,6 @@ extern "C"
|
|||||||
UlpMessage_PR_msDUMMY2,
|
UlpMessage_PR_msDUMMY2,
|
||||||
UlpMessage_PR_msDUMMY3,
|
UlpMessage_PR_msDUMMY3,
|
||||||
/* Extensions may appear below */
|
/* Extensions may appear below */
|
||||||
|
|
||||||
} UlpMessage_PR;
|
} UlpMessage_PR;
|
||||||
|
|
||||||
/* UlpMessage */
|
/* UlpMessage */
|
||||||
|
@ -31,7 +31,6 @@ extern "C"
|
|||||||
Velocity_PR_horveluncert,
|
Velocity_PR_horveluncert,
|
||||||
Velocity_PR_horandveruncert,
|
Velocity_PR_horandveruncert,
|
||||||
/* Extensions may appear below */
|
/* Extensions may appear below */
|
||||||
|
|
||||||
} Velocity_PR;
|
} Velocity_PR;
|
||||||
|
|
||||||
/* Velocity */
|
/* Velocity */
|
||||||
|
@ -116,8 +116,8 @@ typedef unsigned int uint32_t;
|
|||||||
|
|
||||||
#ifndef MIN /* Suitable for comparing primitive types (integers) */
|
#ifndef MIN /* Suitable for comparing primitive types (integers) */
|
||||||
#if defined(__GNUC__)
|
#if defined(__GNUC__)
|
||||||
#define MIN(a, b) ({ __typeof a _a = a; __typeof b _b = b; \
|
#define MIN(a, b) ({ __typeof a _a = a; __typeof b _b = b; \
|
||||||
((_a)<(_b)?(_a):(_b)); })
|
((_a)<(_b)?(_a):(_b)); })
|
||||||
#else /* !__GNUC__ */
|
#else /* !__GNUC__ */
|
||||||
#define MIN(a, b) ((a) < (b) ? (a) : (b)) /* Unsafe variant */
|
#define MIN(a, b) ((a) < (b) ? (a) : (b)) /* Unsafe variant */
|
||||||
#endif /* __GNUC__ */
|
#endif /* __GNUC__ */
|
||||||
|
@ -191,7 +191,6 @@ typedef struct supl_rrlp_ctx_s
|
|||||||
int cnt_acq;
|
int cnt_acq;
|
||||||
int acq_time;
|
int acq_time;
|
||||||
struct supl_acquis_s acq[MAX_EPHEMERIS];
|
struct supl_acquis_s acq[MAX_EPHEMERIS];
|
||||||
|
|
||||||
} supl_assist_t;
|
} supl_assist_t;
|
||||||
|
|
||||||
typedef struct supl_param_s
|
typedef struct supl_param_s
|
||||||
@ -232,7 +231,6 @@ typedef struct supl_ctx_s
|
|||||||
void *buf;
|
void *buf;
|
||||||
size_t size;
|
size_t size;
|
||||||
} slp_session_id;
|
} slp_session_id;
|
||||||
|
|
||||||
} supl_ctx_t;
|
} supl_ctx_t;
|
||||||
|
|
||||||
int supl_ctx_new(supl_ctx_t *ctx);
|
int supl_ctx_new(supl_ctx_t *ctx);
|
||||||
|
@ -35,9 +35,10 @@
|
|||||||
#include "gnss_synchro.h"
|
#include "gnss_synchro.h"
|
||||||
#include "gnss_synchro.pb.h" // file created by Protocol Buffers at compile time
|
#include "gnss_synchro.pb.h" // file created by Protocol Buffers at compile time
|
||||||
#include <array>
|
#include <array>
|
||||||
|
#include <string>
|
||||||
|
#include <utility>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief This class implements serialization and deserialization of
|
* \brief This class implements serialization and deserialization of
|
||||||
* Gnss_Synchro objects using Protocol Buffers.
|
* Gnss_Synchro objects using Protocol Buffers.
|
||||||
|
@ -39,6 +39,7 @@
|
|||||||
#include "string_converter.h"
|
#include "string_converter.h"
|
||||||
#include <glog/logging.h>
|
#include <glog/logging.h>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
#include <utility>
|
||||||
|
|
||||||
|
|
||||||
FileConfiguration::FileConfiguration(std::string filename)
|
FileConfiguration::FileConfiguration(std::string filename)
|
||||||
|
@ -33,6 +33,7 @@
|
|||||||
|
|
||||||
#include "MATH_CONSTANTS.h"
|
#include "MATH_CONSTANTS.h"
|
||||||
#include <cstdint>
|
#include <cstdint>
|
||||||
|
#include <string>
|
||||||
#include <utility>
|
#include <utility>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
||||||
|
@ -35,6 +35,7 @@
|
|||||||
#include "MATH_CONSTANTS.h"
|
#include "MATH_CONSTANTS.h"
|
||||||
#include "gnss_frequencies.h"
|
#include "gnss_frequencies.h"
|
||||||
#include <cstdint>
|
#include <cstdint>
|
||||||
|
#include <string>
|
||||||
#include <utility> // std::pair
|
#include <utility> // std::pair
|
||||||
#include <vector>
|
#include <vector>
|
||||||
|
|
||||||
|
@ -35,6 +35,7 @@
|
|||||||
#include <boost/date_time/posix_time/posix_time.hpp>
|
#include <boost/date_time/posix_time/posix_time.hpp>
|
||||||
#include <boost/date_time/posix_time/time_formatters.hpp>
|
#include <boost/date_time/posix_time/time_formatters.hpp>
|
||||||
#include <cmath>
|
#include <cmath>
|
||||||
|
#include <string>
|
||||||
|
|
||||||
|
|
||||||
Glonass_Gnav_Ephemeris::Glonass_Gnav_Ephemeris()
|
Glonass_Gnav_Ephemeris::Glonass_Gnav_Ephemeris()
|
||||||
|
@ -654,94 +654,94 @@ std::string Gnss_Satellite::what_block(const std::string& system_, uint32_t PRN_
|
|||||||
switch (PRN_)
|
switch (PRN_)
|
||||||
{
|
{
|
||||||
case 1:
|
case 1:
|
||||||
block_ = std::string("Compass-G1"); //!<GEO 140.0°E; launched 2010/01/16
|
block_ = std::string("Compass-G1"); // GEO 140.0°E; launched 2010/01/16
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
block_ = std::string("Compass-G6"); //!<GEO 80°E; launched 2012/10/25
|
block_ = std::string("Compass-G6"); // GEO 80°E; launched 2012/10/25
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
block_ = std::string("Compass-G7"); //!<GEO 110.5°E; launched 2016/06/12
|
block_ = std::string("Compass-G7"); // GEO 110.5°E; launched 2016/06/12
|
||||||
break;
|
break;
|
||||||
case 4:
|
case 4:
|
||||||
block_ = std::string("Compass-G4"); //!<GEO 160.0°E; launched 2010/10/31
|
block_ = std::string("Compass-G4"); // GEO 160.0°E; launched 2010/10/31
|
||||||
break;
|
break;
|
||||||
case 5:
|
case 5:
|
||||||
block_ = std::string("Compass-G5"); //!<GEO 58.75°E; launched 2012/02/24
|
block_ = std::string("Compass-G5"); // GEO 58.75°E; launched 2012/02/24
|
||||||
break;
|
break;
|
||||||
case 6:
|
case 6:
|
||||||
block_ = std::string("Compass-IGS01"); //!<55° inclination IGSO 118°E; launched 2010/07/31
|
block_ = std::string("Compass-IGS01"); // 55° inclination IGSO 118°E; launched 2010/07/31
|
||||||
break;
|
break;
|
||||||
case 7:
|
case 7:
|
||||||
block_ = std::string("Compass-IGS02"); //!<55° inclination IGSO 118°E; launched 2010/12/17
|
block_ = std::string("Compass-IGS02"); // 55° inclination IGSO 118°E; launched 2010/12/17
|
||||||
break;
|
break;
|
||||||
case 8:
|
case 8:
|
||||||
block_ = std::string("Compass-IGS03"); //!<55° inclination IGSO 118°E; launched 2011/04/09
|
block_ = std::string("Compass-IGS03"); // 55° inclination IGSO 118°E; launched 2011/04/09
|
||||||
break;
|
break;
|
||||||
case 9:
|
case 9:
|
||||||
block_ = std::string("Compass-IGS04"); //!<55° inclination IGSO 95°E; launched 2011/07/27
|
block_ = std::string("Compass-IGS04"); // 55° inclination IGSO 95°E; launched 2011/07/27
|
||||||
break;
|
break;
|
||||||
case 10:
|
case 10:
|
||||||
block_ = std::string("Compass-IGS05"); //!<55° inclination IGSO 118°E; launched 2011/12/01
|
block_ = std::string("Compass-IGS05"); // 55° inclination IGSO 118°E; launched 2011/12/01
|
||||||
break;
|
break;
|
||||||
case 11:
|
case 11:
|
||||||
block_ = std::string("Compass-M3"); //!<Slot A07; launched 2012/04/29
|
block_ = std::string("Compass-M3"); // Slot A07; launched 2012/04/29
|
||||||
break;
|
break;
|
||||||
case 12:
|
case 12:
|
||||||
block_ = std::string("Compass-M4"); //!<Slot A08; launched 2012/04/29
|
block_ = std::string("Compass-M4"); // Slot A08; launched 2012/04/29
|
||||||
break;
|
break;
|
||||||
case 19:
|
case 19:
|
||||||
block_ = std::string("BEIDOU-3 M1"); //!<Slot B-7; launched 2017/11/05
|
block_ = std::string("BEIDOU-3 M1"); // Slot B-7; launched 2017/11/05
|
||||||
break;
|
break;
|
||||||
case 20:
|
case 20:
|
||||||
block_ = std::string("BEIDOU-3 M2"); //!<Slot B-5; launched 2017/11/05
|
block_ = std::string("BEIDOU-3 M2"); // Slot B-5; launched 2017/11/05
|
||||||
break;
|
break;
|
||||||
case 21:
|
case 21:
|
||||||
block_ = std::string("BEIDOU 3M5"); //!<Slot B-?; launched 2018/02/12
|
block_ = std::string("BEIDOU 3M5"); // Slot B-?; launched 2018/02/12
|
||||||
break;
|
break;
|
||||||
case 22:
|
case 22:
|
||||||
block_ = std::string("BEIDOU 3M6"); //!<Slot B-6; launched 2018/02/12
|
block_ = std::string("BEIDOU 3M6"); // Slot B-6; launched 2018/02/12
|
||||||
break;
|
break;
|
||||||
case 23:
|
case 23:
|
||||||
block_ = std::string("BEIDOU 3M9"); //!<Slot C-7; launched 2018/07/29
|
block_ = std::string("BEIDOU 3M9"); // Slot C-7; launched 2018/07/29
|
||||||
break;
|
break;
|
||||||
case 24:
|
case 24:
|
||||||
block_ = std::string("BEIDOU 3M10"); //!<Slot C-1; launched 2018/07/29
|
block_ = std::string("BEIDOU 3M10"); // Slot C-1; launched 2018/07/29
|
||||||
break;
|
break;
|
||||||
case 25:
|
case 25:
|
||||||
block_ = std::string("BEIDOU 3M12"); //!<Slot C-8; launched 2018/08/24
|
block_ = std::string("BEIDOU 3M12"); // Slot C-8; launched 2018/08/24
|
||||||
break;
|
break;
|
||||||
case 26:
|
case 26:
|
||||||
block_ = std::string("BEIDOU 3M11"); //!<Slot C-2; launched 2018/08/24
|
block_ = std::string("BEIDOU 3M11"); // Slot C-2; launched 2018/08/24
|
||||||
break;
|
break;
|
||||||
case 27:
|
case 27:
|
||||||
block_ = std::string("BEIDOU 3M3"); //!<Slot A-?; launched 2018/01/11
|
block_ = std::string("BEIDOU 3M3"); // Slot A-?; launched 2018/01/11
|
||||||
break;
|
break;
|
||||||
case 28:
|
case 28:
|
||||||
block_ = std::string("BEIDOU 3M4"); //!<Slot A-?; launched 2018/01/11
|
block_ = std::string("BEIDOU 3M4"); // Slot A-?; launched 2018/01/11
|
||||||
break;
|
break;
|
||||||
case 29:
|
case 29:
|
||||||
block_ = std::string("BEIDOU 3M7"); //!<Slot A-?; launched 2018/03/29
|
block_ = std::string("BEIDOU 3M7"); // Slot A-?; launched 2018/03/29
|
||||||
break;
|
break;
|
||||||
case 30:
|
case 30:
|
||||||
block_ = std::string("BEIDOU 3M8"); //!<Slot A-?; launched 2018/03/29
|
block_ = std::string("BEIDOU 3M8"); // Slot A-?; launched 2018/03/29
|
||||||
break;
|
break;
|
||||||
case 32:
|
case 32:
|
||||||
block_ = std::string("BEIDOU 3M13"); //!<Slot B-1?; launched 2018/09/19
|
block_ = std::string("BEIDOU 3M13"); // Slot B-1?; launched 2018/09/19
|
||||||
break;
|
break;
|
||||||
case 33:
|
case 33:
|
||||||
block_ = std::string("BEIDOU 3M14"); //!<Slot B-3; launched 2018/09/19
|
block_ = std::string("BEIDOU 3M14"); // Slot B-3; launched 2018/09/19
|
||||||
break;
|
break;
|
||||||
case 34:
|
case 34:
|
||||||
block_ = std::string("BEIDOU 3M15"); //!<Slot B-3; launched 2018/10/15
|
block_ = std::string("BEIDOU 3M15"); // Slot B-3; launched 2018/10/15
|
||||||
break;
|
break;
|
||||||
case 35:
|
case 35:
|
||||||
block_ = std::string("BEIDOU 3M16"); //!<Slot B-3; launched 2018/10/15
|
block_ = std::string("BEIDOU 3M16"); // Slot B-3; launched 2018/10/15
|
||||||
break;
|
break;
|
||||||
case 36:
|
case 36:
|
||||||
block_ = std::string("BEIDOU 3M17"); //!<Slot B-3; launched 2018/11/18
|
block_ = std::string("BEIDOU 3M17"); // Slot B-3; launched 2018/11/18
|
||||||
break;
|
break;
|
||||||
case 37:
|
case 37:
|
||||||
block_ = std::string("BEIDOU 3M18"); //!<Slot B-3; launched 2018/11/18
|
block_ = std::string("BEIDOU 3M18"); // Slot B-3; launched 2018/11/18
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
block_ = std::string("Unknown(Simulated)");
|
block_ = std::string("Unknown(Simulated)");
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user