diff --git a/docs/doxygen/other/reference_docs.dox b/docs/doxygen/other/reference_docs.dox
index 357dc32e0..708399466 100644
--- a/docs/doxygen/other/reference_docs.dox
+++ b/docs/doxygen/other/reference_docs.dox
@@ -38,6 +38,7 @@ Official GLONASS webpage: Galileo website of the European Commission and the
Galileo website of the European Space Agency.
+There is a website with Galileo constellation status information from the International GNSS Service.
\li Galileo E5, E6, and E1: European GNSS (Galileo) Open Service. Signal In Space Interface Control Document. Ref: OS SIS ICD, Issue 1.1, European Commission, Sept. 2010.
diff --git a/src/algorithms/PVT/adapters/gps_l1_ca_pvt.h b/src/algorithms/PVT/adapters/gps_l1_ca_pvt.h
index c90d46ac3..0c7ad15d4 100644
--- a/src/algorithms/PVT/adapters/gps_l1_ca_pvt.h
+++ b/src/algorithms/PVT/adapters/gps_l1_ca_pvt.h
@@ -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_;
diff --git a/src/algorithms/libs/galileo_e1_signal_processing.cc b/src/algorithms/libs/galileo_e1_signal_processing.cc
index 283515b13..b8c94b526 100644
--- a/src/algorithms/libs/galileo_e1_signal_processing.cc
+++ b/src/algorithms/libs/galileo_e1_signal_processing.cc
@@ -122,8 +122,8 @@ galileo_e1_gen(std::complex* _dest, int* _prn, char _Signal[3])
const float alpha = sqrt(10.0 / 11.0);
const float beta = sqrt(1.0 / 11.0);
- std::complex sinboc_11[_codeLength];
- std::complex sinboc_61[_codeLength];
+ std::complex sinboc_11[49152]; // 12*4096 (_codeLength not accepted by Clang )
+ std::complex 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* _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* _dest, char _Signal[3],
_codeLength = 12 * Galileo_E1_B_CODE_LENGTH_CHIPS;
if (_fs != 12 * _codeFreqBasis)
{
- std::complex _signal_E1[_codeLength];
+ std::complex _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* _dest, char _Signal[3],
_codeLength = 2 * Galileo_E1_B_CODE_LENGTH_CHIPS;
if (_fs != 2 * _codeFreqBasis)
{
- std::complex _signal_E1[_codeLength];
+ std::complex _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,
diff --git a/src/algorithms/libs/gps_sdr_signal_processing.cc b/src/algorithms/libs/gps_sdr_signal_processing.cc
index ddf7ad9c5..d3d470f18 100644
--- a/src/algorithms/libs/gps_sdr_signal_processing.cc
+++ b/src/algorithms/libs/gps_sdr_signal_processing.cc
@@ -99,7 +99,7 @@ void gps_l1_ca_code_gen_complex(std::complex* _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* _dest, unsigned int _prn, signed int _fs, unsigned int _chip_shift)
{
diff --git a/src/algorithms/libs/gps_sdr_signal_processing.h b/src/algorithms/libs/gps_sdr_signal_processing.h
index 9bd64315c..3434f1312 100644
--- a/src/algorithms/libs/gps_sdr_signal_processing.h
+++ b/src/algorithms/libs/gps_sdr_signal_processing.h
@@ -37,8 +37,10 @@
#include
#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* _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* _dest, unsigned int _prn, signed int _fs, unsigned int _chip_shift);
#endif /* GNSS_SDR_GPS_SDR_SIGNAL_PROCESSING_H_ */
diff --git a/src/algorithms/libs/nco_lib.h b/src/algorithms/libs/nco_lib.h
index dfac46d76..0deb4f996 100644
--- a/src/algorithms/libs/nco_lib.h
+++ b/src/algorithms/libs/nco_lib.h
@@ -43,7 +43,7 @@
#include
/*!
- * \brief Implements a conjugate complex exponential vector in std::complex *d_carr_sign
+ * \brief Implements a complex conjugate exponential vector in std::complex *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 *dest, int n_samples,float start_phase_rad, float phase_step_rad);
/*!
- * \brief Implements a conjugate complex exponential vector in std::complex *d_carr_sign
+ * \brief Implements a complex conjugate exponential vector in std::complex *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 *dest, int n_samples,float start_phase_rad, flo
void fxp_nco(std::complex *dest, int n_samples,float start_phase_rad, float phase_step_rad);
/*!
- * \brief Implements a conjugate complex exponential vector in std::complex *d_carr_sign
+ * \brief Implements a complex conjugate exponential vector in std::complex *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 *dest, int n_samples,float start_phase_rad, flo
void std_nco(std::complex *dest, int n_samples,float start_phase_rad, float phase_step_rad);
/*!
- * \brief Implements a conjugate complex exponential vector in std::complex *d_carr_sign
+ * \brief Implements a complex conjugate exponential vector in std::complex *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 *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.
*
diff --git a/src/algorithms/libs/pass_through.h b/src/algorithms/libs/pass_through.h
index 10f3207f6..4af8f43b3 100644
--- a/src/algorithms/libs/pass_through.h
+++ b/src/algorithms/libs/pass_through.h
@@ -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";
diff --git a/src/algorithms/libs/sse_mathfun.h b/src/algorithms/libs/sse_mathfun.h
index 1ddcc24e9..c6dd00910 100644
--- a/src/algorithms/libs/sse_mathfun.h
+++ b/src/algorithms/libs/sse_mathfun.h
@@ -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
diff --git a/src/algorithms/observables/adapters/gps_l1_ca_observables.h b/src/algorithms/observables/adapters/gps_l1_ca_observables.h
index 7748655dd..fa1342a26 100644
--- a/src/algorithms/observables/adapters/gps_l1_ca_observables.h
+++ b/src/algorithms/observables/adapters/gps_l1_ca_observables.h
@@ -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);
diff --git a/src/algorithms/resampler/adapters/direct_resampler_conditioner.h b/src/algorithms/resampler/adapters/direct_resampler_conditioner.h
index 8b7155e51..b067f9018 100644
--- a/src/algorithms/resampler/adapters/direct_resampler_conditioner.h
+++ b/src/algorithms/resampler/adapters/direct_resampler_conditioner.h
@@ -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";
diff --git a/src/algorithms/signal_source/adapters/gn3s_signal_source.h b/src/algorithms/signal_source/adapters/gn3s_signal_source.h
index 99a25972a..1b1f4bf41 100644
--- a/src/algorithms/signal_source/adapters/gn3s_signal_source.h
+++ b/src/algorithms/signal_source/adapters/gn3s_signal_source.h
@@ -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:
diff --git a/src/algorithms/tracking/adapters/galileo_e1_tcp_connector_tracking.h b/src/algorithms/tracking/adapters/galileo_e1_tcp_connector_tracking.h
index 121815329..d898162a0 100644
--- a/src/algorithms/tracking/adapters/galileo_e1_tcp_connector_tracking.h
+++ b/src/algorithms/tracking/adapters/galileo_e1_tcp_connector_tracking.h
@@ -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";
diff --git a/src/algorithms/tracking/gnuradio_blocks/galileo_e1_tcp_connector_tracking_cc.h b/src/algorithms/tracking/gnuradio_blocks/galileo_e1_tcp_connector_tracking_cc.h
index 525120d1d..c202fe46e 100644
--- a/src/algorithms/tracking/gnuradio_blocks/galileo_e1_tcp_connector_tracking_cc.h
+++ b/src/algorithms/tracking/gnuradio_blocks/galileo_e1_tcp_connector_tracking_cc.h
@@ -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
diff --git a/src/algorithms/tracking/libs/tcp_communication.h b/src/algorithms/tracking/libs/tcp_communication.h
index 702d5537b..f0585183c 100644
--- a/src/algorithms/tracking/libs/tcp_communication.h
+++ b/src/algorithms/tracking/libs/tcp_communication.h
@@ -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 buf, tcp_packet_data *tcp_data_);
- void send_receive_tcp_packet_gps_l1_ca(boost::array 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 buf, tcp_packet_data *tcp_data_);
+ void send_receive_tcp_packet_gps_l1_ca(boost::array buf, tcp_packet_data *tcp_data_);
+ void close_tcp_connection(size_t d_port_);
private:
boost::asio::io_service io_service_;
diff --git a/src/algorithms/tracking/libs/tcp_packet_data.h b/src/algorithms/tracking/libs/tcp_packet_data.h
index 0f6c7e777..d8e2201ec 100644
--- a/src/algorithms/tracking/libs/tcp_packet_data.h
+++ b/src/algorithms/tracking/libs/tcp_packet_data.h
@@ -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:
diff --git a/src/core/interfaces/observables_interface.h b/src/core/interfaces/observables_interface.h
index 9bc164296..7229a9bab 100644
--- a/src/core/interfaces/observables_interface.h
+++ b/src/core/interfaces/observables_interface.h
@@ -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
diff --git a/src/core/interfaces/telemetry_decoder_interface.h b/src/core/interfaces/telemetry_decoder_interface.h
index 2847423b0..d262b7b9d 100644
--- a/src/core/interfaces/telemetry_decoder_interface.h
+++ b/src/core/interfaces/telemetry_decoder_interface.h
@@ -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
diff --git a/src/core/libs/INIReader.h b/src/core/libs/INIReader.h
index b11a3a81b..909f1cae8 100644
--- a/src/core/libs/INIReader.h
+++ b/src/core/libs/INIReader.h
@@ -51,25 +51,24 @@
#include