mirror of
https://github.com/gnss-sdr/gnss-sdr
synced 2024-12-13 11:40:33 +00:00
improving documentation
git-svn-id: https://svn.code.sf.net/p/gnss-sdr/code/trunk@335 64b25241-fba3-4117-9849-534c7e92360d
This commit is contained in:
parent
b7802d99ef
commit
ae1cb212de
@ -38,6 +38,7 @@ Official GLONASS webpage: <a href="http://www.glonass-ianc.rsa.ru/en/" target="_
|
||||
\subsection galileo Galileo
|
||||
Check the <a href="http://ec.europa.eu/enterprise/policies/satnav/galileo/index_en.htm" target="_blank">Galileo website of the European Commission</a> and the
|
||||
<a href="http://www.esa.int/Our_Activities/Navigation/The_future_-_Galileo/What_is_Galileo" target="_blank">Galileo website of the European Space Agency</a>.
|
||||
There is a website with <a href="http://igs.org/mgex/Status_GAL.htm" target="_blank">Galileo constellation status information</a> from the International GNSS Service.
|
||||
|
||||
\li Galileo E5, E6, and E1: European GNSS (Galileo) Open Service. <a href="http://ec.europa.eu/enterprise/policies/satnav/galileo/files/galileo-os-sis-icd-issue1-revision1_en.pdf" target="_blank"><b>Signal In Space Interface Control Document. Ref: OS SIS ICD, Issue 1.1</b></a>, European Commission, Sept. 2010.
|
||||
|
||||
|
@ -8,7 +8,7 @@
|
||||
*
|
||||
* -------------------------------------------------------------------------
|
||||
*
|
||||
* Copyright (C) 2010-2011 (see AUTHORS file for a list of contributors)
|
||||
* Copyright (C) 2010-2013 (see AUTHORS file for a list of contributors)
|
||||
*
|
||||
* GNSS-SDR is a software defined Global Navigation
|
||||
* Satellite Systems receiver
|
||||
@ -43,13 +43,11 @@
|
||||
class ConfigurationInterface;
|
||||
|
||||
/*!
|
||||
* \brief This class implements a PVT interface for GPS L1 C/A
|
||||
* \brief This class implements a PvtInterface for GPS L1 C/A
|
||||
*/
|
||||
class GpsL1CaPvt : public PvtInterface
|
||||
{
|
||||
|
||||
public:
|
||||
|
||||
GpsL1CaPvt(ConfigurationInterface* configuration,
|
||||
std::string role,
|
||||
unsigned int in_streams,
|
||||
@ -62,6 +60,8 @@ public:
|
||||
{
|
||||
return role_;
|
||||
}
|
||||
|
||||
//! return "GPS_L1_CA_PVT"
|
||||
std::string implementation()
|
||||
{
|
||||
return "GPS_L1_CA_PVT";
|
||||
@ -75,15 +75,15 @@ public:
|
||||
void reset()
|
||||
{
|
||||
return;
|
||||
};
|
||||
// all blocks must have an intem_size() function implementation
|
||||
}
|
||||
|
||||
//! All blocks must have an item_size() function implementation
|
||||
size_t item_size()
|
||||
{
|
||||
return sizeof(gr_complex);
|
||||
}
|
||||
|
||||
private:
|
||||
|
||||
gps_l1_ca_pvt_cc_sptr pvt_;
|
||||
bool dump_;
|
||||
unsigned int fs_in_;
|
||||
|
@ -122,8 +122,8 @@ galileo_e1_gen(std::complex<float>* _dest, int* _prn, char _Signal[3])
|
||||
const float alpha = sqrt(10.0 / 11.0);
|
||||
const float beta = sqrt(1.0 / 11.0);
|
||||
|
||||
std::complex<float> sinboc_11[_codeLength];
|
||||
std::complex<float> sinboc_61[_codeLength];
|
||||
std::complex<float> sinboc_11[49152]; // 12*4096 (_codeLength not accepted by Clang )
|
||||
std::complex<float> sinboc_61[49152];
|
||||
|
||||
galileo_e1_sinboc_11_gen(sinboc_11, _prn, _codeLength); //generate sinboc(1,1) 12 samples per chip
|
||||
galileo_e1_sinboc_61_gen(sinboc_61, _prn, _codeLength); //generate sinboc(6,1) 12 samples per chip
|
||||
@ -156,7 +156,7 @@ galileo_e1_code_gen_complex_sampled(std::complex<float>* _dest, char _Signal[3],
|
||||
unsigned int _samplesPerCode;
|
||||
const unsigned int _codeFreqBasis = Galileo_E1_CODE_CHIP_RATE_HZ; //Hz
|
||||
unsigned int _codeLength = Galileo_E1_B_CODE_LENGTH_CHIPS;
|
||||
int primary_code_E1_chips[_codeLength];
|
||||
int primary_code_E1_chips[4096];
|
||||
_samplesPerCode = round(_fs / (_codeFreqBasis / _codeLength));
|
||||
|
||||
galileo_e1_code_gen_int(primary_code_E1_chips, _Signal, _prn, 0); //generate Galileo E1 code, 1 sample per chip
|
||||
@ -166,7 +166,7 @@ galileo_e1_code_gen_complex_sampled(std::complex<float>* _dest, char _Signal[3],
|
||||
_codeLength = 12 * Galileo_E1_B_CODE_LENGTH_CHIPS;
|
||||
if (_fs != 12 * _codeFreqBasis)
|
||||
{
|
||||
std::complex<float> _signal_E1[_codeLength];
|
||||
std::complex<float> _signal_E1[4096];
|
||||
galileo_e1_gen(_signal_E1, primary_code_E1_chips, _Signal); //generate cboc 12 samples per chip
|
||||
resampler(_signal_E1, _dest, 12 * _codeFreqBasis, _fs,
|
||||
_codeLength, _samplesPerCode); //resamples code to fs
|
||||
@ -182,7 +182,7 @@ galileo_e1_code_gen_complex_sampled(std::complex<float>* _dest, char _Signal[3],
|
||||
_codeLength = 2 * Galileo_E1_B_CODE_LENGTH_CHIPS;
|
||||
if (_fs != 2 * _codeFreqBasis)
|
||||
{
|
||||
std::complex<float> _signal_E1[_codeLength];
|
||||
std::complex<float> _signal_E1[8192];
|
||||
galileo_e1_sinboc_11_gen(_signal_E1, primary_code_E1_chips,
|
||||
_codeLength); //generate sinboc(1,1) 2 samples per chip
|
||||
resampler(_signal_E1, _dest, 2 * _codeFreqBasis, _fs,
|
||||
|
@ -99,7 +99,7 @@ void gps_l1_ca_code_gen_complex(std::complex<float>* _dest, signed int _prn, uns
|
||||
|
||||
|
||||
/*
|
||||
* code_gen_complex_sampled, generate GPS L1 C/A code complex for the desired SV ID and sampled to specific sampling frequency
|
||||
* Generates complex GPS L1 C/A code for the desired SV ID and sampled to specific sampling frequency
|
||||
*/
|
||||
void gps_l1_ca_code_gen_complex_sampled(std::complex<float>* _dest, unsigned int _prn, signed int _fs, unsigned int _chip_shift)
|
||||
{
|
||||
|
@ -37,8 +37,10 @@
|
||||
#include <iostream>
|
||||
#include "GPS_L1_CA.h"
|
||||
|
||||
|
||||
//!Generates complex GPS L1 C/A code for the desired SV ID and code shift, and sampled to specific sampling frequency
|
||||
void gps_l1_ca_code_gen_complex(std::complex<float>* _dest, signed int _prn, unsigned int _chip_shift);
|
||||
|
||||
//! Generates complex GPS L1 C/A code for the desired SV ID and code shift
|
||||
void gps_l1_ca_code_gen_complex_sampled(std::complex<float>* _dest, unsigned int _prn, signed int _fs, unsigned int _chip_shift);
|
||||
|
||||
#endif /* GNSS_SDR_GPS_SDR_SIGNAL_PROCESSING_H_ */
|
||||
|
@ -43,7 +43,7 @@
|
||||
#include <cmath>
|
||||
|
||||
/*!
|
||||
* \brief Implements a conjugate complex exponential vector in std::complex<float> *d_carr_sign
|
||||
* \brief Implements a complex conjugate exponential vector in std::complex<float> *d_carr_sign
|
||||
* containing int n_samples, with the starting phase float start_phase_rad and the pase step between vector elements
|
||||
* float phase_step_rad. This function uses a SSE CORDIC implementation.
|
||||
*
|
||||
@ -51,7 +51,7 @@
|
||||
void sse_nco(std::complex<float> *dest, int n_samples,float start_phase_rad, float phase_step_rad);
|
||||
|
||||
/*!
|
||||
* \brief Implements a conjugate complex exponential vector in std::complex<float> *d_carr_sign
|
||||
* \brief Implements a complex conjugate exponential vector in std::complex<float> *d_carr_sign
|
||||
* containing int n_samples, with the starting phase float start_phase_rad and the pase step between vector elements
|
||||
* float phase_step_rad. This function uses the GNU Radio fixed point CORDIC implementation.
|
||||
*
|
||||
@ -59,7 +59,7 @@ void sse_nco(std::complex<float> *dest, int n_samples,float start_phase_rad, flo
|
||||
void fxp_nco(std::complex<float> *dest, int n_samples,float start_phase_rad, float phase_step_rad);
|
||||
|
||||
/*!
|
||||
* \brief Implements a conjugate complex exponential vector in std::complex<float> *d_carr_sign
|
||||
* \brief Implements a complex conjugate exponential vector in std::complex<float> *d_carr_sign
|
||||
* containing int n_samples, with the starting phase float start_phase_rad and the pase step between vector elements
|
||||
* float phase_step_rad. This function uses the stdlib sin() and cos() implementation.
|
||||
*
|
||||
@ -68,7 +68,7 @@ void fxp_nco(std::complex<float> *dest, int n_samples,float start_phase_rad, flo
|
||||
void std_nco(std::complex<float> *dest, int n_samples,float start_phase_rad, float phase_step_rad);
|
||||
|
||||
/*!
|
||||
* \brief Implements a conjugate complex exponential vector in std::complex<float> *d_carr_sign
|
||||
* \brief Implements a complex conjugate exponential vector in std::complex<float> *d_carr_sign
|
||||
* containing int n_samples, with the starting phase float start_phase_rad and the pase step between vector elements
|
||||
* float phase_step_rad. This function uses the GNU Radio fixed point CORDIC implementation.
|
||||
*
|
||||
@ -78,7 +78,7 @@ void fxp_nco_cpyref(std::complex<float> *dest, int n_samples,float start_phase_r
|
||||
|
||||
|
||||
/*!
|
||||
* \brief Implements a conjugate complex exponential vector in two separated float arrays (In-phase and Quadrature)
|
||||
* \brief Implements a complex conjugate exponential vector in two separated float arrays (In-phase and Quadrature)
|
||||
* containing int n_samples, with the starting phase float start_phase_rad and the pase step between vector elements
|
||||
* float phase_step_rad. This function uses the GNU Radio fixed point CORDIC implementation.
|
||||
*
|
||||
|
@ -40,6 +40,9 @@
|
||||
|
||||
class ConfigurationInterface;
|
||||
|
||||
/*!
|
||||
* \brief This class implements a block that connects input and output (does nothing)
|
||||
*/
|
||||
class Pass_Through : public GNSSBlockInterface
|
||||
{
|
||||
public:
|
||||
@ -53,6 +56,7 @@ public:
|
||||
{
|
||||
return role_;
|
||||
}
|
||||
//! returns "Pass_Through"
|
||||
std::string implementation()
|
||||
{
|
||||
return "Pass_Through";
|
||||
|
@ -1,3 +1,13 @@
|
||||
/*!
|
||||
* \file sse_mathfun.h
|
||||
* \brief SIMD (SSE1+MMX or SSE2) implementation of sin, cos, exp and log
|
||||
*
|
||||
* The default is to use the SSE1 version. If you define USE_SSE2 the
|
||||
* SSE2 intrinsics will be used in place of the MMX intrinsics. Do
|
||||
* not expect any significant performance improvement with SSE2.
|
||||
* Copyright (C) 2007 Julien Pommier
|
||||
*/
|
||||
|
||||
/* SIMD (SSE1+MMX or SSE2) implementation of sin, cos, exp and log
|
||||
|
||||
Inspired by Intel Approximate Math library, and based on the
|
||||
|
@ -39,6 +39,9 @@
|
||||
|
||||
class ConfigurationInterface;
|
||||
|
||||
/*!
|
||||
* \brief This class implements an ObservablesInterface for GPS L1 C/A
|
||||
*/
|
||||
class GpsL1CaObservables : public ObservablesInterface
|
||||
{
|
||||
public:
|
||||
@ -52,6 +55,8 @@ public:
|
||||
{
|
||||
return role_;
|
||||
}
|
||||
|
||||
//! return "GPS_L1_CA_Observables"
|
||||
std::string implementation()
|
||||
{
|
||||
return "GPS_L1_CA_Observables";
|
||||
@ -63,8 +68,9 @@ public:
|
||||
void reset()
|
||||
{
|
||||
return;
|
||||
};
|
||||
//!< All blocks must have an item_size() function implementation
|
||||
}
|
||||
|
||||
//! All blocks must have an item_size() function implementation
|
||||
size_t item_size()
|
||||
{
|
||||
return sizeof(gr_complex);
|
||||
|
@ -38,6 +38,10 @@
|
||||
|
||||
class ConfigurationInterface;
|
||||
|
||||
/*!
|
||||
* \brief Interface of an adapter of a direct resampler conditioner block
|
||||
* to a SignalConditionerInterface
|
||||
*/
|
||||
class DirectResamplerConditioner: public GNSSBlockInterface
|
||||
{
|
||||
public:
|
||||
@ -50,6 +54,7 @@ public:
|
||||
{
|
||||
return role_;
|
||||
}
|
||||
//! returns "Direct_Resampler"
|
||||
std::string implementation()
|
||||
{
|
||||
return "Direct_Resampler";
|
||||
|
@ -38,6 +38,9 @@
|
||||
|
||||
class ConfigurationInterface;
|
||||
|
||||
/*!
|
||||
* \brief This class reads samples from a GN3S USB dongle, a RF front-end signal sampler
|
||||
*/
|
||||
class Gn3sSignalSource: public GNSSBlockInterface
|
||||
{
|
||||
public:
|
||||
|
@ -1,7 +1,7 @@
|
||||
/*!
|
||||
* \file gps_l1_ca_tcp_connector_tracking.h
|
||||
* \file galileo_e1_tcp_connector_tracking.h
|
||||
* \brief Interface of an adapter of a TCP connector block based on code DLL + carrier PLL
|
||||
* for GPS L1 C/A to a TrackingInterface
|
||||
* for Galileo E1 to a TrackingInterface
|
||||
* \author David Pubill, 2012. dpubill(at)cttc.es
|
||||
* Luis Esteve, 2012. luis(at)epsilon-formacion.com
|
||||
* Javier Arribas, 2011. jarribas(at)cttc.es
|
||||
@ -9,11 +9,11 @@
|
||||
* Code DLL + carrier PLL according to the algorithms described in:
|
||||
* K.Borre, D.M.Akos, N.Bertelsen, P.Rinder, and S.H.Jensen,
|
||||
* A Software-Defined GPS and Galileo Receiver. A Single-Frequency
|
||||
* Approach, Birkha user, 2007
|
||||
* Approach, Birkhauser, 2007
|
||||
*
|
||||
* -------------------------------------------------------------------------
|
||||
*
|
||||
* Copyright (C) 2012 (see AUTHORS file for a list of contributors)
|
||||
* Copyright (C) 2012-2013 (see AUTHORS file for a list of contributors)
|
||||
*
|
||||
* GNSS-SDR is a software defined Global Navigation
|
||||
* Satellite Systems receiver
|
||||
@ -65,6 +65,7 @@ public:
|
||||
{
|
||||
return role_;
|
||||
}
|
||||
//! returns "Galileo_E1_TCP_CONNECTOR_Tracking"
|
||||
std::string implementation()
|
||||
{
|
||||
return "Galileo_E1_TCP_CONNECTOR_Tracking";
|
||||
|
@ -1,9 +1,9 @@
|
||||
/*!
|
||||
* \file gps_l1_ca_tcp_connector_tracking_cc.h
|
||||
* \file galileo_e1_tcp_connector_tracking_cc.h
|
||||
* \brief Interface of a TCP connector block based on code DLL + carrier PLL VEML (Very Early
|
||||
* Minus Late) tracking block for Galileo E1 signals
|
||||
* \author David Pubill, 2012. dpubill(at)cttc.es
|
||||
* Luis Esteve, 2012. luis(at)epsilon-formacion.com
|
||||
* Luis Esteve, 2012. luis(at)epsilon-formacion.com
|
||||
* Javier Arribas, 2011. jarribas(at)cttc.es
|
||||
*
|
||||
* Code DLL + carrier PLL according to the algorithms described in:
|
||||
@ -13,7 +13,7 @@
|
||||
*
|
||||
* -------------------------------------------------------------------------
|
||||
*
|
||||
* Copyright (C) 2010-2012 (see AUTHORS file for a list of contributors)
|
||||
* Copyright (C) 2010-2013 (see AUTHORS file for a list of contributors)
|
||||
*
|
||||
* GNSS-SDR is a software defined Global Navigation
|
||||
* Satellite Systems receiver
|
||||
|
@ -6,7 +6,7 @@
|
||||
*
|
||||
* -------------------------------------------------------------------------
|
||||
*
|
||||
* Copyright (C) 2010-2012 (see AUTHORS file for a list of contributors)
|
||||
* Copyright (C) 2010-2013 (see AUTHORS file for a list of contributors)
|
||||
*
|
||||
* GNSS-SDR is a software defined Global Navigation
|
||||
* Satellite Systems receiver
|
||||
@ -40,17 +40,19 @@
|
||||
#define NUM_TX_VARIABLES_GPS_L1_CA 9
|
||||
#define NUM_RX_VARIABLES 4
|
||||
|
||||
/*!
|
||||
* \brief TCP communication class
|
||||
*/
|
||||
class tcp_communication
|
||||
{
|
||||
public:
|
||||
|
||||
tcp_communication();
|
||||
~tcp_communication();
|
||||
|
||||
int listen_tcp_connection(size_t d_port_, size_t d_port_ch0_);
|
||||
void send_receive_tcp_packet_galileo_e1(boost::array<float, NUM_TX_VARIABLES_GALILEO_E1> buf, tcp_packet_data *tcp_data_);
|
||||
void send_receive_tcp_packet_gps_l1_ca(boost::array<float, NUM_TX_VARIABLES_GPS_L1_CA> buf, tcp_packet_data *tcp_data_);
|
||||
void close_tcp_connection(size_t d_port_);
|
||||
int listen_tcp_connection(size_t d_port_, size_t d_port_ch0_);
|
||||
void send_receive_tcp_packet_galileo_e1(boost::array<float, NUM_TX_VARIABLES_GALILEO_E1> buf, tcp_packet_data *tcp_data_);
|
||||
void send_receive_tcp_packet_gps_l1_ca(boost::array<float, NUM_TX_VARIABLES_GPS_L1_CA> buf, tcp_packet_data *tcp_data_);
|
||||
void close_tcp_connection(size_t d_port_);
|
||||
|
||||
private:
|
||||
boost::asio::io_service io_service_;
|
||||
|
@ -1,6 +1,6 @@
|
||||
/*!
|
||||
* \file tcp_packet_data.h
|
||||
* \brief Interface of the TCP packet data class
|
||||
* \brief Interface of the TCP data packet class
|
||||
* \author David Pubill, 2011. dpubill(at)cttc.es
|
||||
*
|
||||
*
|
||||
@ -32,6 +32,9 @@
|
||||
#ifndef GNSS_SDR_TCP_PACKET_DATA_H_
|
||||
#define GNSS_SDR_TCP_PACKET_DATA_H_
|
||||
|
||||
/*!
|
||||
* \brief Class that implements a TCP data packet
|
||||
*/
|
||||
class tcp_packet_data
|
||||
{
|
||||
public:
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*!
|
||||
* \file pseudorange_interface.h
|
||||
* \file observables_interface.h
|
||||
* \brief This class represents an interface to an Observables block.
|
||||
* \author Javier Arribas, 2011. jarribas(at)cttc.es
|
||||
*
|
||||
@ -10,7 +10,7 @@
|
||||
*
|
||||
* -------------------------------------------------------------------------
|
||||
*
|
||||
* Copyright (C) 2010-2012 (see AUTHORS file for a list of contributors)
|
||||
* Copyright (C) 2010-2013 (see AUTHORS file for a list of contributors)
|
||||
*
|
||||
* GNSS-SDR is a software defined Global Navigation
|
||||
* Satellite Systems receiver
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*!
|
||||
* \file navigation_interface.h
|
||||
* \file telemetry_decoder_interface.h
|
||||
* \brief This class represents an interface to a telemetry decoder block.
|
||||
* \author Javier Arribas, 2011. jarribas(at)cttc.es
|
||||
*
|
||||
@ -10,7 +10,7 @@
|
||||
*
|
||||
* -------------------------------------------------------------------------
|
||||
*
|
||||
* Copyright (C) 2010-2012 (see AUTHORS file for a list of contributors)
|
||||
* Copyright (C) 2010-2013 (see AUTHORS file for a list of contributors)
|
||||
*
|
||||
* GNSS-SDR is a software defined Global Navigation
|
||||
* Satellite Systems receiver
|
||||
|
@ -51,25 +51,24 @@
|
||||
#include <map>
|
||||
#include <string>
|
||||
|
||||
// Read an INI file into easy-to-access name/value pairs. (Note that I've gone
|
||||
// for simplicity here rather than speed, but it should be pretty decent.)
|
||||
/*!
|
||||
* \brief Read an INI file into easy-to-access name/value pairs. (Note that I've gone
|
||||
* for simplicity here rather than speed, but it should be pretty decent.)
|
||||
*/
|
||||
class INIReader
|
||||
{
|
||||
public:
|
||||
// Construct INIReader and parse given filename. See ini.h for more info
|
||||
// about the parsing.
|
||||
//! Construct INIReader and parse given filename. See ini.h for more info about the parsing.
|
||||
INIReader(std::string filename);
|
||||
|
||||
// Return the result of ini_parse(), i.e., 0 on success, line number of
|
||||
// first error on parse error, or -1 on file open error.
|
||||
//! Return the result of ini_parse(), i.e., 0 on success, line number of first error on parse error, or -1 on file open error.
|
||||
int ParseError();
|
||||
|
||||
// Get a string value from INI file, returning default_value if not found.
|
||||
//! Get a string value from INI file, returning default_value if not found.
|
||||
std::string Get(std::string section, std::string name,
|
||||
std::string default_value);
|
||||
|
||||
// Get an integer (long) value from INI file, returning default_value if
|
||||
// not found.
|
||||
//! Get an integer (long) value from INI file, returning default_value if not found.
|
||||
long GetInteger(std::string section, std::string name, long default_value);
|
||||
|
||||
private:
|
||||
|
@ -6,7 +6,7 @@
|
||||
*
|
||||
* -------------------------------------------------------------------------
|
||||
*
|
||||
* Copyright (C) 2010-2012 (see AUTHORS file for a list of contributors)
|
||||
* Copyright (C) 2010-2013 (see AUTHORS file for a list of contributors)
|
||||
*
|
||||
* GNSS-SDR is a software defined Global Navigation
|
||||
* Satellite Systems receiver
|
||||
@ -35,6 +35,10 @@
|
||||
|
||||
#include <string>
|
||||
|
||||
/*!
|
||||
* \brief Class that interprets the contents of a string
|
||||
* and converts it into different types.
|
||||
*/
|
||||
class StringConverter
|
||||
{
|
||||
public:
|
||||
|
@ -35,6 +35,7 @@
|
||||
|
||||
#include <gnuradio/gr_message.h>
|
||||
|
||||
//! Message described by who sent it and what it says
|
||||
typedef struct ControlMessage_
|
||||
{
|
||||
unsigned int who;
|
||||
|
@ -43,6 +43,9 @@
|
||||
class ConfigurationInterface;
|
||||
class GNSSBlockInterface;
|
||||
|
||||
/*!
|
||||
* \brief Class that produces all kinds of GNSS blocks
|
||||
*/
|
||||
class GNSSBlockFactory
|
||||
{
|
||||
public:
|
||||
|
@ -5,7 +5,7 @@
|
||||
*
|
||||
* -------------------------------------------------------------------------
|
||||
*
|
||||
* Copyright (C) 2010-2012 (see AUTHORS file for a list of contributors)
|
||||
* Copyright (C) 2010-2013 (see AUTHORS file for a list of contributors)
|
||||
*
|
||||
* GNSS-SDR is a software defined Global Navigation
|
||||
* Satellite Systems receiver
|
||||
@ -493,6 +493,7 @@ void Gnss_Satellite::set_block(std::string system_, unsigned int PRN_ )
|
||||
}
|
||||
if (system_.compare("Galileo") == 0)
|
||||
{
|
||||
// Check http://igs.org/mgex/Status_GAL.htm
|
||||
switch ( PRN_ )
|
||||
{
|
||||
case 11 :
|
||||
@ -501,6 +502,12 @@ void Gnss_Satellite::set_block(std::string system_, unsigned int PRN_ )
|
||||
case 12 :
|
||||
block = std::string("IOV"); // Galileo In-Orbit Validation (IOV) satellite FM2 (Flight Model 2) also known as GSAT0102, launched the same day
|
||||
break;
|
||||
case 19 :
|
||||
block = std::string("IOV"); // Galileo In-Orbit Validation (IOV) satellite FM3 (Flight Model 3)
|
||||
break;
|
||||
case 20 :
|
||||
block = std::string("IOV"); // Galileo In-Orbit Validation (IOV) satellite FM4 (Flight Model 4)
|
||||
break;
|
||||
default:
|
||||
block = std::string("Unknown");
|
||||
}
|
||||
|
@ -38,7 +38,7 @@
|
||||
#include <map>
|
||||
|
||||
|
||||
/*
|
||||
/*!
|
||||
* \brief This class represents a GNSS satellite.
|
||||
*
|
||||
* It contains information about the space vehicles currently operational
|
||||
|
@ -34,7 +34,8 @@
|
||||
|
||||
#include "gnss_satellite.h"
|
||||
#include <string>
|
||||
/*
|
||||
|
||||
/*!
|
||||
* \brief This class represents a GNSS signal.
|
||||
*
|
||||
* It contains information about the space vehicle and the specific signal.
|
||||
@ -48,10 +49,10 @@ public:
|
||||
Gnss_Signal();
|
||||
Gnss_Signal(Gnss_Satellite satellite_, std::string signal_);
|
||||
~Gnss_Signal();
|
||||
std::string get_signal() const;
|
||||
Gnss_Satellite get_satellite() const;
|
||||
friend bool operator== (const Gnss_Signal &, const Gnss_Signal &); // operator== for comparison
|
||||
friend std::ostream& operator<<(std::ostream &, const Gnss_Signal &); // operator<< for pretty printing
|
||||
std::string get_signal() const; //!< Get the satellite system {"GPS", "GLONASS", "SBAS", "Galileo", "Compass"}
|
||||
Gnss_Satellite get_satellite() const; //!< Get the Gnss_Satellite associated to the signal
|
||||
friend bool operator== (const Gnss_Signal &, const Gnss_Signal &); //!< operator== for comparison
|
||||
friend std::ostream& operator<<(std::ostream &, const Gnss_Signal &); //!< operator<< for pretty printing
|
||||
};
|
||||
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user