mirror of
https://github.com/gnss-sdr/gnss-sdr
synced 2024-10-31 23:26:22 +00:00
Apply clang tidy checks and clang-format
This commit is contained in:
parent
0520d400b3
commit
e80122f4ff
@ -53,7 +53,7 @@ IncludeCategories:
|
|||||||
Priority: 1
|
Priority: 1
|
||||||
- Regex: '^.*(boost|gflags|glog|gnsssdr|gnuradio|gpstk|gsl|gtest|pmt|uhd|volk)/'
|
- Regex: '^.*(boost|gflags|glog|gnsssdr|gnuradio|gpstk|gsl|gtest|pmt|uhd|volk)/'
|
||||||
Priority: 2
|
Priority: 2
|
||||||
- Regex: '^.*(armadillo|matio|pugixml)'
|
- Regex: '^.*(armadillo|iio|matio|pugixml)'
|
||||||
Priority: 2
|
Priority: 2
|
||||||
- Regex: '.*'
|
- Regex: '.*'
|
||||||
Priority: 3
|
Priority: 3
|
||||||
|
@ -28,8 +28,8 @@
|
|||||||
* -------------------------------------------------------------------------
|
* -------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef GNSS_SDR_RTKLIB_PVT_GS_H
|
#ifndef GNSS_SDR_RTKLIB_PVT_GS_H_
|
||||||
#define GNSS_SDR_RTKLIB_PVT_GS_H
|
#define GNSS_SDR_RTKLIB_PVT_GS_H_
|
||||||
|
|
||||||
#include "gnss_synchro.h"
|
#include "gnss_synchro.h"
|
||||||
#include "rtklib.h"
|
#include "rtklib.h"
|
||||||
@ -252,4 +252,4 @@ private:
|
|||||||
boost::posix_time::time_duration d_utc_diff_time;
|
boost::posix_time::time_duration d_utc_diff_time;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif // GNSS_SDR_RTKLIB_PVT_GS_H_
|
||||||
|
@ -224,7 +224,7 @@ arma::vec Ls_Pvt::leastSquarePos(const arma::mat& satpos, const arma::vec& obs,
|
|||||||
// --- Correct satellite position (do to earth rotation) -------
|
// --- Correct satellite position (do to earth rotation) -------
|
||||||
Rot_X = Ls_Pvt::rotateSatellite(traveltime, X.col(i)); // armadillo
|
Rot_X = Ls_Pvt::rotateSatellite(traveltime, X.col(i)); // armadillo
|
||||||
|
|
||||||
//--- Find DOA and range of satellites
|
// -- Find DOA and range of satellites
|
||||||
double* azim = nullptr;
|
double* azim = nullptr;
|
||||||
double* elev = nullptr;
|
double* elev = nullptr;
|
||||||
double* dist = nullptr;
|
double* dist = nullptr;
|
||||||
@ -254,7 +254,7 @@ arma::vec Ls_Pvt::leastSquarePos(const arma::mat& satpos, const arma::vec& obs,
|
|||||||
// --- Apply the corrections ----------------------------------------
|
// --- Apply the corrections ----------------------------------------
|
||||||
omc(i) = (obs(i) - norm(Rot_X - pos.subvec(0, 2), 2) - pos(3) - trop); // Armadillo
|
omc(i) = (obs(i) - norm(Rot_X - pos.subvec(0, 2), 2) - pos(3) - trop); // Armadillo
|
||||||
|
|
||||||
//--- Construct the A matrix ---------------------------------------
|
// -- Construct the A matrix ---------------------------------------
|
||||||
// Armadillo
|
// Armadillo
|
||||||
A(i, 0) = (-(Rot_X(0) - pos(0))) / obs(i);
|
A(i, 0) = (-(Rot_X(0) - pos(0))) / obs(i);
|
||||||
A(i, 1) = (-(Rot_X(1) - pos(1))) / obs(i);
|
A(i, 1) = (-(Rot_X(1) - pos(1))) / obs(i);
|
||||||
@ -262,10 +262,10 @@ arma::vec Ls_Pvt::leastSquarePos(const arma::mat& satpos, const arma::vec& obs,
|
|||||||
A(i, 3) = 1.0;
|
A(i, 3) = 1.0;
|
||||||
}
|
}
|
||||||
|
|
||||||
//--- Find position update ---------------------------------------------
|
// -- Find position update ---------------------------------------------
|
||||||
x = arma::solve(w * A, w * omc); // Armadillo
|
x = arma::solve(w * A, w * omc); // Armadillo
|
||||||
|
|
||||||
//--- Apply position update --------------------------------------------
|
// -- Apply position update --------------------------------------------
|
||||||
pos = pos + x;
|
pos = pos + x;
|
||||||
if (arma::norm(x, 2) < 1e-4)
|
if (arma::norm(x, 2) < 1e-4)
|
||||||
{
|
{
|
||||||
|
@ -70,16 +70,16 @@ arma::vec Pvt_Solution::rotateSatellite(double const traveltime, const arma::vec
|
|||||||
* X_sat_rot - rotated satellite's coordinates (ECEF)
|
* X_sat_rot - rotated satellite's coordinates (ECEF)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
//--- Find rotation angle --------------------------------------------------
|
// -- Find rotation angle --------------------------------------------------
|
||||||
double omegatau;
|
double omegatau;
|
||||||
omegatau = OMEGA_EARTH_DOT * traveltime;
|
omegatau = OMEGA_EARTH_DOT * traveltime;
|
||||||
|
|
||||||
//--- Build a rotation matrix ----------------------------------------------
|
// -- Build a rotation matrix ----------------------------------------------
|
||||||
arma::mat R3 = {{cos(omegatau), sin(omegatau), 0.0},
|
arma::mat R3 = {{cos(omegatau), sin(omegatau), 0.0},
|
||||||
{-sin(omegatau), cos(omegatau), 0.0},
|
{-sin(omegatau), cos(omegatau), 0.0},
|
||||||
{0.0, 0.0, 1.0}};
|
{0.0, 0.0, 1.0}};
|
||||||
|
|
||||||
//--- Do the rotation ------------------------------------------------------
|
// -- Do the rotation ------------------------------------------------------
|
||||||
arma::vec X_sat_rot;
|
arma::vec X_sat_rot;
|
||||||
X_sat_rot = R3 * X_sat;
|
X_sat_rot = R3 * X_sat;
|
||||||
return X_sat_rot;
|
return X_sat_rot;
|
||||||
|
@ -91,7 +91,7 @@ Rtklib_Solver::Rtklib_Solver(int nchannels, const std::string &dump_filename, bo
|
|||||||
{
|
{
|
||||||
// init empty ephemeris for all the available GNSS channels
|
// init empty ephemeris for all the available GNSS channels
|
||||||
d_nchannels = nchannels;
|
d_nchannels = nchannels;
|
||||||
d_dump_filename = std::move(dump_filename);
|
d_dump_filename = dump_filename;
|
||||||
d_flag_dump_enabled = flag_dump_to_file;
|
d_flag_dump_enabled = flag_dump_to_file;
|
||||||
d_flag_dump_mat_enabled = flag_dump_to_mat;
|
d_flag_dump_mat_enabled = flag_dump_to_mat;
|
||||||
this->set_averaging_flag(false);
|
this->set_averaging_flag(false);
|
||||||
|
@ -139,4 +139,4 @@ private:
|
|||||||
bool save_matfile();
|
bool save_matfile();
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif // GNSS_SDR_RTKLIB_SOLVER_H_
|
||||||
|
@ -79,7 +79,7 @@ GalileoE1Pcps8msAmbiguousAcquisition::GalileoE1Pcps8msAmbiguousAcquisition(
|
|||||||
dump_filename_ = configuration_->property(role + ".dump_filename",
|
dump_filename_ = configuration_->property(role + ".dump_filename",
|
||||||
default_dump_filename);
|
default_dump_filename);
|
||||||
|
|
||||||
//--- Find number of samples per spreading code (4 ms) -----------------
|
// -- Find number of samples per spreading code (4 ms) -----------------
|
||||||
code_length_ = round(
|
code_length_ = round(
|
||||||
fs_in_ / (GALILEO_E1_CODE_CHIP_RATE_CPS / GALILEO_E1_B_CODE_LENGTH_CHIPS));
|
fs_in_ / (GALILEO_E1_CODE_CHIP_RATE_CPS / GALILEO_E1_B_CODE_LENGTH_CHIPS));
|
||||||
|
|
||||||
|
@ -107,14 +107,14 @@ GalileoE1PcpsAmbiguousAcquisition::GalileoE1PcpsAmbiguousAcquisition(
|
|||||||
acq_parameters_.resampler_ratio = decimation;
|
acq_parameters_.resampler_ratio = decimation;
|
||||||
acq_parameters_.resampled_fs = acq_parameters_.fs_in / static_cast<int>(acq_parameters_.resampler_ratio);
|
acq_parameters_.resampled_fs = acq_parameters_.fs_in / static_cast<int>(acq_parameters_.resampler_ratio);
|
||||||
}
|
}
|
||||||
//--- Find number of samples per spreading code (4 ms) -----------------
|
// -- Find number of samples per spreading code (4 ms) -----------------
|
||||||
code_length_ = static_cast<unsigned int>(std::floor(static_cast<double>(acq_parameters_.resampled_fs) / (GALILEO_E1_CODE_CHIP_RATE_CPS / GALILEO_E1_B_CODE_LENGTH_CHIPS)));
|
code_length_ = static_cast<unsigned int>(std::floor(static_cast<double>(acq_parameters_.resampled_fs) / (GALILEO_E1_CODE_CHIP_RATE_CPS / GALILEO_E1_B_CODE_LENGTH_CHIPS)));
|
||||||
acq_parameters_.samples_per_ms = static_cast<float>(acq_parameters_.resampled_fs) * 0.001;
|
acq_parameters_.samples_per_ms = static_cast<float>(acq_parameters_.resampled_fs) * 0.001;
|
||||||
acq_parameters_.samples_per_chip = static_cast<unsigned int>(ceil((1.0 / GALILEO_E1_CODE_CHIP_RATE_CPS) * static_cast<float>(acq_parameters_.resampled_fs)));
|
acq_parameters_.samples_per_chip = static_cast<unsigned int>(ceil((1.0 / GALILEO_E1_CODE_CHIP_RATE_CPS) * static_cast<float>(acq_parameters_.resampled_fs)));
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
//--- Find number of samples per spreading code (4 ms) -----------------
|
// -- Find number of samples per spreading code (4 ms) -----------------
|
||||||
code_length_ = static_cast<unsigned int>(std::floor(static_cast<double>(fs_in_) / (GALILEO_E1_CODE_CHIP_RATE_CPS / GALILEO_E1_B_CODE_LENGTH_CHIPS)));
|
code_length_ = static_cast<unsigned int>(std::floor(static_cast<double>(fs_in_) / (GALILEO_E1_CODE_CHIP_RATE_CPS / GALILEO_E1_B_CODE_LENGTH_CHIPS)));
|
||||||
acq_parameters_.samples_per_ms = static_cast<float>(fs_in_) * 0.001;
|
acq_parameters_.samples_per_ms = static_cast<float>(fs_in_) * 0.001;
|
||||||
acq_parameters_.samples_per_chip = static_cast<unsigned int>(ceil((1.0 / GALILEO_E1_CODE_CHIP_RATE_CPS) * static_cast<float>(acq_parameters_.fs_in)));
|
acq_parameters_.samples_per_chip = static_cast<unsigned int>(ceil((1.0 / GALILEO_E1_CODE_CHIP_RATE_CPS) * static_cast<float>(acq_parameters_.fs_in)));
|
||||||
|
@ -77,7 +77,7 @@ GalileoE1PcpsCccwsrAmbiguousAcquisition::GalileoE1PcpsCccwsrAmbiguousAcquisition
|
|||||||
dump_filename_ = configuration_->property(role + ".dump_filename",
|
dump_filename_ = configuration_->property(role + ".dump_filename",
|
||||||
default_dump_filename);
|
default_dump_filename);
|
||||||
|
|
||||||
//--- Find number of samples per spreading code (4 ms) -----------------
|
// -- Find number of samples per spreading code (4 ms) -----------------
|
||||||
|
|
||||||
code_length_ = round(
|
code_length_ = round(
|
||||||
fs_in_ / (GALILEO_E1_CODE_CHIP_RATE_CPS / GALILEO_E1_B_CODE_LENGTH_CHIPS));
|
fs_in_ / (GALILEO_E1_CODE_CHIP_RATE_CPS / GALILEO_E1_B_CODE_LENGTH_CHIPS));
|
||||||
|
@ -81,7 +81,7 @@ GalileoE1PcpsTongAmbiguousAcquisition::GalileoE1PcpsTongAmbiguousAcquisition(
|
|||||||
dump_filename_ = configuration_->property(role + ".dump_filename",
|
dump_filename_ = configuration_->property(role + ".dump_filename",
|
||||||
default_dump_filename);
|
default_dump_filename);
|
||||||
|
|
||||||
//--- Find number of samples per spreading code (4 ms) -----------------
|
// -- Find number of samples per spreading code (4 ms) -----------------
|
||||||
|
|
||||||
code_length_ = round(
|
code_length_ = round(
|
||||||
fs_in_ / (GALILEO_E1_CODE_CHIP_RATE_CPS / GALILEO_E1_B_CODE_LENGTH_CHIPS));
|
fs_in_ / (GALILEO_E1_CODE_CHIP_RATE_CPS / GALILEO_E1_B_CODE_LENGTH_CHIPS));
|
||||||
|
@ -89,7 +89,7 @@ GalileoE5aNoncoherentIQAcquisitionCaf::GalileoE5aNoncoherentIQAcquisitionCaf(
|
|||||||
dump_filename_ = configuration_->property(role + ".dump_filename", default_dump_filename);
|
dump_filename_ = configuration_->property(role + ".dump_filename", default_dump_filename);
|
||||||
bit_transition_flag_ = configuration_->property(role + ".bit_transition_flag", false);
|
bit_transition_flag_ = configuration_->property(role + ".bit_transition_flag", false);
|
||||||
|
|
||||||
//--- Find number of samples per spreading code (1ms)-------------------------
|
// -- Find number of samples per spreading code (1ms)-------------------------
|
||||||
code_length_ = round(static_cast<double>(fs_in_) / GALILEO_E5A_CODE_CHIP_RATE_CPS * static_cast<double>(GALILEO_E5A_CODE_LENGTH_CHIPS));
|
code_length_ = round(static_cast<double>(fs_in_) / GALILEO_E5A_CODE_CHIP_RATE_CPS * static_cast<double>(GALILEO_E5A_CODE_LENGTH_CHIPS));
|
||||||
|
|
||||||
vector_length_ = code_length_ * sampled_ms_;
|
vector_length_ = code_length_ * sampled_ms_;
|
||||||
|
@ -105,7 +105,7 @@ GalileoE5aPcpsAcquisition::GalileoE5aPcpsAcquisition(ConfigurationInterface* con
|
|||||||
acq_parameters_.resampled_fs = acq_parameters_.fs_in / static_cast<int>(acq_parameters_.resampler_ratio);
|
acq_parameters_.resampled_fs = acq_parameters_.fs_in / static_cast<int>(acq_parameters_.resampler_ratio);
|
||||||
}
|
}
|
||||||
|
|
||||||
//--- Find number of samples per spreading code -------------------------
|
// -- Find number of samples per spreading code -------------------------
|
||||||
code_length_ = static_cast<unsigned int>(std::floor(static_cast<double>(acq_parameters_.resampled_fs) / (GALILEO_E5A_CODE_CHIP_RATE_CPS / GALILEO_E5A_CODE_LENGTH_CHIPS)));
|
code_length_ = static_cast<unsigned int>(std::floor(static_cast<double>(acq_parameters_.resampled_fs) / (GALILEO_E5A_CODE_CHIP_RATE_CPS / GALILEO_E5A_CODE_LENGTH_CHIPS)));
|
||||||
acq_parameters_.samples_per_ms = static_cast<float>(acq_parameters_.resampled_fs) * 0.001;
|
acq_parameters_.samples_per_ms = static_cast<float>(acq_parameters_.resampled_fs) * 0.001;
|
||||||
acq_parameters_.samples_per_chip = static_cast<unsigned int>(ceil((1.0 / GALILEO_E5A_CODE_CHIP_RATE_CPS) * static_cast<float>(acq_parameters_.resampled_fs)));
|
acq_parameters_.samples_per_chip = static_cast<unsigned int>(ceil((1.0 / GALILEO_E5A_CODE_CHIP_RATE_CPS) * static_cast<float>(acq_parameters_.resampled_fs)));
|
||||||
@ -113,13 +113,13 @@ GalileoE5aPcpsAcquisition::GalileoE5aPcpsAcquisition(ConfigurationInterface* con
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
acq_parameters_.resampled_fs = fs_in_;
|
acq_parameters_.resampled_fs = fs_in_;
|
||||||
//--- Find number of samples per spreading code -------------------------
|
// -- Find number of samples per spreading code -------------------------
|
||||||
code_length_ = static_cast<unsigned int>(std::floor(static_cast<double>(fs_in_) / (GALILEO_E5A_CODE_CHIP_RATE_CPS / GALILEO_E5A_CODE_LENGTH_CHIPS)));
|
code_length_ = static_cast<unsigned int>(std::floor(static_cast<double>(fs_in_) / (GALILEO_E5A_CODE_CHIP_RATE_CPS / GALILEO_E5A_CODE_LENGTH_CHIPS)));
|
||||||
acq_parameters_.samples_per_ms = static_cast<float>(fs_in_) * 0.001;
|
acq_parameters_.samples_per_ms = static_cast<float>(fs_in_) * 0.001;
|
||||||
acq_parameters_.samples_per_chip = static_cast<unsigned int>(ceil((1.0 / GALILEO_E5A_CODE_CHIP_RATE_CPS) * static_cast<float>(acq_parameters_.fs_in)));
|
acq_parameters_.samples_per_chip = static_cast<unsigned int>(ceil((1.0 / GALILEO_E5A_CODE_CHIP_RATE_CPS) * static_cast<float>(acq_parameters_.fs_in)));
|
||||||
}
|
}
|
||||||
|
|
||||||
//--- Find number of samples per spreading code (1ms)-------------------------
|
// -- Find number of samples per spreading code (1ms)-------------------------
|
||||||
code_length_ = static_cast<unsigned int>(std::round(static_cast<double>(fs_in_) / GALILEO_E5A_CODE_CHIP_RATE_CPS * static_cast<double>(GALILEO_E5A_CODE_LENGTH_CHIPS)));
|
code_length_ = static_cast<unsigned int>(std::round(static_cast<double>(fs_in_) / GALILEO_E5A_CODE_CHIP_RATE_CPS * static_cast<double>(GALILEO_E5A_CODE_LENGTH_CHIPS)));
|
||||||
vector_length_ = code_length_ * sampled_ms_;
|
vector_length_ = code_length_ * sampled_ms_;
|
||||||
|
|
||||||
|
@ -107,7 +107,7 @@ GpsL1CaPcpsAcquisition::GpsL1CaPcpsAcquisition(
|
|||||||
acq_parameters_.resampler_ratio = decimation;
|
acq_parameters_.resampler_ratio = decimation;
|
||||||
acq_parameters_.resampled_fs = acq_parameters_.fs_in / static_cast<int>(acq_parameters_.resampler_ratio);
|
acq_parameters_.resampled_fs = acq_parameters_.fs_in / static_cast<int>(acq_parameters_.resampler_ratio);
|
||||||
}
|
}
|
||||||
//--- Find number of samples per spreading code -------------------------
|
// -- Find number of samples per spreading code -------------------------
|
||||||
code_length_ = static_cast<unsigned int>(std::floor(static_cast<double>(acq_parameters_.resampled_fs) / (GPS_L1_CA_CODE_RATE_CPS / GPS_L1_CA_CODE_LENGTH_CHIPS)));
|
code_length_ = static_cast<unsigned int>(std::floor(static_cast<double>(acq_parameters_.resampled_fs) / (GPS_L1_CA_CODE_RATE_CPS / GPS_L1_CA_CODE_LENGTH_CHIPS)));
|
||||||
acq_parameters_.samples_per_ms = static_cast<float>(acq_parameters_.resampled_fs) * 0.001;
|
acq_parameters_.samples_per_ms = static_cast<float>(acq_parameters_.resampled_fs) * 0.001;
|
||||||
acq_parameters_.samples_per_chip = static_cast<unsigned int>(ceil(GPS_L1_CA_CHIP_PERIOD_S * static_cast<float>(acq_parameters_.resampled_fs)));
|
acq_parameters_.samples_per_chip = static_cast<unsigned int>(ceil(GPS_L1_CA_CHIP_PERIOD_S * static_cast<float>(acq_parameters_.resampled_fs)));
|
||||||
@ -115,7 +115,7 @@ GpsL1CaPcpsAcquisition::GpsL1CaPcpsAcquisition(
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
acq_parameters_.resampled_fs = fs_in_;
|
acq_parameters_.resampled_fs = fs_in_;
|
||||||
//--- Find number of samples per spreading code -------------------------
|
// -- Find number of samples per spreading code -------------------------
|
||||||
code_length_ = static_cast<unsigned int>(std::floor(static_cast<double>(fs_in_) / (GPS_L1_CA_CODE_RATE_CPS / GPS_L1_CA_CODE_LENGTH_CHIPS)));
|
code_length_ = static_cast<unsigned int>(std::floor(static_cast<double>(fs_in_) / (GPS_L1_CA_CODE_RATE_CPS / GPS_L1_CA_CODE_LENGTH_CHIPS)));
|
||||||
acq_parameters_.samples_per_ms = static_cast<float>(fs_in_) * 0.001;
|
acq_parameters_.samples_per_ms = static_cast<float>(fs_in_) * 0.001;
|
||||||
acq_parameters_.samples_per_chip = static_cast<unsigned int>(ceil(GPS_L1_CA_CHIP_PERIOD_S * static_cast<float>(acq_parameters_.fs_in)));
|
acq_parameters_.samples_per_chip = static_cast<unsigned int>(ceil(GPS_L1_CA_CHIP_PERIOD_S * static_cast<float>(acq_parameters_.fs_in)));
|
||||||
|
@ -77,7 +77,7 @@ GpsL1CaPcpsAcquisitionFineDoppler::GpsL1CaPcpsAcquisitionFineDoppler(
|
|||||||
|
|
||||||
acq_parameters.blocking_on_standby = configuration->property(role + ".blocking_on_standby", false);
|
acq_parameters.blocking_on_standby = configuration->property(role + ".blocking_on_standby", false);
|
||||||
|
|
||||||
//--- Find number of samples per spreading code -------------------------
|
// -- Find number of samples per spreading code -------------------------
|
||||||
vector_length_ = round(fs_in_ / (GPS_L1_CA_CODE_RATE_CPS / GPS_L1_CA_CODE_LENGTH_CHIPS));
|
vector_length_ = round(fs_in_ / (GPS_L1_CA_CODE_RATE_CPS / GPS_L1_CA_CODE_LENGTH_CHIPS));
|
||||||
acq_parameters.samples_per_ms = vector_length_;
|
acq_parameters.samples_per_ms = vector_length_;
|
||||||
code_ = std::vector<std::complex<float>>(vector_length_);
|
code_ = std::vector<std::complex<float>>(vector_length_);
|
||||||
|
@ -80,7 +80,7 @@ GpsL1CaPcpsOpenClAcquisition::GpsL1CaPcpsOpenClAcquisition(
|
|||||||
dump_filename_ = configuration_->property(role + ".dump_filename",
|
dump_filename_ = configuration_->property(role + ".dump_filename",
|
||||||
default_dump_filename);
|
default_dump_filename);
|
||||||
|
|
||||||
//--- Find number of samples per spreading code -------------------------
|
// -- Find number of samples per spreading code -------------------------
|
||||||
code_length_ = round(fs_in_ / (GPS_L1_CA_CODE_RATE_CPS / GPS_L1_CA_CODE_LENGTH_CHIPS));
|
code_length_ = round(fs_in_ / (GPS_L1_CA_CODE_RATE_CPS / GPS_L1_CA_CODE_LENGTH_CHIPS));
|
||||||
|
|
||||||
vector_length_ = code_length_ * sampled_ms_;
|
vector_length_ = code_length_ * sampled_ms_;
|
||||||
|
@ -65,7 +65,7 @@ GpsL1CaPcpsQuickSyncAcquisition::GpsL1CaPcpsQuickSyncAcquisition(
|
|||||||
}
|
}
|
||||||
sampled_ms_ = configuration_->property(role + ".coherent_integration_time_ms", 4);
|
sampled_ms_ = configuration_->property(role + ".coherent_integration_time_ms", 4);
|
||||||
|
|
||||||
//--- Find number of samples per spreading code -------------------------
|
// -- Find number of samples per spreading code -------------------------
|
||||||
code_length_ = round(fs_in_ / (GPS_L1_CA_CODE_RATE_CPS / GPS_L1_CA_CODE_LENGTH_CHIPS));
|
code_length_ = round(fs_in_ / (GPS_L1_CA_CODE_RATE_CPS / GPS_L1_CA_CODE_LENGTH_CHIPS));
|
||||||
|
|
||||||
/* Calculate the folding factor value based on the calculations */
|
/* Calculate the folding factor value based on the calculations */
|
||||||
|
@ -71,7 +71,7 @@ GpsL1CaPcpsTongAcquisition::GpsL1CaPcpsTongAcquisition(
|
|||||||
|
|
||||||
dump_filename_ = configuration_->property(role + ".dump_filename", default_dump_filename);
|
dump_filename_ = configuration_->property(role + ".dump_filename", default_dump_filename);
|
||||||
|
|
||||||
//--- Find number of samples per spreading code -------------------------
|
// -- Find number of samples per spreading code -------------------------
|
||||||
code_length_ = round(fs_in_ / (GPS_L1_CA_CODE_RATE_CPS / GPS_L1_CA_CODE_LENGTH_CHIPS));
|
code_length_ = round(fs_in_ / (GPS_L1_CA_CODE_RATE_CPS / GPS_L1_CA_CODE_LENGTH_CHIPS));
|
||||||
|
|
||||||
vector_length_ = code_length_ * sampled_ms_;
|
vector_length_ = code_length_ * sampled_ms_;
|
||||||
|
@ -111,7 +111,7 @@ GpsL2MPcpsAcquisition::GpsL2MPcpsAcquisition(
|
|||||||
acq_parameters_.resampled_fs = acq_parameters_.fs_in / static_cast<int>(acq_parameters_.resampler_ratio);
|
acq_parameters_.resampled_fs = acq_parameters_.fs_in / static_cast<int>(acq_parameters_.resampler_ratio);
|
||||||
}
|
}
|
||||||
|
|
||||||
//--- Find number of samples per spreading code -------------------------
|
// -- Find number of samples per spreading code -------------------------
|
||||||
code_length_ = static_cast<unsigned int>(std::floor(static_cast<double>(acq_parameters_.resampled_fs) / (GPS_L2_M_CODE_RATE_CPS / GPS_L2_M_CODE_LENGTH_CHIPS)));
|
code_length_ = static_cast<unsigned int>(std::floor(static_cast<double>(acq_parameters_.resampled_fs) / (GPS_L2_M_CODE_RATE_CPS / GPS_L2_M_CODE_LENGTH_CHIPS)));
|
||||||
acq_parameters_.samples_per_ms = static_cast<float>(acq_parameters_.resampled_fs) * 0.001;
|
acq_parameters_.samples_per_ms = static_cast<float>(acq_parameters_.resampled_fs) * 0.001;
|
||||||
acq_parameters_.samples_per_chip = static_cast<unsigned int>(ceil((1.0 / GPS_L2_M_CODE_RATE_CPS) * static_cast<float>(acq_parameters_.resampled_fs)));
|
acq_parameters_.samples_per_chip = static_cast<unsigned int>(ceil((1.0 / GPS_L2_M_CODE_RATE_CPS) * static_cast<float>(acq_parameters_.resampled_fs)));
|
||||||
@ -119,7 +119,7 @@ GpsL2MPcpsAcquisition::GpsL2MPcpsAcquisition(
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
acq_parameters_.resampled_fs = fs_in_;
|
acq_parameters_.resampled_fs = fs_in_;
|
||||||
//--- Find number of samples per spreading code -------------------------
|
// -- Find number of samples per spreading code -------------------------
|
||||||
code_length_ = static_cast<unsigned int>(std::floor(static_cast<double>(fs_in_) / (GPS_L2_M_CODE_RATE_CPS / GPS_L2_M_CODE_LENGTH_CHIPS)));
|
code_length_ = static_cast<unsigned int>(std::floor(static_cast<double>(fs_in_) / (GPS_L2_M_CODE_RATE_CPS / GPS_L2_M_CODE_LENGTH_CHIPS)));
|
||||||
acq_parameters_.samples_per_ms = static_cast<float>(fs_in_) * 0.001;
|
acq_parameters_.samples_per_ms = static_cast<float>(fs_in_) * 0.001;
|
||||||
acq_parameters_.samples_per_chip = static_cast<unsigned int>(ceil((1.0 / GPS_L2_M_CODE_RATE_CPS) * static_cast<float>(acq_parameters_.fs_in)));
|
acq_parameters_.samples_per_chip = static_cast<unsigned int>(ceil((1.0 / GPS_L2_M_CODE_RATE_CPS) * static_cast<float>(acq_parameters_.fs_in)));
|
||||||
|
@ -118,7 +118,7 @@ GpsL5iPcpsAcquisition::GpsL5iPcpsAcquisition(
|
|||||||
acq_parameters_.resampled_fs = acq_parameters_.fs_in / static_cast<int>(acq_parameters_.resampler_ratio);
|
acq_parameters_.resampled_fs = acq_parameters_.fs_in / static_cast<int>(acq_parameters_.resampler_ratio);
|
||||||
}
|
}
|
||||||
|
|
||||||
//--- Find number of samples per spreading code -------------------------
|
// -- Find number of samples per spreading code -------------------------
|
||||||
code_length_ = static_cast<unsigned int>(std::floor(static_cast<double>(acq_parameters_.resampled_fs) / (GPS_L5I_CODE_RATE_CPS / GPS_L5I_CODE_LENGTH_CHIPS)));
|
code_length_ = static_cast<unsigned int>(std::floor(static_cast<double>(acq_parameters_.resampled_fs) / (GPS_L5I_CODE_RATE_CPS / GPS_L5I_CODE_LENGTH_CHIPS)));
|
||||||
acq_parameters_.samples_per_ms = static_cast<float>(acq_parameters_.resampled_fs) * 0.001;
|
acq_parameters_.samples_per_ms = static_cast<float>(acq_parameters_.resampled_fs) * 0.001;
|
||||||
acq_parameters_.samples_per_chip = static_cast<unsigned int>(ceil((1.0 / GPS_L5I_CODE_RATE_CPS) * static_cast<float>(acq_parameters_.resampled_fs)));
|
acq_parameters_.samples_per_chip = static_cast<unsigned int>(ceil((1.0 / GPS_L5I_CODE_RATE_CPS) * static_cast<float>(acq_parameters_.resampled_fs)));
|
||||||
@ -126,7 +126,7 @@ GpsL5iPcpsAcquisition::GpsL5iPcpsAcquisition(
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
acq_parameters_.resampled_fs = fs_in_;
|
acq_parameters_.resampled_fs = fs_in_;
|
||||||
//--- Find number of samples per spreading code -------------------------
|
// -- Find number of samples per spreading code -------------------------
|
||||||
code_length_ = static_cast<unsigned int>(std::floor(static_cast<double>(fs_in_) / (GPS_L5I_CODE_RATE_CPS / GPS_L5I_CODE_LENGTH_CHIPS)));
|
code_length_ = static_cast<unsigned int>(std::floor(static_cast<double>(fs_in_) / (GPS_L5I_CODE_RATE_CPS / GPS_L5I_CODE_LENGTH_CHIPS)));
|
||||||
acq_parameters_.samples_per_ms = static_cast<float>(fs_in_) * 0.001;
|
acq_parameters_.samples_per_ms = static_cast<float>(fs_in_) * 0.001;
|
||||||
acq_parameters_.samples_per_chip = static_cast<unsigned int>(ceil((1.0 / GPS_L5I_CODE_RATE_CPS) * static_cast<float>(acq_parameters_.fs_in)));
|
acq_parameters_.samples_per_chip = static_cast<unsigned int>(ceil((1.0 / GPS_L5I_CODE_RATE_CPS) * static_cast<float>(acq_parameters_.fs_in)));
|
||||||
|
@ -78,7 +78,7 @@ GpsL5iPcpsAcquisitionFpga::GpsL5iPcpsAcquisitionFpga(
|
|||||||
uint32_t sampled_ms = configuration_->property(role + ".coherent_integration_time_ms", 1);
|
uint32_t sampled_ms = configuration_->property(role + ".coherent_integration_time_ms", 1);
|
||||||
acq_parameters.sampled_ms = sampled_ms;
|
acq_parameters.sampled_ms = sampled_ms;
|
||||||
|
|
||||||
//--- Find number of samples per spreading code -------------------------
|
// -- Find number of samples per spreading code -------------------------
|
||||||
auto code_length = static_cast<uint32_t>(std::round(static_cast<double>(fs_in) / (GPS_L5I_CODE_RATE_CPS / static_cast<double>(GPS_L5I_CODE_LENGTH_CHIPS))));
|
auto code_length = static_cast<uint32_t>(std::round(static_cast<double>(fs_in) / (GPS_L5I_CODE_RATE_CPS / static_cast<double>(GPS_L5I_CODE_LENGTH_CHIPS))));
|
||||||
acq_parameters.code_length = code_length;
|
acq_parameters.code_length = code_length;
|
||||||
// The FPGA can only use FFT lengths that are a power of two.
|
// The FPGA can only use FFT lengths that are a power of two.
|
||||||
|
@ -52,14 +52,14 @@ galileo_e5a_noncoherentIQ_acquisition_caf_cc_sptr galileo_e5a_noncoherentIQ_make
|
|||||||
int samples_per_ms, int samples_per_code,
|
int samples_per_ms, int samples_per_code,
|
||||||
bool bit_transition_flag,
|
bool bit_transition_flag,
|
||||||
bool dump,
|
bool dump,
|
||||||
std::string dump_filename,
|
const std::string &dump_filename,
|
||||||
bool both_signal_components_,
|
bool both_signal_components_,
|
||||||
int CAF_window_hz_,
|
int CAF_window_hz_,
|
||||||
int Zero_padding_)
|
int Zero_padding_)
|
||||||
{
|
{
|
||||||
return galileo_e5a_noncoherentIQ_acquisition_caf_cc_sptr(
|
return galileo_e5a_noncoherentIQ_acquisition_caf_cc_sptr(
|
||||||
new galileo_e5a_noncoherentIQ_acquisition_caf_cc(sampled_ms, max_dwells, doppler_max, fs_in, samples_per_ms,
|
new galileo_e5a_noncoherentIQ_acquisition_caf_cc(sampled_ms, max_dwells, doppler_max, fs_in, samples_per_ms,
|
||||||
samples_per_code, bit_transition_flag, dump, std::move(dump_filename), both_signal_components_, CAF_window_hz_, Zero_padding_));
|
samples_per_code, bit_transition_flag, dump, dump_filename, both_signal_components_, CAF_window_hz_, Zero_padding_));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -72,7 +72,7 @@ galileo_e5a_noncoherentIQ_acquisition_caf_cc::galileo_e5a_noncoherentIQ_acquisit
|
|||||||
int samples_per_code,
|
int samples_per_code,
|
||||||
bool bit_transition_flag,
|
bool bit_transition_flag,
|
||||||
bool dump,
|
bool dump,
|
||||||
std::string dump_filename,
|
const std::string &dump_filename,
|
||||||
bool both_signal_components_,
|
bool both_signal_components_,
|
||||||
int CAF_window_hz_,
|
int CAF_window_hz_,
|
||||||
int Zero_padding_) : gr::block("galileo_e5a_noncoherentIQ_acquisition_caf_cc",
|
int Zero_padding_) : gr::block("galileo_e5a_noncoherentIQ_acquisition_caf_cc",
|
||||||
@ -136,7 +136,7 @@ galileo_e5a_noncoherentIQ_acquisition_caf_cc::galileo_e5a_noncoherentIQ_acquisit
|
|||||||
|
|
||||||
// For dumping samples into a file
|
// For dumping samples into a file
|
||||||
d_dump = dump;
|
d_dump = dump;
|
||||||
d_dump_filename = std::move(dump_filename);
|
d_dump_filename = dump_filename;
|
||||||
|
|
||||||
d_doppler_resolution = 0;
|
d_doppler_resolution = 0;
|
||||||
d_threshold = 0;
|
d_threshold = 0;
|
||||||
|
@ -60,7 +60,7 @@ galileo_e5a_noncoherentIQ_acquisition_caf_cc_sptr galileo_e5a_noncoherentIQ_make
|
|||||||
int samples_per_ms, int samples_per_code,
|
int samples_per_ms, int samples_per_code,
|
||||||
bool bit_transition_flag,
|
bool bit_transition_flag,
|
||||||
bool dump,
|
bool dump,
|
||||||
std::string dump_filename,
|
const std::string& dump_filename,
|
||||||
bool both_signal_components_,
|
bool both_signal_components_,
|
||||||
int CAF_window_hz_,
|
int CAF_window_hz_,
|
||||||
int Zero_padding_);
|
int Zero_padding_);
|
||||||
@ -186,7 +186,7 @@ private:
|
|||||||
int samples_per_ms, int samples_per_code,
|
int samples_per_ms, int samples_per_code,
|
||||||
bool bit_transition_flag,
|
bool bit_transition_flag,
|
||||||
bool dump,
|
bool dump,
|
||||||
std::string dump_filename,
|
const std::string& dump_filename,
|
||||||
bool both_signal_components_,
|
bool both_signal_components_,
|
||||||
int CAF_window_hz_,
|
int CAF_window_hz_,
|
||||||
int Zero_padding_);
|
int Zero_padding_);
|
||||||
@ -198,7 +198,7 @@ private:
|
|||||||
int samples_per_ms, int samples_per_code,
|
int samples_per_ms, int samples_per_code,
|
||||||
bool bit_transition_flag,
|
bool bit_transition_flag,
|
||||||
bool dump,
|
bool dump,
|
||||||
std::string dump_filename,
|
const std::string& dump_filename,
|
||||||
bool both_signal_components_,
|
bool both_signal_components_,
|
||||||
int CAF_window_hz_,
|
int CAF_window_hz_,
|
||||||
int Zero_padding_);
|
int Zero_padding_);
|
||||||
|
@ -46,11 +46,11 @@ galileo_pcps_8ms_acquisition_cc_sptr galileo_pcps_8ms_make_acquisition_cc(
|
|||||||
int64_t fs_in,
|
int64_t fs_in,
|
||||||
int32_t samples_per_ms,
|
int32_t samples_per_ms,
|
||||||
int32_t samples_per_code,
|
int32_t samples_per_code,
|
||||||
bool dump, std::string dump_filename)
|
bool dump, const std::string &dump_filename)
|
||||||
{
|
{
|
||||||
return galileo_pcps_8ms_acquisition_cc_sptr(
|
return galileo_pcps_8ms_acquisition_cc_sptr(
|
||||||
new galileo_pcps_8ms_acquisition_cc(sampled_ms, max_dwells, doppler_max, fs_in, samples_per_ms,
|
new galileo_pcps_8ms_acquisition_cc(sampled_ms, max_dwells, doppler_max, fs_in, samples_per_ms,
|
||||||
samples_per_code, dump, std::move(dump_filename)));
|
samples_per_code, dump, dump_filename));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -62,9 +62,9 @@ galileo_pcps_8ms_acquisition_cc::galileo_pcps_8ms_acquisition_cc(
|
|||||||
int32_t samples_per_ms,
|
int32_t samples_per_ms,
|
||||||
int32_t samples_per_code,
|
int32_t samples_per_code,
|
||||||
bool dump,
|
bool dump,
|
||||||
std::string dump_filename) : gr::block("galileo_pcps_8ms_acquisition_cc",
|
const std::string &dump_filename) : gr::block("galileo_pcps_8ms_acquisition_cc",
|
||||||
gr::io_signature::make(1, 1, sizeof(gr_complex) * sampled_ms * samples_per_ms),
|
gr::io_signature::make(1, 1, sizeof(gr_complex) * sampled_ms * samples_per_ms),
|
||||||
gr::io_signature::make(0, 0, sizeof(gr_complex) * sampled_ms * samples_per_ms))
|
gr::io_signature::make(0, 0, sizeof(gr_complex) * sampled_ms * samples_per_ms))
|
||||||
{
|
{
|
||||||
this->message_port_register_out(pmt::mp("events"));
|
this->message_port_register_out(pmt::mp("events"));
|
||||||
d_sample_counter = 0ULL; // SAMPLE COUNTER
|
d_sample_counter = 0ULL; // SAMPLE COUNTER
|
||||||
@ -94,7 +94,7 @@ galileo_pcps_8ms_acquisition_cc::galileo_pcps_8ms_acquisition_cc(
|
|||||||
|
|
||||||
// For dumping samples into a file
|
// For dumping samples into a file
|
||||||
d_dump = dump;
|
d_dump = dump;
|
||||||
d_dump_filename = std::move(dump_filename);
|
d_dump_filename = dump_filename;
|
||||||
|
|
||||||
d_doppler_resolution = 0;
|
d_doppler_resolution = 0;
|
||||||
d_threshold = 0;
|
d_threshold = 0;
|
||||||
|
@ -55,7 +55,7 @@ galileo_pcps_8ms_make_acquisition_cc(uint32_t sampled_ms,
|
|||||||
int32_t samples_per_ms,
|
int32_t samples_per_ms,
|
||||||
int32_t samples_per_code,
|
int32_t samples_per_code,
|
||||||
bool dump,
|
bool dump,
|
||||||
std::string dump_filename);
|
const std::string& dump_filename);
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief This class implements a Parallel Code Phase Search Acquisition for
|
* \brief This class implements a Parallel Code Phase Search Acquisition for
|
||||||
@ -177,7 +177,7 @@ private:
|
|||||||
int32_t samples_per_ms,
|
int32_t samples_per_ms,
|
||||||
int32_t samples_per_code,
|
int32_t samples_per_code,
|
||||||
bool dump,
|
bool dump,
|
||||||
std::string dump_filename);
|
const std::string& dump_filename);
|
||||||
|
|
||||||
galileo_pcps_8ms_acquisition_cc(
|
galileo_pcps_8ms_acquisition_cc(
|
||||||
uint32_t sampled_ms,
|
uint32_t sampled_ms,
|
||||||
@ -187,7 +187,7 @@ private:
|
|||||||
int32_t samples_per_ms,
|
int32_t samples_per_ms,
|
||||||
int32_t samples_per_code,
|
int32_t samples_per_code,
|
||||||
bool dump,
|
bool dump,
|
||||||
std::string dump_filename);
|
const std::string& dump_filename);
|
||||||
|
|
||||||
void calculate_magnitudes(
|
void calculate_magnitudes(
|
||||||
gr_complex* fft_begin,
|
gr_complex* fft_begin,
|
||||||
|
@ -50,20 +50,20 @@ extern Concurrent_Map<Gps_Acq_Assist> global_gps_acq_assist_map;
|
|||||||
pcps_assisted_acquisition_cc_sptr pcps_make_assisted_acquisition_cc(
|
pcps_assisted_acquisition_cc_sptr pcps_make_assisted_acquisition_cc(
|
||||||
int32_t max_dwells, uint32_t sampled_ms, int32_t doppler_max, int32_t doppler_min,
|
int32_t max_dwells, uint32_t sampled_ms, int32_t doppler_max, int32_t doppler_min,
|
||||||
int64_t fs_in, int32_t samples_per_ms, bool dump,
|
int64_t fs_in, int32_t samples_per_ms, bool dump,
|
||||||
std::string dump_filename)
|
const std::string &dump_filename)
|
||||||
{
|
{
|
||||||
return pcps_assisted_acquisition_cc_sptr(
|
return pcps_assisted_acquisition_cc_sptr(
|
||||||
new pcps_assisted_acquisition_cc(max_dwells, sampled_ms, doppler_max, doppler_min,
|
new pcps_assisted_acquisition_cc(max_dwells, sampled_ms, doppler_max, doppler_min,
|
||||||
fs_in, samples_per_ms, dump, std::move(dump_filename)));
|
fs_in, samples_per_ms, dump, dump_filename));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
pcps_assisted_acquisition_cc::pcps_assisted_acquisition_cc(
|
pcps_assisted_acquisition_cc::pcps_assisted_acquisition_cc(
|
||||||
int32_t max_dwells, uint32_t sampled_ms, int32_t doppler_max, int32_t doppler_min,
|
int32_t max_dwells, uint32_t sampled_ms, int32_t doppler_max, int32_t doppler_min,
|
||||||
int64_t fs_in, int32_t samples_per_ms, bool dump,
|
int64_t fs_in, int32_t samples_per_ms, bool dump,
|
||||||
std::string dump_filename) : gr::block("pcps_assisted_acquisition_cc",
|
const std::string &dump_filename) : gr::block("pcps_assisted_acquisition_cc",
|
||||||
gr::io_signature::make(1, 1, sizeof(gr_complex)),
|
gr::io_signature::make(1, 1, sizeof(gr_complex)),
|
||||||
gr::io_signature::make(0, 0, sizeof(gr_complex)))
|
gr::io_signature::make(0, 0, sizeof(gr_complex)))
|
||||||
{
|
{
|
||||||
this->message_port_register_out(pmt::mp("events"));
|
this->message_port_register_out(pmt::mp("events"));
|
||||||
d_sample_counter = 0ULL; // SAMPLE COUNTER
|
d_sample_counter = 0ULL; // SAMPLE COUNTER
|
||||||
@ -90,7 +90,7 @@ pcps_assisted_acquisition_cc::pcps_assisted_acquisition_cc(
|
|||||||
|
|
||||||
// For dumping samples into a file
|
// For dumping samples into a file
|
||||||
d_dump = dump;
|
d_dump = dump;
|
||||||
d_dump_filename = std::move(dump_filename);
|
d_dump_filename = dump_filename;
|
||||||
|
|
||||||
d_doppler_resolution = 0;
|
d_doppler_resolution = 0;
|
||||||
d_threshold = 0;
|
d_threshold = 0;
|
||||||
|
@ -70,7 +70,7 @@ pcps_assisted_acquisition_cc_sptr pcps_make_assisted_acquisition_cc(
|
|||||||
int32_t doppler_min,
|
int32_t doppler_min,
|
||||||
int64_t fs_in,
|
int64_t fs_in,
|
||||||
int32_t samples_per_ms,
|
int32_t samples_per_ms,
|
||||||
bool dump, std::string dump_filename);
|
bool dump, const std::string& dump_filename);
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief This class implements a Parallel Code Phase Search Acquisition.
|
* \brief This class implements a Parallel Code Phase Search Acquisition.
|
||||||
@ -181,12 +181,12 @@ private:
|
|||||||
pcps_make_assisted_acquisition_cc(int32_t max_dwells, uint32_t sampled_ms,
|
pcps_make_assisted_acquisition_cc(int32_t max_dwells, uint32_t sampled_ms,
|
||||||
int32_t doppler_max, int32_t doppler_min, int64_t fs_in,
|
int32_t doppler_max, int32_t doppler_min, int64_t fs_in,
|
||||||
int32_t samples_per_ms, bool dump,
|
int32_t samples_per_ms, bool dump,
|
||||||
std::string dump_filename);
|
const std::string& dump_filename);
|
||||||
|
|
||||||
pcps_assisted_acquisition_cc(int32_t max_dwells, uint32_t sampled_ms,
|
pcps_assisted_acquisition_cc(int32_t max_dwells, uint32_t sampled_ms,
|
||||||
int32_t doppler_max, int32_t doppler_min, int64_t fs_in,
|
int32_t doppler_max, int32_t doppler_min, int64_t fs_in,
|
||||||
int32_t samples_per_ms, bool dump,
|
int32_t samples_per_ms, bool dump,
|
||||||
std::string dump_filename);
|
const std::string& dump_filename);
|
||||||
|
|
||||||
void calculate_magnitudes(gr_complex* fft_begin, int32_t doppler_shift,
|
void calculate_magnitudes(gr_complex* fft_begin, int32_t doppler_shift,
|
||||||
int32_t doppler_offset);
|
int32_t doppler_offset);
|
||||||
|
@ -52,11 +52,11 @@ pcps_cccwsr_acquisition_cc_sptr pcps_cccwsr_make_acquisition_cc(
|
|||||||
int64_t fs_in,
|
int64_t fs_in,
|
||||||
int32_t samples_per_ms,
|
int32_t samples_per_ms,
|
||||||
int32_t samples_per_code,
|
int32_t samples_per_code,
|
||||||
bool dump, std::string dump_filename)
|
bool dump, const std::string &dump_filename)
|
||||||
{
|
{
|
||||||
return pcps_cccwsr_acquisition_cc_sptr(
|
return pcps_cccwsr_acquisition_cc_sptr(
|
||||||
new pcps_cccwsr_acquisition_cc(sampled_ms, max_dwells, doppler_max, fs_in,
|
new pcps_cccwsr_acquisition_cc(sampled_ms, max_dwells, doppler_max, fs_in,
|
||||||
samples_per_ms, samples_per_code, dump, std::move(dump_filename)));
|
samples_per_ms, samples_per_code, dump, dump_filename));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -68,9 +68,9 @@ pcps_cccwsr_acquisition_cc::pcps_cccwsr_acquisition_cc(
|
|||||||
int32_t samples_per_ms,
|
int32_t samples_per_ms,
|
||||||
int32_t samples_per_code,
|
int32_t samples_per_code,
|
||||||
bool dump,
|
bool dump,
|
||||||
std::string dump_filename) : gr::block("pcps_cccwsr_acquisition_cc",
|
const std::string &dump_filename) : gr::block("pcps_cccwsr_acquisition_cc",
|
||||||
gr::io_signature::make(1, 1, sizeof(gr_complex) * sampled_ms * samples_per_ms),
|
gr::io_signature::make(1, 1, sizeof(gr_complex) * sampled_ms * samples_per_ms),
|
||||||
gr::io_signature::make(0, 0, sizeof(gr_complex) * sampled_ms * samples_per_ms))
|
gr::io_signature::make(0, 0, sizeof(gr_complex) * sampled_ms * samples_per_ms))
|
||||||
{
|
{
|
||||||
this->message_port_register_out(pmt::mp("events"));
|
this->message_port_register_out(pmt::mp("events"));
|
||||||
d_sample_counter = 0ULL; // SAMPLE COUNTER
|
d_sample_counter = 0ULL; // SAMPLE COUNTER
|
||||||
@ -104,7 +104,7 @@ pcps_cccwsr_acquisition_cc::pcps_cccwsr_acquisition_cc(
|
|||||||
|
|
||||||
// For dumping samples into a file
|
// For dumping samples into a file
|
||||||
d_dump = dump;
|
d_dump = dump;
|
||||||
d_dump_filename = std::move(dump_filename);
|
d_dump_filename = dump_filename;
|
||||||
|
|
||||||
d_doppler_resolution = 0;
|
d_doppler_resolution = 0;
|
||||||
d_threshold = 0;
|
d_threshold = 0;
|
||||||
|
@ -61,7 +61,7 @@ pcps_cccwsr_acquisition_cc_sptr pcps_cccwsr_make_acquisition_cc(
|
|||||||
int32_t samples_per_ms,
|
int32_t samples_per_ms,
|
||||||
int32_t samples_per_code,
|
int32_t samples_per_code,
|
||||||
bool dump,
|
bool dump,
|
||||||
std::string dump_filename);
|
const std::string& dump_filename);
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief This class implements a Parallel Code Phase Search Acquisition with
|
* \brief This class implements a Parallel Code Phase Search Acquisition with
|
||||||
@ -179,12 +179,12 @@ private:
|
|||||||
pcps_cccwsr_make_acquisition_cc(uint32_t sampled_ms, uint32_t max_dwells,
|
pcps_cccwsr_make_acquisition_cc(uint32_t sampled_ms, uint32_t max_dwells,
|
||||||
uint32_t doppler_max, int64_t fs_in,
|
uint32_t doppler_max, int64_t fs_in,
|
||||||
int32_t samples_per_ms, int32_t samples_per_code,
|
int32_t samples_per_ms, int32_t samples_per_code,
|
||||||
bool dump, std::string dump_filename);
|
bool dump, const std::string& dump_filename);
|
||||||
|
|
||||||
pcps_cccwsr_acquisition_cc(uint32_t sampled_ms, uint32_t max_dwells,
|
pcps_cccwsr_acquisition_cc(uint32_t sampled_ms, uint32_t max_dwells,
|
||||||
uint32_t doppler_max, int64_t fs_in,
|
uint32_t doppler_max, int64_t fs_in,
|
||||||
int32_t samples_per_ms, int32_t samples_per_code,
|
int32_t samples_per_ms, int32_t samples_per_code,
|
||||||
bool dump, std::string dump_filename);
|
bool dump, const std::string& dump_filename);
|
||||||
|
|
||||||
void calculate_magnitudes(gr_complex* fft_begin, int32_t doppler_shift,
|
void calculate_magnitudes(gr_complex* fft_begin, int32_t doppler_shift,
|
||||||
int32_t doppler_offset);
|
int32_t doppler_offset);
|
||||||
|
@ -50,7 +50,7 @@ pcps_quicksync_acquisition_cc_sptr pcps_quicksync_make_acquisition_cc(
|
|||||||
int32_t samples_per_code,
|
int32_t samples_per_code,
|
||||||
bool bit_transition_flag,
|
bool bit_transition_flag,
|
||||||
bool dump,
|
bool dump,
|
||||||
std::string dump_filename)
|
const std::string& dump_filename)
|
||||||
{
|
{
|
||||||
return pcps_quicksync_acquisition_cc_sptr(
|
return pcps_quicksync_acquisition_cc_sptr(
|
||||||
new pcps_quicksync_acquisition_cc(
|
new pcps_quicksync_acquisition_cc(
|
||||||
@ -59,7 +59,7 @@ pcps_quicksync_acquisition_cc_sptr pcps_quicksync_make_acquisition_cc(
|
|||||||
fs_in, samples_per_ms,
|
fs_in, samples_per_ms,
|
||||||
samples_per_code,
|
samples_per_code,
|
||||||
bit_transition_flag,
|
bit_transition_flag,
|
||||||
dump, std::move(dump_filename)));
|
dump, dump_filename));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -70,9 +70,9 @@ pcps_quicksync_acquisition_cc::pcps_quicksync_acquisition_cc(
|
|||||||
int32_t samples_per_ms, int32_t samples_per_code,
|
int32_t samples_per_ms, int32_t samples_per_code,
|
||||||
bool bit_transition_flag,
|
bool bit_transition_flag,
|
||||||
bool dump,
|
bool dump,
|
||||||
std::string dump_filename) : gr::block("pcps_quicksync_acquisition_cc",
|
const std::string& dump_filename) : gr::block("pcps_quicksync_acquisition_cc",
|
||||||
gr::io_signature::make(1, 1, (sizeof(gr_complex) * sampled_ms * samples_per_ms)),
|
gr::io_signature::make(1, 1, (sizeof(gr_complex) * sampled_ms * samples_per_ms)),
|
||||||
gr::io_signature::make(0, 0, (sizeof(gr_complex) * sampled_ms * samples_per_ms)))
|
gr::io_signature::make(0, 0, (sizeof(gr_complex) * sampled_ms * samples_per_ms)))
|
||||||
{
|
{
|
||||||
this->message_port_register_out(pmt::mp("events"));
|
this->message_port_register_out(pmt::mp("events"));
|
||||||
d_sample_counter = 0ULL; // SAMPLE COUNTER
|
d_sample_counter = 0ULL; // SAMPLE COUNTER
|
||||||
@ -112,7 +112,7 @@ pcps_quicksync_acquisition_cc::pcps_quicksync_acquisition_cc(
|
|||||||
|
|
||||||
// For dumping samples into a file
|
// For dumping samples into a file
|
||||||
d_dump = dump;
|
d_dump = dump;
|
||||||
d_dump_filename = std::move(dump_filename);
|
d_dump_filename = dump_filename;
|
||||||
|
|
||||||
d_code_folded = std::vector<gr_complex>(d_fft_size, lv_cmake(0.0F, 0.0F));
|
d_code_folded = std::vector<gr_complex>(d_fft_size, lv_cmake(0.0F, 0.0F));
|
||||||
d_signal_folded.reserve(d_fft_size);
|
d_signal_folded.reserve(d_fft_size);
|
||||||
|
@ -79,7 +79,7 @@ pcps_quicksync_acquisition_cc_sptr pcps_quicksync_make_acquisition_cc(
|
|||||||
int32_t samples_per_code,
|
int32_t samples_per_code,
|
||||||
bool bit_transition_flag,
|
bool bit_transition_flag,
|
||||||
bool dump,
|
bool dump,
|
||||||
std::string dump_filename);
|
const std::string& dump_filename);
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief This class implements a Parallel Code Phase Search Acquisition with
|
* \brief This class implements a Parallel Code Phase Search Acquisition with
|
||||||
@ -202,7 +202,7 @@ private:
|
|||||||
int32_t samples_per_ms, int32_t samples_per_code,
|
int32_t samples_per_ms, int32_t samples_per_code,
|
||||||
bool bit_transition_flag,
|
bool bit_transition_flag,
|
||||||
bool dump,
|
bool dump,
|
||||||
std::string dump_filename);
|
const std::string& dump_filename);
|
||||||
|
|
||||||
pcps_quicksync_acquisition_cc(uint32_t folding_factor,
|
pcps_quicksync_acquisition_cc(uint32_t folding_factor,
|
||||||
uint32_t sampled_ms, uint32_t max_dwells,
|
uint32_t sampled_ms, uint32_t max_dwells,
|
||||||
@ -210,7 +210,7 @@ private:
|
|||||||
int32_t samples_per_ms, int32_t samples_per_code,
|
int32_t samples_per_ms, int32_t samples_per_code,
|
||||||
bool bit_transition_flag,
|
bool bit_transition_flag,
|
||||||
bool dump,
|
bool dump,
|
||||||
std::string dump_filename);
|
const std::string& dump_filename);
|
||||||
|
|
||||||
void calculate_magnitudes(gr_complex* fft_begin, int32_t doppler_shift,
|
void calculate_magnitudes(gr_complex* fft_begin, int32_t doppler_shift,
|
||||||
int32_t doppler_offset);
|
int32_t doppler_offset);
|
||||||
|
@ -68,11 +68,11 @@ pcps_tong_acquisition_cc_sptr pcps_tong_make_acquisition_cc(
|
|||||||
uint32_t tong_init_val,
|
uint32_t tong_init_val,
|
||||||
uint32_t tong_max_val,
|
uint32_t tong_max_val,
|
||||||
uint32_t tong_max_dwells,
|
uint32_t tong_max_dwells,
|
||||||
bool dump, std::string dump_filename)
|
bool dump, const std::string &dump_filename)
|
||||||
{
|
{
|
||||||
return pcps_tong_acquisition_cc_sptr(
|
return pcps_tong_acquisition_cc_sptr(
|
||||||
new pcps_tong_acquisition_cc(sampled_ms, doppler_max, fs_in, samples_per_ms, samples_per_code,
|
new pcps_tong_acquisition_cc(sampled_ms, doppler_max, fs_in, samples_per_ms, samples_per_code,
|
||||||
tong_init_val, tong_max_val, tong_max_dwells, dump, std::move(dump_filename)));
|
tong_init_val, tong_max_val, tong_max_dwells, dump, dump_filename));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -86,9 +86,9 @@ pcps_tong_acquisition_cc::pcps_tong_acquisition_cc(
|
|||||||
uint32_t tong_max_val,
|
uint32_t tong_max_val,
|
||||||
uint32_t tong_max_dwells,
|
uint32_t tong_max_dwells,
|
||||||
bool dump,
|
bool dump,
|
||||||
std::string dump_filename) : gr::block("pcps_tong_acquisition_cc",
|
const std::string &dump_filename) : gr::block("pcps_tong_acquisition_cc",
|
||||||
gr::io_signature::make(1, 1, sizeof(gr_complex) * sampled_ms * samples_per_ms),
|
gr::io_signature::make(1, 1, sizeof(gr_complex) * sampled_ms * samples_per_ms),
|
||||||
gr::io_signature::make(0, 0, sizeof(gr_complex) * sampled_ms * samples_per_ms))
|
gr::io_signature::make(0, 0, sizeof(gr_complex) * sampled_ms * samples_per_ms))
|
||||||
{
|
{
|
||||||
this->message_port_register_out(pmt::mp("events"));
|
this->message_port_register_out(pmt::mp("events"));
|
||||||
d_sample_counter = 0ULL; // SAMPLE COUNTER
|
d_sample_counter = 0ULL; // SAMPLE COUNTER
|
||||||
@ -120,7 +120,7 @@ pcps_tong_acquisition_cc::pcps_tong_acquisition_cc(
|
|||||||
|
|
||||||
// For dumping samples into a file
|
// For dumping samples into a file
|
||||||
d_dump = dump;
|
d_dump = dump;
|
||||||
d_dump_filename = std::move(dump_filename);
|
d_dump_filename = dump_filename;
|
||||||
|
|
||||||
d_doppler_resolution = 0;
|
d_doppler_resolution = 0;
|
||||||
d_threshold = 0;
|
d_threshold = 0;
|
||||||
|
@ -77,7 +77,7 @@ pcps_tong_acquisition_cc_sptr pcps_tong_make_acquisition_cc(
|
|||||||
uint32_t tong_max_val,
|
uint32_t tong_max_val,
|
||||||
uint32_t tong_max_dwells,
|
uint32_t tong_max_dwells,
|
||||||
bool dump,
|
bool dump,
|
||||||
std::string dump_filename);
|
const std::string& dump_filename);
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* \brief This class implements a Parallel Code Phase Search Acquisition with
|
* \brief This class implements a Parallel Code Phase Search Acquisition with
|
||||||
@ -195,13 +195,13 @@ private:
|
|||||||
int64_t fs_in, int32_t samples_per_ms,
|
int64_t fs_in, int32_t samples_per_ms,
|
||||||
int32_t samples_per_code, uint32_t tong_init_val,
|
int32_t samples_per_code, uint32_t tong_init_val,
|
||||||
uint32_t tong_max_val, uint32_t tong_max_dwells,
|
uint32_t tong_max_val, uint32_t tong_max_dwells,
|
||||||
bool dump, std::string dump_filename);
|
bool dump, const std::string& dump_filename);
|
||||||
|
|
||||||
pcps_tong_acquisition_cc(uint32_t sampled_ms, uint32_t doppler_max,
|
pcps_tong_acquisition_cc(uint32_t sampled_ms, uint32_t doppler_max,
|
||||||
int64_t fs_in, int32_t samples_per_ms,
|
int64_t fs_in, int32_t samples_per_ms,
|
||||||
int32_t samples_per_code, uint32_t tong_init_val,
|
int32_t samples_per_code, uint32_t tong_init_val,
|
||||||
uint32_t tong_max_val, uint32_t tong_max_dwells,
|
uint32_t tong_max_val, uint32_t tong_max_dwells,
|
||||||
bool dump, std::string dump_filename);
|
bool dump, const std::string& dump_filename);
|
||||||
|
|
||||||
void calculate_magnitudes(gr_complex* fft_begin, int32_t doppler_shift,
|
void calculate_magnitudes(gr_complex* fft_begin, int32_t doppler_shift,
|
||||||
int32_t doppler_offset);
|
int32_t doppler_offset);
|
||||||
|
@ -211,7 +211,7 @@ void Fpga_Acquisition::configure_acquisition()
|
|||||||
d_map_base[0] = d_select_queue;
|
d_map_base[0] = d_select_queue;
|
||||||
d_map_base[1] = d_vector_length;
|
d_map_base[1] = d_vector_length;
|
||||||
d_map_base[2] = d_nsamples;
|
d_map_base[2] = d_nsamples;
|
||||||
d_map_base[7] = static_cast<int32_t>(log2(static_cast<float>(d_vector_length))); // log2 FFTlength
|
d_map_base[7] = static_cast<int32_t>(std::log2(static_cast<float>(d_vector_length))); // log2 FFTlength
|
||||||
d_map_base[12] = d_excludelimit;
|
d_map_base[12] = d_excludelimit;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -44,13 +44,13 @@ Channel::Channel(ConfigurationInterface* configuration, uint32_t channel, const
|
|||||||
const std::shared_ptr<TrackingInterface>& trk, const std::shared_ptr<TelemetryDecoderInterface>& nav,
|
const std::shared_ptr<TrackingInterface>& trk, const std::shared_ptr<TelemetryDecoderInterface>& nav,
|
||||||
const std::string& role, const std::string& implementation, const std::shared_ptr<Concurrent_Queue<pmt::pmt_t> >& queue)
|
const std::string& role, const std::string& implementation, const std::shared_ptr<Concurrent_Queue<pmt::pmt_t> >& queue)
|
||||||
{
|
{
|
||||||
acq_ = std::move(acq);
|
acq_ = acq;
|
||||||
trk_ = std::move(trk);
|
trk_ = trk;
|
||||||
nav_ = std::move(nav);
|
nav_ = nav;
|
||||||
role_ = std::move(role);
|
role_ = role;
|
||||||
implementation_ = std::move(implementation);
|
implementation_ = implementation;
|
||||||
channel_ = channel;
|
channel_ = channel;
|
||||||
queue_ = std::move(queue);
|
queue_ = queue;
|
||||||
channel_fsm_ = std::make_shared<ChannelFsm>();
|
channel_fsm_ = std::make_shared<ChannelFsm>();
|
||||||
|
|
||||||
flag_enable_fpga = configuration->property("GNSS-SDR.enable_FPGA", false);
|
flag_enable_fpga = configuration->property("GNSS-SDR.enable_FPGA", false);
|
||||||
|
@ -30,8 +30,8 @@
|
|||||||
* -------------------------------------------------------------------------
|
* -------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef GNSS_SDR_CHANNEL_FSM_H
|
#ifndef GNSS_SDR_CHANNEL_FSM_H_
|
||||||
#define GNSS_SDR_CHANNEL_FSM_H
|
#define GNSS_SDR_CHANNEL_FSM_H_
|
||||||
|
|
||||||
#include "acquisition_interface.h"
|
#include "acquisition_interface.h"
|
||||||
#include "concurrent_queue.h"
|
#include "concurrent_queue.h"
|
||||||
@ -83,4 +83,4 @@ private:
|
|||||||
std::mutex mx;
|
std::mutex mx;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // GNSS_SDR_CHANNEL_FSM_H
|
#endif // GNSS_SDR_CHANNEL_FSM_H_
|
||||||
|
@ -28,8 +28,8 @@
|
|||||||
* -------------------------------------------------------------------------
|
* -------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef GNSS_SDR_CHANNEL_MSG_RECEIVER_CC_H
|
#ifndef GNSS_SDR_CHANNEL_MSG_RECEIVER_CC_H_
|
||||||
#define GNSS_SDR_CHANNEL_MSG_RECEIVER_CC_H
|
#define GNSS_SDR_CHANNEL_MSG_RECEIVER_CC_H_
|
||||||
|
|
||||||
#include "channel_fsm.h"
|
#include "channel_fsm.h"
|
||||||
#include <gnuradio/block.h>
|
#include <gnuradio/block.h>
|
||||||
@ -58,4 +58,4 @@ private:
|
|||||||
void msg_handler_events(pmt::pmt_t msg);
|
void msg_handler_events(pmt::pmt_t msg);
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif // GNSS_SDR_CHANNEL_MSG_RECEIVER_CC_H_
|
||||||
|
@ -81,4 +81,4 @@ private:
|
|||||||
bool connected_;
|
bool connected_;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif /*GNSS_SDR_SIGNAL_CONDITIONER_H_*/
|
#endif // GNSS_SDR_SIGNAL_CONDITIONER_H_
|
||||||
|
@ -79,4 +79,4 @@ private:
|
|||||||
bool connected_;
|
bool connected_;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif /*GNSS_SDR_SIGNAL_CONDITIONER_H_*/
|
#endif // GNSS_SDR_SIGNAL_CONDITIONER_H_
|
||||||
|
@ -57,4 +57,4 @@ private:
|
|||||||
interleaved_byte_to_complex_byte();
|
interleaved_byte_to_complex_byte();
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif // GNSS_SDR_INTERLEAVED_BYTE_TO_COMPLEX_BYTE_H_
|
||||||
|
@ -28,8 +28,8 @@
|
|||||||
* -------------------------------------------------------------------------
|
* -------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef GNSS_SDR_BEAMFORMER_H
|
#ifndef GNSS_SDR_BEAMFORMER_H_
|
||||||
#define GNSS_SDR_BEAMFORMER_H
|
#define GNSS_SDR_BEAMFORMER_H_
|
||||||
|
|
||||||
#include <gnuradio/sync_block.h>
|
#include <gnuradio/sync_block.h>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
@ -58,4 +58,4 @@ private:
|
|||||||
std::vector<gr_complex> weight_vector = std::vector<gr_complex>(GNSS_SDR_BEAMFORMER_CHANNELS, gr_complex(1.0, 0.0));
|
std::vector<gr_complex> weight_vector = std::vector<gr_complex>(GNSS_SDR_BEAMFORMER_CHANNELS, gr_complex(1.0, 0.0));
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif // GNSS_SDR_BEAMFORMER_H_
|
||||||
|
@ -29,8 +29,8 @@
|
|||||||
* -------------------------------------------------------------------------
|
* -------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef GNSS_SDR_GEOFUNCTIONS_H
|
#ifndef GNSS_SDR_GEOFUNCTIONS_H_
|
||||||
#define GNSS_SDR_GEOFUNCTIONS_H
|
#define GNSS_SDR_GEOFUNCTIONS_H_
|
||||||
|
|
||||||
#if ARMA_NO_BOUND_CHECKING
|
#if ARMA_NO_BOUND_CHECKING
|
||||||
#define ARMA_NO_DEBUG 1
|
#define ARMA_NO_DEBUG 1
|
||||||
@ -185,4 +185,4 @@ double clsin(const arma::colvec &ar, int degree, double argument);
|
|||||||
*/
|
*/
|
||||||
void clksin(const arma::colvec &ar, int degree, double arg_real, double arg_imag, double *re, double *im);
|
void clksin(const arma::colvec &ar, int degree, double arg_real, double arg_imag, double *re, double *im);
|
||||||
|
|
||||||
#endif
|
#endif // GNSS_SDR_GEOFUNCTIONS_H_
|
||||||
|
@ -7809,7 +7809,7 @@ public:
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
//------------------------------------------------------------------------------------------------------
|
// -----------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
template <
|
template <
|
||||||
@ -12904,7 +12904,7 @@ struct functionImplementation_<T0,
|
|||||||
|
|
||||||
} // namespace detail
|
} // namespace detail
|
||||||
|
|
||||||
//----------------------------------------------------------------------------------------------
|
// ---------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
template <
|
template <
|
||||||
typename T0, typename T1 = detail::NullType, typename T2 = detail::NullType,
|
typename T0, typename T1 = detail::NullType, typename T2 = detail::NullType,
|
||||||
@ -12975,7 +12975,7 @@ public:
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
//----------------------------------------------------------------------------------------------------------------------
|
// ---------------------------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
#undef __ERR_STR
|
#undef __ERR_STR
|
||||||
#if !defined(__CL_USER_OVERRIDE_ERROR_STRINGS)
|
#if !defined(__CL_USER_OVERRIDE_ERROR_STRINGS)
|
||||||
|
@ -131,7 +131,8 @@ clFFT_ExecuteInterleaved(cl_command_queue queue, clFFT_Plan Plan, cl_int batchSi
|
|||||||
return CL_INVALID_VALUE;
|
return CL_INVALID_VALUE;
|
||||||
|
|
||||||
cl_int err;
|
cl_int err;
|
||||||
size_t gWorkItems, lWorkItems;
|
size_t gWorkItems;
|
||||||
|
size_t lWorkItems;
|
||||||
int inPlaceDone;
|
int inPlaceDone;
|
||||||
|
|
||||||
cl_int isInPlace = data_in == data_out ? 1 : 0;
|
cl_int isInPlace = data_in == data_out ? 1 : 0;
|
||||||
@ -229,7 +230,8 @@ clFFT_ExecutePlannar(cl_command_queue queue, clFFT_Plan Plan, cl_int batchSize,
|
|||||||
return CL_INVALID_VALUE;
|
return CL_INVALID_VALUE;
|
||||||
|
|
||||||
cl_int err;
|
cl_int err;
|
||||||
size_t gWorkItems, lWorkItems;
|
size_t gWorkItems;
|
||||||
|
size_t lWorkItems;
|
||||||
int inPlaceDone;
|
int inPlaceDone;
|
||||||
|
|
||||||
cl_int isInPlace = ((data_in_real == data_out_real) && (data_in_imag == data_out_imag)) ? 1 : 0;
|
cl_int isInPlace = ((data_in_real == data_out_real) && (data_in_imag == data_out_imag)) ? 1 : 0;
|
||||||
|
@ -243,7 +243,8 @@ insertGlobalLoadsAndTranspose(string &kernelString, int N, int numWorkItemsPerXF
|
|||||||
{
|
{
|
||||||
int log2NumWorkItemsPerXForm = (int)log2(numWorkItemsPerXForm);
|
int log2NumWorkItemsPerXForm = (int)log2(numWorkItemsPerXForm);
|
||||||
int groupSize = numWorkItemsPerXForm * numXFormsPerWG;
|
int groupSize = numWorkItemsPerXForm * numXFormsPerWG;
|
||||||
int i, j;
|
int i;
|
||||||
|
int j;
|
||||||
int lMemSize = 0;
|
int lMemSize = 0;
|
||||||
|
|
||||||
if (numXFormsPerWG > 1)
|
if (numXFormsPerWG > 1)
|
||||||
@ -446,7 +447,10 @@ static int
|
|||||||
insertGlobalStoresAndTranspose(string &kernelString, int N, int maxRadix, int Nr, int numWorkItemsPerXForm, int numXFormsPerWG, int mem_coalesce_width, clFFT_DataFormat dataFormat)
|
insertGlobalStoresAndTranspose(string &kernelString, int N, int maxRadix, int Nr, int numWorkItemsPerXForm, int numXFormsPerWG, int mem_coalesce_width, clFFT_DataFormat dataFormat)
|
||||||
{
|
{
|
||||||
int groupSize = numWorkItemsPerXForm * numXFormsPerWG;
|
int groupSize = numWorkItemsPerXForm * numXFormsPerWG;
|
||||||
int i, j, k, ind;
|
int i;
|
||||||
|
int j;
|
||||||
|
int k;
|
||||||
|
int ind;
|
||||||
int lMemSize = 0;
|
int lMemSize = 0;
|
||||||
int numIter = maxRadix / Nr;
|
int numIter = maxRadix / Nr;
|
||||||
string indent = string("");
|
string indent = string("");
|
||||||
@ -597,7 +601,8 @@ insertfftKernel(string &kernelString, int Nr, int numIter)
|
|||||||
static void
|
static void
|
||||||
insertTwiddleKernel(string &kernelString, int Nr, int numIter, int Nprev, int len, int numWorkItemsPerXForm)
|
insertTwiddleKernel(string &kernelString, int Nr, int numIter, int Nprev, int len, int numWorkItemsPerXForm)
|
||||||
{
|
{
|
||||||
int z, k;
|
int z;
|
||||||
|
int k;
|
||||||
int logNPrev = (int)log2(Nprev);
|
int logNPrev = (int)log2(Nprev);
|
||||||
|
|
||||||
for (z = 0; z < numIter; z++)
|
for (z = 0; z < numIter; z++)
|
||||||
@ -662,7 +667,8 @@ getPadding(int numWorkItemsPerXForm, int Nprev, int numWorkItemsReq, int numXFor
|
|||||||
static void
|
static void
|
||||||
insertLocalStores(string &kernelString, int numIter, int Nr, int numWorkItemsPerXForm, int numWorkItemsReq, int offset, string &comp)
|
insertLocalStores(string &kernelString, int numIter, int Nr, int numWorkItemsPerXForm, int numWorkItemsReq, int offset, string &comp)
|
||||||
{
|
{
|
||||||
int z, k;
|
int z;
|
||||||
|
int k;
|
||||||
|
|
||||||
for (z = 0; z < numIter; z++)
|
for (z = 0; z < numIter; z++)
|
||||||
{
|
{
|
||||||
@ -787,8 +793,10 @@ createLocalMemfftKernelString(cl_fft_plan *plan)
|
|||||||
}
|
}
|
||||||
assert(tmpLen == n && "product of radices choosen doesnt match the length of signal\n");
|
assert(tmpLen == n && "product of radices choosen doesnt match the length of signal\n");
|
||||||
|
|
||||||
int offset, midPad;
|
int offset;
|
||||||
string localString(""), kernelName("");
|
int midPad;
|
||||||
|
string localString("");
|
||||||
|
string kernelName("");
|
||||||
|
|
||||||
clFFT_DataFormat dataFormat = plan->format;
|
clFFT_DataFormat dataFormat = plan->format;
|
||||||
string *kernelString = plan->kernel_string;
|
string *kernelString = plan->kernel_string;
|
||||||
@ -938,11 +946,16 @@ void getGlobalRadixInfo(int n, int *radix, int *R1, int *R2, int *numRadices)
|
|||||||
static void
|
static void
|
||||||
createGlobalFFTKernelString(cl_fft_plan *plan, int n, int BS, cl_fft_kernel_dir dir, int vertBS)
|
createGlobalFFTKernelString(cl_fft_plan *plan, int n, int BS, cl_fft_kernel_dir dir, int vertBS)
|
||||||
{
|
{
|
||||||
int i, j, k, t;
|
int i;
|
||||||
|
int j;
|
||||||
|
int k;
|
||||||
|
int t;
|
||||||
int radixArr[10] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
|
int radixArr[10] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
|
||||||
int R1Arr[10] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
|
int R1Arr[10] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
|
||||||
int R2Arr[10] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
|
int R2Arr[10] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
|
||||||
int radix, R1, R2;
|
int radix;
|
||||||
|
int R1;
|
||||||
|
int R2;
|
||||||
int numRadices;
|
int numRadices;
|
||||||
|
|
||||||
int maxThreadsPerBlock = plan->max_work_item_per_workgroup;
|
int maxThreadsPerBlock = plan->max_work_item_per_workgroup;
|
||||||
@ -955,7 +968,8 @@ createGlobalFFTKernelString(cl_fft_plan *plan, int n, int BS, cl_fft_kernel_dir
|
|||||||
|
|
||||||
int numPasses = numRadices;
|
int numPasses = numRadices;
|
||||||
|
|
||||||
string localString(""), kernelName("");
|
string localString("");
|
||||||
|
string kernelName("");
|
||||||
string *kernelString = plan->kernel_string;
|
string *kernelString = plan->kernel_string;
|
||||||
cl_fft_kernel_info **kInfo = &plan->kernel_info;
|
cl_fft_kernel_info **kInfo = &plan->kernel_info;
|
||||||
int kCount = 0;
|
int kCount = 0;
|
||||||
|
@ -220,7 +220,7 @@ int getMaxKernelWorkGroupSize(cl_fft_plan *plan, unsigned int *max_wg_size, unsi
|
|||||||
|
|
||||||
#define ERR_MACRO(err) \
|
#define ERR_MACRO(err) \
|
||||||
{ \
|
{ \
|
||||||
if (err != CL_SUCCESS) \
|
if ((err) != CL_SUCCESS) \
|
||||||
{ \
|
{ \
|
||||||
if (error_code) \
|
if (error_code) \
|
||||||
*error_code = err; \
|
*error_code = err; \
|
||||||
@ -381,7 +381,8 @@ void clFFT_DestroyPlan(clFFT_Plan plan)
|
|||||||
|
|
||||||
void clFFT_DumpPlan(clFFT_Plan Plan, FILE *file)
|
void clFFT_DumpPlan(clFFT_Plan Plan, FILE *file)
|
||||||
{
|
{
|
||||||
size_t gDim, lDim;
|
size_t gDim;
|
||||||
|
size_t lDim;
|
||||||
FILE *out;
|
FILE *out;
|
||||||
if (!file)
|
if (!file)
|
||||||
out = stdout;
|
out = stdout;
|
||||||
|
@ -62,7 +62,7 @@
|
|||||||
/* constants and macros ------------------------------------------------------*/
|
/* constants and macros ------------------------------------------------------*/
|
||||||
|
|
||||||
#define SQR_SOL(x) ((x) < 0.0 ? -(x) * (x) : (x) * (x))
|
#define SQR_SOL(x) ((x) < 0.0 ? -(x) * (x) : (x) * (x))
|
||||||
#define SQRT_SOL(x) ((x) < 0.0 ? 0.0 : sqrt(x))
|
#define SQRT_SOL(x) ((x) < 0.0 ? 0.0 : std::sqrt(x))
|
||||||
|
|
||||||
const int MAXFIELD = 64; /* max number of fields in a record */
|
const int MAXFIELD = 64; /* max number of fields in a record */
|
||||||
|
|
||||||
|
@ -68,7 +68,7 @@ namespace errorlib = boost::system;
|
|||||||
|
|
||||||
hybrid_observables_gs_sptr hybrid_observables_gs_make(unsigned int nchannels_in, unsigned int nchannels_out, bool dump, bool dump_mat, const std::string &dump_filename)
|
hybrid_observables_gs_sptr hybrid_observables_gs_make(unsigned int nchannels_in, unsigned int nchannels_out, bool dump, bool dump_mat, const std::string &dump_filename)
|
||||||
{
|
{
|
||||||
return hybrid_observables_gs_sptr(new hybrid_observables_gs(nchannels_in, nchannels_out, dump, dump_mat, std::move(dump_filename)));
|
return hybrid_observables_gs_sptr(new hybrid_observables_gs(nchannels_in, nchannels_out, dump, dump_mat, dump_filename));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -89,7 +89,7 @@ hybrid_observables_gs::hybrid_observables_gs(uint32_t nchannels_in,
|
|||||||
|
|
||||||
d_dump = dump;
|
d_dump = dump;
|
||||||
d_dump_mat = dump_mat and d_dump;
|
d_dump_mat = dump_mat and d_dump;
|
||||||
d_dump_filename = std::move(dump_filename);
|
d_dump_filename = dump_filename;
|
||||||
d_nchannels_out = nchannels_out;
|
d_nchannels_out = nchannels_out;
|
||||||
d_nchannels_in = nchannels_in;
|
d_nchannels_in = nchannels_in;
|
||||||
d_gnss_synchro_history = std::make_shared<Gnss_circular_deque<Gnss_Synchro>>(1000, d_nchannels_out);
|
d_gnss_synchro_history = std::make_shared<Gnss_circular_deque<Gnss_Synchro>>(1000, d_nchannels_out);
|
||||||
|
@ -31,8 +31,8 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
#ifndef GNSS_SDR_HYBRID_OBSERVABLES_GS_H
|
#ifndef GNSS_SDR_HYBRID_OBSERVABLES_GS_H_
|
||||||
#define GNSS_SDR_HYBRID_OBSERVABLES_GS_H
|
#define GNSS_SDR_HYBRID_OBSERVABLES_GS_H_
|
||||||
|
|
||||||
#include <boost/circular_buffer.hpp> // for boost::circular_buffer
|
#include <boost/circular_buffer.hpp> // for boost::circular_buffer
|
||||||
#include <boost/shared_ptr.hpp> // for boost::shared_ptr
|
#include <boost/shared_ptr.hpp> // for boost::shared_ptr
|
||||||
@ -105,4 +105,4 @@ private:
|
|||||||
int32_t save_matfile();
|
int32_t save_matfile();
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif // GNSS_SDR_HYBRID_OBSERVABLES_GS_H_
|
||||||
|
@ -29,8 +29,8 @@
|
|||||||
* -------------------------------------------------------------------------
|
* -------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef GNSS_SDR_DIRECT_RESAMPLER_CONDITIONER_CB_H
|
#ifndef GNSS_SDR_DIRECT_RESAMPLER_CONDITIONER_CB_H_
|
||||||
#define GNSS_SDR_DIRECT_RESAMPLER_CONDITIONER_CB_H
|
#define GNSS_SDR_DIRECT_RESAMPLER_CONDITIONER_CB_H_
|
||||||
|
|
||||||
#include <gnuradio/block.h>
|
#include <gnuradio/block.h>
|
||||||
#include <volk/volk.h>
|
#include <volk/volk.h>
|
||||||
@ -84,4 +84,4 @@ private:
|
|||||||
uint32_t d_phase_step;
|
uint32_t d_phase_step;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif /* GNSS_SDR_DIRECT_RESAMPLER_CONDITIONER_CS_H */
|
#endif // GNSS_SDR_DIRECT_RESAMPLER_CONDITIONER_CB_H_
|
||||||
|
@ -36,8 +36,8 @@
|
|||||||
* -------------------------------------------------------------------------
|
* -------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef GNSS_SDR_DIRECT_RESAMPLER_CONDITIONER_CC_H
|
#ifndef GNSS_SDR_DIRECT_RESAMPLER_CONDITIONER_CC_H_
|
||||||
#define GNSS_SDR_DIRECT_RESAMPLER_CONDITIONER_CC_H
|
#define GNSS_SDR_DIRECT_RESAMPLER_CONDITIONER_CC_H_
|
||||||
|
|
||||||
#include <gnuradio/block.h>
|
#include <gnuradio/block.h>
|
||||||
#include <volk/volk.h>
|
#include <volk/volk.h>
|
||||||
@ -91,4 +91,4 @@ private:
|
|||||||
uint32_t d_phase_step;
|
uint32_t d_phase_step;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif /* GNSS_SDR_DIRECT_RESAMPLER_CONDITIONER_CC_H */
|
#endif // GNSS_SDR_DIRECT_RESAMPLER_CONDITIONER_CC_H_
|
||||||
|
@ -29,8 +29,8 @@
|
|||||||
* -------------------------------------------------------------------------
|
* -------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef GNSS_SDR_DIRECT_RESAMPLER_CONDITIONER_CS_H
|
#ifndef GNSS_SDR_DIRECT_RESAMPLER_CONDITIONER_CS_H_
|
||||||
#define GNSS_SDR_DIRECT_RESAMPLER_CONDITIONER_CS_H
|
#define GNSS_SDR_DIRECT_RESAMPLER_CONDITIONER_CS_H_
|
||||||
|
|
||||||
#include <gnuradio/block.h>
|
#include <gnuradio/block.h>
|
||||||
#include <volk/volk.h>
|
#include <volk/volk.h>
|
||||||
@ -84,4 +84,4 @@ private:
|
|||||||
uint32_t d_phase_step;
|
uint32_t d_phase_step;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif /* GNSS_SDR_DIRECT_RESAMPLER_CONDITIONER_CS_H */
|
#endif // GNSS_SDR_DIRECT_RESAMPLER_CONDITIONER_CS_H_
|
||||||
|
@ -49,12 +49,12 @@
|
|||||||
* a boost shared_ptr. This is effectively the public constructor.
|
* a boost shared_ptr. This is effectively the public constructor.
|
||||||
*/
|
*/
|
||||||
signal_generator_c_sptr
|
signal_generator_c_sptr
|
||||||
signal_make_generator_c(std::vector<std::string> signal1, std::vector<std::string> system, const std::vector<unsigned int> &PRN,
|
signal_make_generator_c(const std::vector<std::string> &signal1, const std::vector<std::string> &system, const std::vector<unsigned int> &PRN,
|
||||||
const std::vector<float> &CN0_dB, const std::vector<float> &doppler_Hz,
|
const std::vector<float> &CN0_dB, const std::vector<float> &doppler_Hz,
|
||||||
const std::vector<unsigned int> &delay_chips, const std::vector<unsigned int> &delay_sec, bool data_flag, bool noise_flag,
|
const std::vector<unsigned int> &delay_chips, const std::vector<unsigned int> &delay_sec, bool data_flag, bool noise_flag,
|
||||||
unsigned int fs_in, unsigned int vector_length, float BW_BB)
|
unsigned int fs_in, unsigned int vector_length, float BW_BB)
|
||||||
{
|
{
|
||||||
return gnuradio::get_initial_sptr(new signal_generator_c(std::move(signal1), std::move(system), PRN, CN0_dB, doppler_Hz, delay_chips, delay_sec,
|
return gnuradio::get_initial_sptr(new signal_generator_c(signal1, system, PRN, CN0_dB, doppler_Hz, delay_chips, delay_sec,
|
||||||
data_flag, noise_flag, fs_in, vector_length, BW_BB));
|
data_flag, noise_flag, fs_in, vector_length, BW_BB));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -28,8 +28,8 @@
|
|||||||
* -------------------------------------------------------------------------
|
* -------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef GNSS_SDR_SIGNAL_GENERATOR_C_H
|
#ifndef GNSS_SDR_SIGNAL_GENERATOR_C_H_
|
||||||
#define GNSS_SDR_SIGNAL_GENERATOR_C_H
|
#define GNSS_SDR_SIGNAL_GENERATOR_C_H_
|
||||||
|
|
||||||
#include "gnss_signal.h"
|
#include "gnss_signal.h"
|
||||||
#include <gnuradio/block.h>
|
#include <gnuradio/block.h>
|
||||||
@ -60,8 +60,8 @@ using signal_generator_c_sptr = boost::shared_ptr<signal_generator_c>;
|
|||||||
* interface for creating new instances.
|
* interface for creating new instances.
|
||||||
*/
|
*/
|
||||||
signal_generator_c_sptr signal_make_generator_c(
|
signal_generator_c_sptr signal_make_generator_c(
|
||||||
std::vector<std::string> signal1,
|
const std::vector<std::string> &signal1,
|
||||||
std::vector<std::string> system,
|
const std::vector<std::string> &system,
|
||||||
const std::vector<unsigned int> &PRN,
|
const std::vector<unsigned int> &PRN,
|
||||||
const std::vector<float> &CN0_dB,
|
const std::vector<float> &CN0_dB,
|
||||||
const std::vector<float> &doppler_Hz,
|
const std::vector<float> &doppler_Hz,
|
||||||
@ -92,8 +92,8 @@ public:
|
|||||||
|
|
||||||
private:
|
private:
|
||||||
friend signal_generator_c_sptr signal_make_generator_c(
|
friend signal_generator_c_sptr signal_make_generator_c(
|
||||||
std::vector<std::string> signal1,
|
const std::vector<std::string> &signal1,
|
||||||
std::vector<std::string> system,
|
const std::vector<std::string> &system,
|
||||||
const std::vector<unsigned int> &PRN,
|
const std::vector<unsigned int> &PRN,
|
||||||
const std::vector<float> &CN0_dB,
|
const std::vector<float> &CN0_dB,
|
||||||
const std::vector<float> &doppler_Hz,
|
const std::vector<float> &doppler_Hz,
|
||||||
@ -154,4 +154,4 @@ private:
|
|||||||
std::normal_distribution<float> normal_dist;
|
std::normal_distribution<float> normal_dist;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif /* GNSS_SDR_SIGNAL_GENERATOR_C_H */
|
#endif /* GNSS_SDR_SIGNAL_GENERATOR_C_H_ */
|
||||||
|
@ -36,15 +36,11 @@
|
|||||||
#include "ad9361_manager.h"
|
#include "ad9361_manager.h"
|
||||||
#include "configuration_interface.h"
|
#include "configuration_interface.h"
|
||||||
#include <glog/logging.h>
|
#include <glog/logging.h>
|
||||||
|
#include <iio.h>
|
||||||
#include <exception>
|
#include <exception>
|
||||||
#include <iostream> // for cout, endl
|
#include <iostream> // for cout, endl
|
||||||
#include <utility>
|
#include <utility>
|
||||||
|
|
||||||
#ifdef __APPLE__
|
|
||||||
#include <iio/iio.h>
|
|
||||||
#else
|
|
||||||
#include <iio.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
Ad9361FpgaSignalSource::Ad9361FpgaSignalSource(ConfigurationInterface* configuration,
|
Ad9361FpgaSignalSource::Ad9361FpgaSignalSource(ConfigurationInterface* configuration,
|
||||||
const std::string& role, unsigned int in_stream, unsigned int out_stream,
|
const std::string& role, unsigned int in_stream, unsigned int out_stream,
|
||||||
|
@ -44,7 +44,7 @@
|
|||||||
|
|
||||||
FileSignalSource::FileSignalSource(ConfigurationInterface* configuration,
|
FileSignalSource::FileSignalSource(ConfigurationInterface* configuration,
|
||||||
const std::string& role, unsigned int in_streams, unsigned int out_streams,
|
const std::string& role, unsigned int in_streams, unsigned int out_streams,
|
||||||
const std::shared_ptr<Concurrent_Queue<pmt::pmt_t>>& queue) : role_(role), in_streams_(in_streams), out_streams_(out_streams), queue_(std::move(queue))
|
const std::shared_ptr<Concurrent_Queue<pmt::pmt_t>>& queue) : role_(role), in_streams_(in_streams), out_streams_(out_streams), queue_(queue)
|
||||||
{
|
{
|
||||||
std::string default_filename = "./example_capture.dat";
|
std::string default_filename = "./example_capture.dat";
|
||||||
std::string default_item_type = "short";
|
std::string default_item_type = "short";
|
||||||
|
@ -43,7 +43,7 @@
|
|||||||
|
|
||||||
MultichannelFileSignalSource::MultichannelFileSignalSource(ConfigurationInterface* configuration,
|
MultichannelFileSignalSource::MultichannelFileSignalSource(ConfigurationInterface* configuration,
|
||||||
const std::string& role, unsigned int in_streams, unsigned int out_streams,
|
const std::string& role, unsigned int in_streams, unsigned int out_streams,
|
||||||
const std::shared_ptr<Concurrent_Queue<pmt::pmt_t>>& queue) : role_(role), in_streams_(in_streams), out_streams_(out_streams), queue_(std::move(queue))
|
const std::shared_ptr<Concurrent_Queue<pmt::pmt_t>>& queue) : role_(role), in_streams_(in_streams), out_streams_(out_streams), queue_(queue)
|
||||||
{
|
{
|
||||||
std::string default_filename = "./example_capture.dat";
|
std::string default_filename = "./example_capture.dat";
|
||||||
std::string default_item_type = "short";
|
std::string default_item_type = "short";
|
||||||
|
@ -44,7 +44,7 @@
|
|||||||
|
|
||||||
NsrFileSignalSource::NsrFileSignalSource(ConfigurationInterface* configuration,
|
NsrFileSignalSource::NsrFileSignalSource(ConfigurationInterface* configuration,
|
||||||
const std::string& role, unsigned int in_streams, unsigned int out_streams,
|
const std::string& role, unsigned int in_streams, unsigned int out_streams,
|
||||||
const std::shared_ptr<Concurrent_Queue<pmt::pmt_t>>& queue) : role_(role), in_streams_(in_streams), out_streams_(out_streams), queue_(std::move(queue))
|
const std::shared_ptr<Concurrent_Queue<pmt::pmt_t>>& queue) : role_(role), in_streams_(in_streams), out_streams_(out_streams), queue_(queue)
|
||||||
{
|
{
|
||||||
std::string default_filename = "../data/my_capture.dat";
|
std::string default_filename = "../data/my_capture.dat";
|
||||||
std::string default_item_type = "byte";
|
std::string default_item_type = "byte";
|
||||||
|
@ -43,7 +43,7 @@
|
|||||||
|
|
||||||
SpirFileSignalSource::SpirFileSignalSource(ConfigurationInterface* configuration,
|
SpirFileSignalSource::SpirFileSignalSource(ConfigurationInterface* configuration,
|
||||||
const std::string& role, unsigned int in_streams, unsigned int out_streams,
|
const std::string& role, unsigned int in_streams, unsigned int out_streams,
|
||||||
const std::shared_ptr<Concurrent_Queue<pmt::pmt_t>>& queue) : role_(role), in_streams_(in_streams), out_streams_(out_streams), queue_(std::move(queue))
|
const std::shared_ptr<Concurrent_Queue<pmt::pmt_t>>& queue) : role_(role), in_streams_(in_streams), out_streams_(out_streams), queue_(queue)
|
||||||
{
|
{
|
||||||
std::string default_filename = "../data/my_capture.dat";
|
std::string default_filename = "../data/my_capture.dat";
|
||||||
std::string default_item_type = "int";
|
std::string default_item_type = "int";
|
||||||
|
@ -48,7 +48,7 @@ TwoBitCpxFileSignalSource::TwoBitCpxFileSignalSource(ConfigurationInterface* con
|
|||||||
const std::shared_ptr<Concurrent_Queue<pmt::pmt_t>>& queue) : role_(role),
|
const std::shared_ptr<Concurrent_Queue<pmt::pmt_t>>& queue) : role_(role),
|
||||||
in_streams_(in_streams),
|
in_streams_(in_streams),
|
||||||
out_streams_(out_streams),
|
out_streams_(out_streams),
|
||||||
queue_(std::move(queue))
|
queue_(queue)
|
||||||
{
|
{
|
||||||
std::string default_filename = "../data/my_capture.dat";
|
std::string default_filename = "../data/my_capture.dat";
|
||||||
std::string default_item_type = "byte";
|
std::string default_item_type = "byte";
|
||||||
|
@ -50,7 +50,7 @@ TwoBitPackedFileSignalSource::TwoBitPackedFileSignalSource(ConfigurationInterfac
|
|||||||
const std::shared_ptr<Concurrent_Queue<pmt::pmt_t>>& queue) : role_(role),
|
const std::shared_ptr<Concurrent_Queue<pmt::pmt_t>>& queue) : role_(role),
|
||||||
in_streams_(in_streams),
|
in_streams_(in_streams),
|
||||||
out_streams_(out_streams),
|
out_streams_(out_streams),
|
||||||
queue_(std::move(queue))
|
queue_(queue)
|
||||||
{
|
{
|
||||||
std::string default_filename = "../data/my_capture.dat";
|
std::string default_filename = "../data/my_capture.dat";
|
||||||
std::string default_item_type = "byte";
|
std::string default_item_type = "byte";
|
||||||
|
@ -33,14 +33,10 @@
|
|||||||
#ifndef GNSS_SDR_AD9361_MANAGER_H_
|
#ifndef GNSS_SDR_AD9361_MANAGER_H_
|
||||||
#define GNSS_SDR_AD9361_MANAGER_H_
|
#define GNSS_SDR_AD9361_MANAGER_H_
|
||||||
|
|
||||||
|
#include <iio.h>
|
||||||
#include <cstdint>
|
#include <cstdint>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
#ifdef __APPLE__
|
|
||||||
#include <iio/iio.h>
|
|
||||||
#else
|
|
||||||
#include <iio.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* RX is input, TX is output */
|
/* RX is input, TX is output */
|
||||||
enum iodev
|
enum iodev
|
||||||
|
@ -30,8 +30,8 @@
|
|||||||
* -------------------------------------------------------------------------
|
* -------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef GNSS_SDR_BEIDOU_B1I_TELEMETRY_DECODER_GS_H
|
#ifndef GNSS_SDR_BEIDOU_B1I_TELEMETRY_DECODER_GS_H_
|
||||||
#define GNSS_SDR_BEIDOU_B1I_TELEMETRY_DECODER_GS_H
|
#define GNSS_SDR_BEIDOU_B1I_TELEMETRY_DECODER_GS_H_
|
||||||
|
|
||||||
|
|
||||||
#include "beidou_dnav_navigation_message.h"
|
#include "beidou_dnav_navigation_message.h"
|
||||||
@ -124,4 +124,4 @@ private:
|
|||||||
std::ofstream d_dump_file;
|
std::ofstream d_dump_file;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif // GNSS_SDR_BEIDOU_B1I_TELEMETRY_DECODER_GS_H_
|
||||||
|
@ -28,8 +28,8 @@
|
|||||||
* -------------------------------------------------------------------------
|
* -------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef GNSS_SDR_BEIDOU_B3I_TELEMETRY_DECODER_GS_H
|
#ifndef GNSS_SDR_BEIDOU_B3I_TELEMETRY_DECODER_GS_H_
|
||||||
#define GNSS_SDR_BEIDOU_B3I_TELEMETRY_DECODER_GS_H
|
#define GNSS_SDR_BEIDOU_B3I_TELEMETRY_DECODER_GS_H_
|
||||||
|
|
||||||
#include "beidou_dnav_navigation_message.h"
|
#include "beidou_dnav_navigation_message.h"
|
||||||
#include "gnss_satellite.h"
|
#include "gnss_satellite.h"
|
||||||
@ -121,4 +121,4 @@ private:
|
|||||||
std::ofstream d_dump_file;
|
std::ofstream d_dump_file;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif // GNSS_SDR_BEIDOU_B3I_TELEMETRY_DECODER_GS_H_
|
||||||
|
@ -29,8 +29,8 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
#ifndef GNSS_SDR_GALILEO_TELEMETRY_DECODER_GS_H
|
#ifndef GNSS_SDR_GALILEO_TELEMETRY_DECODER_GS_H_
|
||||||
#define GNSS_SDR_GALILEO_TELEMETRY_DECODER_GS_H
|
#define GNSS_SDR_GALILEO_TELEMETRY_DECODER_GS_H_
|
||||||
|
|
||||||
|
|
||||||
#include "galileo_fnav_message.h"
|
#include "galileo_fnav_message.h"
|
||||||
@ -144,4 +144,4 @@ private:
|
|||||||
int32_t DataLength;
|
int32_t DataLength;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif // GNSS_SDR_GALILEO_TELEMETRY_DECODER_GS_H_
|
||||||
|
@ -29,8 +29,8 @@
|
|||||||
* -------------------------------------------------------------------------
|
* -------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef GNSS_SDR_GLONASS_L1_CA_TELEMETRY_DECODER_GS_H
|
#ifndef GNSS_SDR_GLONASS_L1_CA_TELEMETRY_DECODER_GS_H_
|
||||||
#define GNSS_SDR_GLONASS_L1_CA_TELEMETRY_DECODER_GS_H
|
#define GNSS_SDR_GLONASS_L1_CA_TELEMETRY_DECODER_GS_H_
|
||||||
|
|
||||||
|
|
||||||
#include "GLONASS_L1_L2_CA.h"
|
#include "GLONASS_L1_L2_CA.h"
|
||||||
@ -123,4 +123,4 @@ private:
|
|||||||
std::ofstream d_dump_file;
|
std::ofstream d_dump_file;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif // GNSS_SDR_GLONASS_L1_CA_TELEMETRY_DECODER_GS_H_
|
||||||
|
@ -28,8 +28,8 @@
|
|||||||
* -------------------------------------------------------------------------
|
* -------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef GNSS_SDR_GLONASS_L2_CA_TELEMETRY_DECODER_GS_H
|
#ifndef GNSS_SDR_GLONASS_L2_CA_TELEMETRY_DECODER_GS_H_
|
||||||
#define GNSS_SDR_GLONASS_L2_CA_TELEMETRY_DECODER_GS_H
|
#define GNSS_SDR_GLONASS_L2_CA_TELEMETRY_DECODER_GS_H_
|
||||||
|
|
||||||
|
|
||||||
#include "GLONASS_L1_L2_CA.h"
|
#include "GLONASS_L1_L2_CA.h"
|
||||||
@ -121,4 +121,4 @@ private:
|
|||||||
std::ofstream d_dump_file;
|
std::ofstream d_dump_file;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif // GNSS_SDR_GLONASS_L2_CA_TELEMETRY_DECODER_GS_H_
|
||||||
|
@ -28,8 +28,8 @@
|
|||||||
* -------------------------------------------------------------------------
|
* -------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef GNSS_SDR_GPS_L1_CA_TELEMETRY_DECODER_GS_H
|
#ifndef GNSS_SDR_GPS_L1_CA_TELEMETRY_DECODER_GS_H_
|
||||||
#define GNSS_SDR_GPS_L1_CA_TELEMETRY_DECODER_GS_H
|
#define GNSS_SDR_GPS_L1_CA_TELEMETRY_DECODER_GS_H_
|
||||||
|
|
||||||
#include "GPS_L1_CA.h"
|
#include "GPS_L1_CA.h"
|
||||||
#include "gnss_satellite.h"
|
#include "gnss_satellite.h"
|
||||||
@ -117,4 +117,4 @@ private:
|
|||||||
std::ofstream d_dump_file;
|
std::ofstream d_dump_file;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif // GNSS_SDR_GPS_L1_CA_TELEMETRY_DECODER_GS_H_
|
||||||
|
@ -27,8 +27,8 @@
|
|||||||
* -------------------------------------------------------------------------
|
* -------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef GNSS_SDR_GPS_L2C_TELEMETRY_DECODER_GS_H
|
#ifndef GNSS_SDR_GPS_L2C_TELEMETRY_DECODER_GS_H_
|
||||||
#define GNSS_SDR_GPS_L2C_TELEMETRY_DECODER_GS_H
|
#define GNSS_SDR_GPS_L2C_TELEMETRY_DECODER_GS_H_
|
||||||
|
|
||||||
|
|
||||||
#include "gnss_satellite.h"
|
#include "gnss_satellite.h"
|
||||||
@ -102,4 +102,4 @@ private:
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
#endif
|
#endif // GNSS_SDR_GPS_L2C_TELEMETRY_DECODER_GS_H_
|
||||||
|
@ -27,8 +27,8 @@
|
|||||||
* -------------------------------------------------------------------------
|
* -------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef GNSS_SDR_GPS_L5_TELEMETRY_DECODER_GS_H
|
#ifndef GNSS_SDR_GPS_L5_TELEMETRY_DECODER_GS_H_
|
||||||
#define GNSS_SDR_GPS_L5_TELEMETRY_DECODER_GS_H
|
#define GNSS_SDR_GPS_L5_TELEMETRY_DECODER_GS_H_
|
||||||
|
|
||||||
|
|
||||||
#include "GPS_L5.h" // for GPS_L5I_NH_CODE_LENGTH
|
#include "GPS_L5.h" // for GPS_L5I_NH_CODE_LENGTH
|
||||||
@ -98,4 +98,4 @@ private:
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
#endif
|
#endif // GNSS_SDR_GPS_L5_TELEMETRY_DECODER_GS_H_
|
||||||
|
@ -28,8 +28,8 @@
|
|||||||
* -------------------------------------------------------------------------
|
* -------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef GNSS_SDR_SBAS_L1_TELEMETRY_DECODER_GS_H
|
#ifndef GNSS_SDR_SBAS_L1_TELEMETRY_DECODER_GS_H_
|
||||||
#define GNSS_SDR_SBAS_L1_TELEMETRY_DECODER_GS_H
|
#define GNSS_SDR_SBAS_L1_TELEMETRY_DECODER_GS_H_
|
||||||
|
|
||||||
#include "gnss_satellite.h"
|
#include "gnss_satellite.h"
|
||||||
#include <boost/crc.hpp> // for crc_optimal
|
#include <boost/crc.hpp> // for crc_optimal
|
||||||
@ -169,4 +169,4 @@ private:
|
|||||||
} d_crc_verifier;
|
} d_crc_verifier;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif // GNSS_SDR_SBAS_L1_TELEMETRY_DECODER_GS_H_
|
||||||
|
@ -35,8 +35,8 @@
|
|||||||
* -------------------------------------------------------------------------
|
* -------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef GNSS_SDR_gps_l2_m_dll_pll_tracking_H_
|
#ifndef GNSS_SDR_GPS_L2_M_DLL_PLL_TRACKING_H_
|
||||||
#define GNSS_SDR_gps_l2_m_dll_pll_tracking_H_
|
#define GNSS_SDR_GPS_L2_M_DLL_PLL_TRACKING_H_
|
||||||
|
|
||||||
#include "dll_pll_veml_tracking.h"
|
#include "dll_pll_veml_tracking.h"
|
||||||
#include "tracking_interface.h"
|
#include "tracking_interface.h"
|
||||||
@ -105,4 +105,4 @@ private:
|
|||||||
unsigned int out_streams_;
|
unsigned int out_streams_;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // GNSS_SDR_gps_l2_m_dll_pll_tracking_H_
|
#endif // GNSS_SDR_GPS_L2_M_DLL_PLL_TRACKING_H_
|
||||||
|
@ -29,8 +29,8 @@
|
|||||||
* -------------------------------------------------------------------------
|
* -------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef GNSS_SDR_DLL_PLL_VEML_TRACKING_H
|
#ifndef GNSS_SDR_DLL_PLL_VEML_TRACKING_H_
|
||||||
#define GNSS_SDR_DLL_PLL_VEML_TRACKING_H
|
#define GNSS_SDR_DLL_PLL_VEML_TRACKING_H_
|
||||||
|
|
||||||
#include "cpu_multicorrelator_real_codes.h"
|
#include "cpu_multicorrelator_real_codes.h"
|
||||||
#include "dll_pll_conf.h"
|
#include "dll_pll_conf.h"
|
||||||
@ -216,4 +216,4 @@ private:
|
|||||||
bool d_dump_mat;
|
bool d_dump_mat;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // GNSS_SDR_DLL_PLL_VEML_TRACKING_H
|
#endif // GNSS_SDR_DLL_PLL_VEML_TRACKING_H_
|
||||||
|
@ -54,7 +54,7 @@
|
|||||||
#include <pmt/pmt_sugar.h> // for mp
|
#include <pmt/pmt_sugar.h> // for mp
|
||||||
#include <volk_gnsssdr/volk_gnsssdr.h>
|
#include <volk_gnsssdr/volk_gnsssdr.h>
|
||||||
#include <algorithm> // for fill_n
|
#include <algorithm> // for fill_n
|
||||||
#include <cmath> // for fmod, round, floor
|
#include <cmath> // for fmod, round, floor, fabs
|
||||||
#include <exception> // for exception
|
#include <exception> // for exception
|
||||||
#include <iostream> // for cout, cerr
|
#include <iostream> // for cout, cerr
|
||||||
#include <map>
|
#include <map>
|
||||||
@ -746,7 +746,7 @@ void dll_pll_veml_tracking_fpga::run_dll_pll()
|
|||||||
if (d_dll_filt_history.full())
|
if (d_dll_filt_history.full())
|
||||||
{
|
{
|
||||||
float avg_code_error_chips_s = std::accumulate(d_dll_filt_history.begin(), d_dll_filt_history.end(), 0.0) / static_cast<float>(d_dll_filt_history.capacity());
|
float avg_code_error_chips_s = std::accumulate(d_dll_filt_history.begin(), d_dll_filt_history.end(), 0.0) / static_cast<float>(d_dll_filt_history.capacity());
|
||||||
if (fabs(avg_code_error_chips_s) > 1.0)
|
if (std::fabs(avg_code_error_chips_s) > 1.0)
|
||||||
{
|
{
|
||||||
float carrier_doppler_error_hz = static_cast<float>(d_signal_carrier_freq) * avg_code_error_chips_s / static_cast<float>(d_code_chip_rate);
|
float carrier_doppler_error_hz = static_cast<float>(d_signal_carrier_freq) * avg_code_error_chips_s / static_cast<float>(d_code_chip_rate);
|
||||||
LOG(INFO) << "Detected and corrected carrier doppler error: " << carrier_doppler_error_hz << " [Hz] on sat " << Gnss_Satellite(systemName, d_acquisition_gnss_synchro->PRN);
|
LOG(INFO) << "Detected and corrected carrier doppler error: " << carrier_doppler_error_hz << " [Hz] on sat " << Gnss_Satellite(systemName, d_acquisition_gnss_synchro->PRN);
|
||||||
|
@ -29,8 +29,8 @@
|
|||||||
* -------------------------------------------------------------------------
|
* -------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef GNSS_SDR_DLL_PLL_VEML_TRACKING_FPGA_H
|
#ifndef GNSS_SDR_DLL_PLL_VEML_TRACKING_FPGA_H_
|
||||||
#define GNSS_SDR_DLL_PLL_VEML_TRACKING_FPGA_H
|
#define GNSS_SDR_DLL_PLL_VEML_TRACKING_FPGA_H_
|
||||||
|
|
||||||
#include "dll_pll_conf_fpga.h"
|
#include "dll_pll_conf_fpga.h"
|
||||||
#include "exponential_smoother.h"
|
#include "exponential_smoother.h"
|
||||||
@ -251,4 +251,4 @@ private:
|
|||||||
bool d_stop_tracking;
|
bool d_stop_tracking;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // GNSS_SDR_DLL_PLL_VEML_TRACKING_FPGA_H
|
#endif // GNSS_SDR_DLL_PLL_VEML_TRACKING_FPGA_H_
|
||||||
|
@ -104,11 +104,11 @@ Galileo_E1_Tcp_Connector_Tracking_cc::Galileo_E1_Tcp_Connector_Tracking_cc(
|
|||||||
d_dump_filename = dump_filename;
|
d_dump_filename = dump_filename;
|
||||||
|
|
||||||
// Initialize tracking ==========================================
|
// Initialize tracking ==========================================
|
||||||
//--- DLL variables --------------------------------------------------------
|
// -- DLL variables --------------------------------------------------------
|
||||||
d_early_late_spc_chips = early_late_space_chips; // Define early-late offset (in chips)
|
d_early_late_spc_chips = early_late_space_chips; // Define early-late offset (in chips)
|
||||||
d_very_early_late_spc_chips = very_early_late_space_chips; // Define very-early-late offset (in chips)
|
d_very_early_late_spc_chips = very_early_late_space_chips; // Define very-early-late offset (in chips)
|
||||||
|
|
||||||
//--- TCP CONNECTOR variables --------------------------------------------------------
|
// -- TCP CONNECTOR variables --------------------------------------------------------
|
||||||
d_port_ch0 = port_ch0;
|
d_port_ch0 = port_ch0;
|
||||||
d_port = 0;
|
d_port = 0;
|
||||||
d_listen_connection = true;
|
d_listen_connection = true;
|
||||||
|
@ -36,8 +36,8 @@
|
|||||||
* -------------------------------------------------------------------------
|
* -------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef GNSS_SDR_GALILEO_E1_TCP_CONNECTOR_TRACKING_CC_H
|
#ifndef GNSS_SDR_GALILEO_E1_TCP_CONNECTOR_TRACKING_CC_H_
|
||||||
#define GNSS_SDR_GALILEO_E1_TCP_CONNECTOR_TRACKING_CC_H
|
#define GNSS_SDR_GALILEO_E1_TCP_CONNECTOR_TRACKING_CC_H_
|
||||||
|
|
||||||
#include "cpu_multicorrelator.h"
|
#include "cpu_multicorrelator.h"
|
||||||
#include "gnss_synchro.h"
|
#include "gnss_synchro.h"
|
||||||
@ -185,4 +185,4 @@ private:
|
|||||||
std::string sys;
|
std::string sys;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // GNSS_SDR_GALILEO_E1_TCP_CONNECTOR_TRACKING_CC_H
|
#endif // GNSS_SDR_GALILEO_E1_TCP_CONNECTOR_TRACKING_CC_H_
|
||||||
|
@ -74,7 +74,7 @@ glonass_l1_ca_dll_pll_c_aid_make_tracking_cc(
|
|||||||
float early_late_space_chips)
|
float early_late_space_chips)
|
||||||
{
|
{
|
||||||
return glonass_l1_ca_dll_pll_c_aid_tracking_cc_sptr(new glonass_l1_ca_dll_pll_c_aid_tracking_cc(
|
return glonass_l1_ca_dll_pll_c_aid_tracking_cc_sptr(new glonass_l1_ca_dll_pll_c_aid_tracking_cc(
|
||||||
fs_in, vector_length, dump, std::move(dump_filename), pll_bw_hz, dll_bw_hz, pll_bw_narrow_hz, dll_bw_narrow_hz, extend_correlation_ms, early_late_space_chips));
|
fs_in, vector_length, dump, dump_filename, pll_bw_hz, dll_bw_hz, pll_bw_narrow_hz, dll_bw_narrow_hz, extend_correlation_ms, early_late_space_chips));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -94,7 +94,7 @@ void glonass_l1_ca_dll_pll_c_aid_tracking_cc::msg_handler_preamble_index(const p
|
|||||||
DLOG(INFO) << "Extended correlation enabled for Tracking CH " << d_channel << ": Satellite " << Gnss_Satellite(systemName[sys], d_acquisition_gnss_synchro->PRN);
|
DLOG(INFO) << "Extended correlation enabled for Tracking CH " << d_channel << ": Satellite " << Gnss_Satellite(systemName[sys], d_acquisition_gnss_synchro->PRN);
|
||||||
if (d_enable_extended_integration == false) // avoid re-setting preamble indicator
|
if (d_enable_extended_integration == false) // avoid re-setting preamble indicator
|
||||||
{
|
{
|
||||||
d_preamble_timestamp_s = pmt::to_double(std::move(msg));
|
d_preamble_timestamp_s = pmt::to_double(msg);
|
||||||
d_enable_extended_integration = true;
|
d_enable_extended_integration = true;
|
||||||
d_preamble_synchronized = false;
|
d_preamble_synchronized = false;
|
||||||
}
|
}
|
||||||
@ -126,7 +126,7 @@ glonass_l1_ca_dll_pll_c_aid_tracking_cc::glonass_l1_ca_dll_pll_c_aid_tracking_cc
|
|||||||
d_dump = dump;
|
d_dump = dump;
|
||||||
d_fs_in = fs_in;
|
d_fs_in = fs_in;
|
||||||
d_vector_length = vector_length;
|
d_vector_length = vector_length;
|
||||||
d_dump_filename = std::move(dump_filename);
|
d_dump_filename = dump_filename;
|
||||||
d_correlation_length_samples = static_cast<int32_t>(d_vector_length);
|
d_correlation_length_samples = static_cast<int32_t>(d_vector_length);
|
||||||
|
|
||||||
// Initialize tracking ==========================================
|
// Initialize tracking ==========================================
|
||||||
|
@ -36,8 +36,8 @@
|
|||||||
* -------------------------------------------------------------------------
|
* -------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef GNSS_SDR_GLONASS_L1_CA_DLL_PLL_C_AID_TRACKING_CC_H
|
#ifndef GNSS_SDR_GLONASS_L1_CA_DLL_PLL_C_AID_TRACKING_CC_H_
|
||||||
#define GNSS_SDR_GLONASS_L1_CA_DLL_PLL_C_AID_TRACKING_CC_H
|
#define GNSS_SDR_GLONASS_L1_CA_DLL_PLL_C_AID_TRACKING_CC_H_
|
||||||
|
|
||||||
#include "gnss_synchro.h"
|
#include "gnss_synchro.h"
|
||||||
#include "tracking_2nd_DLL_filter.h"
|
#include "tracking_2nd_DLL_filter.h"
|
||||||
@ -201,4 +201,4 @@ private:
|
|||||||
int32_t save_matfile();
|
int32_t save_matfile();
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // GNSS_SDR_GLONASS_L1_CA_DLL_PLL_C_AID_TRACKING_CC_H
|
#endif // GNSS_SDR_GLONASS_L1_CA_DLL_PLL_C_AID_TRACKING_CC_H_
|
||||||
|
@ -72,7 +72,7 @@ glonass_l1_ca_dll_pll_c_aid_make_tracking_sc(
|
|||||||
float early_late_space_chips)
|
float early_late_space_chips)
|
||||||
{
|
{
|
||||||
return glonass_l1_ca_dll_pll_c_aid_tracking_sc_sptr(new glonass_l1_ca_dll_pll_c_aid_tracking_sc(
|
return glonass_l1_ca_dll_pll_c_aid_tracking_sc_sptr(new glonass_l1_ca_dll_pll_c_aid_tracking_sc(
|
||||||
fs_in, vector_length, dump, std::move(dump_filename), pll_bw_hz, dll_bw_hz, pll_bw_narrow_hz, dll_bw_narrow_hz, extend_correlation_ms, early_late_space_chips));
|
fs_in, vector_length, dump, dump_filename, pll_bw_hz, dll_bw_hz, pll_bw_narrow_hz, dll_bw_narrow_hz, extend_correlation_ms, early_late_space_chips));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -92,7 +92,7 @@ void glonass_l1_ca_dll_pll_c_aid_tracking_sc::msg_handler_preamble_index(const p
|
|||||||
DLOG(INFO) << "Extended correlation enabled for Tracking CH " << d_channel << ": Satellite " << Gnss_Satellite(systemName[sys], d_acquisition_gnss_synchro->PRN);
|
DLOG(INFO) << "Extended correlation enabled for Tracking CH " << d_channel << ": Satellite " << Gnss_Satellite(systemName[sys], d_acquisition_gnss_synchro->PRN);
|
||||||
if (d_enable_extended_integration == false) // avoid re-setting preamble indicator
|
if (d_enable_extended_integration == false) // avoid re-setting preamble indicator
|
||||||
{
|
{
|
||||||
d_preamble_timestamp_s = pmt::to_double(std::move(msg));
|
d_preamble_timestamp_s = pmt::to_double(msg);
|
||||||
d_enable_extended_integration = true;
|
d_enable_extended_integration = true;
|
||||||
d_preamble_synchronized = false;
|
d_preamble_synchronized = false;
|
||||||
}
|
}
|
||||||
@ -122,7 +122,7 @@ glonass_l1_ca_dll_pll_c_aid_tracking_sc::glonass_l1_ca_dll_pll_c_aid_tracking_sc
|
|||||||
d_dump = dump;
|
d_dump = dump;
|
||||||
d_fs_in = fs_in;
|
d_fs_in = fs_in;
|
||||||
d_vector_length = vector_length;
|
d_vector_length = vector_length;
|
||||||
d_dump_filename = std::move(dump_filename);
|
d_dump_filename = dump_filename;
|
||||||
d_correlation_length_samples = static_cast<int32_t>(d_vector_length);
|
d_correlation_length_samples = static_cast<int32_t>(d_vector_length);
|
||||||
|
|
||||||
// Initialize tracking ==========================================
|
// Initialize tracking ==========================================
|
||||||
@ -159,7 +159,7 @@ glonass_l1_ca_dll_pll_c_aid_tracking_sc::glonass_l1_ca_dll_pll_c_aid_tracking_sc
|
|||||||
|
|
||||||
multicorrelator_cpu_16sc.init(2 * d_correlation_length_samples, d_n_correlator_taps);
|
multicorrelator_cpu_16sc.init(2 * d_correlation_length_samples, d_n_correlator_taps);
|
||||||
|
|
||||||
//--- Perform initializations ------------------------------
|
// -- Perform initializations ------------------------------
|
||||||
// define initial code frequency basis of NCO
|
// define initial code frequency basis of NCO
|
||||||
d_code_freq_chips = GLONASS_L1_CA_CODE_RATE_CPS;
|
d_code_freq_chips = GLONASS_L1_CA_CODE_RATE_CPS;
|
||||||
// define residual code phase (in chips)
|
// define residual code phase (in chips)
|
||||||
|
@ -36,8 +36,8 @@
|
|||||||
* -------------------------------------------------------------------------
|
* -------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef GNSS_SDR_GLONASS_L1_CA_DLL_PLL_C_AID_TRACKING_SC_H
|
#ifndef GNSS_SDR_GLONASS_L1_CA_DLL_PLL_C_AID_TRACKING_SC_H_
|
||||||
#define GNSS_SDR_GLONASS_L1_CA_DLL_PLL_C_AID_TRACKING_SC_H
|
#define GNSS_SDR_GLONASS_L1_CA_DLL_PLL_C_AID_TRACKING_SC_H_
|
||||||
|
|
||||||
#include "cpu_multicorrelator_16sc.h"
|
#include "cpu_multicorrelator_16sc.h"
|
||||||
#include "glonass_l1_signal_processing.h"
|
#include "glonass_l1_signal_processing.h"
|
||||||
@ -203,4 +203,4 @@ private:
|
|||||||
int32_t save_matfile();
|
int32_t save_matfile();
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // GNSS_SDR_GLONASS_L1_CA_DLL_PLL_C_AID_TRACKING_SC_H
|
#endif // GNSS_SDR_GLONASS_L1_CA_DLL_PLL_C_AID_TRACKING_SC_H_
|
||||||
|
@ -68,7 +68,7 @@ glonass_l1_ca_dll_pll_make_tracking_cc(
|
|||||||
float early_late_space_chips)
|
float early_late_space_chips)
|
||||||
{
|
{
|
||||||
return glonass_l1_ca_dll_pll_tracking_cc_sptr(new Glonass_L1_Ca_Dll_Pll_Tracking_cc(
|
return glonass_l1_ca_dll_pll_tracking_cc_sptr(new Glonass_L1_Ca_Dll_Pll_Tracking_cc(
|
||||||
fs_in, vector_length, dump, std::move(dump_filename), pll_bw_hz, dll_bw_hz, early_late_space_chips));
|
fs_in, vector_length, dump, dump_filename, pll_bw_hz, dll_bw_hz, early_late_space_chips));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -98,7 +98,7 @@ Glonass_L1_Ca_Dll_Pll_Tracking_cc::Glonass_L1_Ca_Dll_Pll_Tracking_cc(
|
|||||||
d_dump = dump;
|
d_dump = dump;
|
||||||
d_fs_in = fs_in;
|
d_fs_in = fs_in;
|
||||||
d_vector_length = vector_length;
|
d_vector_length = vector_length;
|
||||||
d_dump_filename = std::move(dump_filename);
|
d_dump_filename = dump_filename;
|
||||||
|
|
||||||
d_current_prn_length_samples = static_cast<int32_t>(d_vector_length);
|
d_current_prn_length_samples = static_cast<int32_t>(d_vector_length);
|
||||||
|
|
||||||
|
@ -36,8 +36,8 @@
|
|||||||
* -------------------------------------------------------------------------
|
* -------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef GNSS_SDR_GLONASS_L1_CA_DLL_PLL_TRACKING_CC_H
|
#ifndef GNSS_SDR_GLONASS_L1_CA_DLL_PLL_TRACKING_CC_H_
|
||||||
#define GNSS_SDR_GLONASS_L1_CA_DLL_PLL_TRACKING_CC_H
|
#define GNSS_SDR_GLONASS_L1_CA_DLL_PLL_TRACKING_CC_H_
|
||||||
|
|
||||||
#include "cpu_multicorrelator.h"
|
#include "cpu_multicorrelator.h"
|
||||||
#include "gnss_synchro.h"
|
#include "gnss_synchro.h"
|
||||||
@ -168,4 +168,4 @@ private:
|
|||||||
int32_t save_matfile();
|
int32_t save_matfile();
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // GNSS_SDR_GLONASS_L1_CA_DLL_PLL_TRACKING_CC_H
|
#endif // GNSS_SDR_GLONASS_L1_CA_DLL_PLL_TRACKING_CC_H_
|
||||||
|
@ -71,7 +71,7 @@ glonass_l2_ca_dll_pll_c_aid_make_tracking_cc(
|
|||||||
float early_late_space_chips)
|
float early_late_space_chips)
|
||||||
{
|
{
|
||||||
return glonass_l2_ca_dll_pll_c_aid_tracking_cc_sptr(new glonass_l2_ca_dll_pll_c_aid_tracking_cc(
|
return glonass_l2_ca_dll_pll_c_aid_tracking_cc_sptr(new glonass_l2_ca_dll_pll_c_aid_tracking_cc(
|
||||||
fs_in, vector_length, dump, std::move(dump_filename), pll_bw_hz, dll_bw_hz, pll_bw_narrow_hz, dll_bw_narrow_hz, extend_correlation_ms, early_late_space_chips));
|
fs_in, vector_length, dump, dump_filename, pll_bw_hz, dll_bw_hz, pll_bw_narrow_hz, dll_bw_narrow_hz, extend_correlation_ms, early_late_space_chips));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -91,7 +91,7 @@ void glonass_l2_ca_dll_pll_c_aid_tracking_cc::msg_handler_preamble_index(const p
|
|||||||
DLOG(INFO) << "Extended correlation enabled for Tracking CH " << d_channel << ": Satellite " << Gnss_Satellite(systemName[sys], d_acquisition_gnss_synchro->PRN);
|
DLOG(INFO) << "Extended correlation enabled for Tracking CH " << d_channel << ": Satellite " << Gnss_Satellite(systemName[sys], d_acquisition_gnss_synchro->PRN);
|
||||||
if (d_enable_extended_integration == false) // avoid re-setting preamble indicator
|
if (d_enable_extended_integration == false) // avoid re-setting preamble indicator
|
||||||
{
|
{
|
||||||
d_preamble_timestamp_s = pmt::to_double(std::move(msg));
|
d_preamble_timestamp_s = pmt::to_double(msg);
|
||||||
d_enable_extended_integration = true;
|
d_enable_extended_integration = true;
|
||||||
d_preamble_synchronized = false;
|
d_preamble_synchronized = false;
|
||||||
}
|
}
|
||||||
@ -123,7 +123,7 @@ glonass_l2_ca_dll_pll_c_aid_tracking_cc::glonass_l2_ca_dll_pll_c_aid_tracking_cc
|
|||||||
d_dump = dump;
|
d_dump = dump;
|
||||||
d_fs_in = fs_in;
|
d_fs_in = fs_in;
|
||||||
d_vector_length = vector_length;
|
d_vector_length = vector_length;
|
||||||
d_dump_filename = std::move(dump_filename);
|
d_dump_filename = dump_filename;
|
||||||
d_correlation_length_samples = static_cast<int32_t>(d_vector_length);
|
d_correlation_length_samples = static_cast<int32_t>(d_vector_length);
|
||||||
|
|
||||||
// Initialize tracking ==========================================
|
// Initialize tracking ==========================================
|
||||||
|
@ -34,8 +34,8 @@
|
|||||||
* -------------------------------------------------------------------------
|
* -------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef GNSS_SDR_GLONASS_L2_CA_DLL_PLL_C_AID_TRACKING_CC_H
|
#ifndef GNSS_SDR_GLONASS_L2_CA_DLL_PLL_C_AID_TRACKING_CC_H_
|
||||||
#define GNSS_SDR_GLONASS_L2_CA_DLL_PLL_C_AID_TRACKING_CC_H
|
#define GNSS_SDR_GLONASS_L2_CA_DLL_PLL_C_AID_TRACKING_CC_H_
|
||||||
|
|
||||||
#include "gnss_synchro.h"
|
#include "gnss_synchro.h"
|
||||||
#include "tracking_2nd_DLL_filter.h"
|
#include "tracking_2nd_DLL_filter.h"
|
||||||
@ -199,4 +199,4 @@ private:
|
|||||||
int32_t save_matfile();
|
int32_t save_matfile();
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // GNSS_SDR_GLONASS_L1_CA_DLL_PLL_C_AID_TRACKING_CC_H
|
#endif // GNSS_SDR_GLONASS_L1_CA_DLL_PLL_C_AID_TRACKING_CC_H_
|
||||||
|
@ -70,7 +70,7 @@ glonass_l2_ca_dll_pll_c_aid_make_tracking_sc(
|
|||||||
float early_late_space_chips)
|
float early_late_space_chips)
|
||||||
{
|
{
|
||||||
return glonass_l2_ca_dll_pll_c_aid_tracking_sc_sptr(new glonass_l2_ca_dll_pll_c_aid_tracking_sc(
|
return glonass_l2_ca_dll_pll_c_aid_tracking_sc_sptr(new glonass_l2_ca_dll_pll_c_aid_tracking_sc(
|
||||||
fs_in, vector_length, dump, std::move(dump_filename), pll_bw_hz, dll_bw_hz, pll_bw_narrow_hz, dll_bw_narrow_hz, extend_correlation_ms, early_late_space_chips));
|
fs_in, vector_length, dump, dump_filename, pll_bw_hz, dll_bw_hz, pll_bw_narrow_hz, dll_bw_narrow_hz, extend_correlation_ms, early_late_space_chips));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -90,7 +90,7 @@ void glonass_l2_ca_dll_pll_c_aid_tracking_sc::msg_handler_preamble_index(const p
|
|||||||
DLOG(INFO) << "Extended correlation enabled for Tracking CH " << d_channel << ": Satellite " << Gnss_Satellite(systemName[sys], d_acquisition_gnss_synchro->PRN);
|
DLOG(INFO) << "Extended correlation enabled for Tracking CH " << d_channel << ": Satellite " << Gnss_Satellite(systemName[sys], d_acquisition_gnss_synchro->PRN);
|
||||||
if (d_enable_extended_integration == false) // avoid re-setting preamble indicator
|
if (d_enable_extended_integration == false) // avoid re-setting preamble indicator
|
||||||
{
|
{
|
||||||
d_preamble_timestamp_s = pmt::to_double(std::move(msg));
|
d_preamble_timestamp_s = pmt::to_double(msg);
|
||||||
d_enable_extended_integration = true;
|
d_enable_extended_integration = true;
|
||||||
d_preamble_synchronized = false;
|
d_preamble_synchronized = false;
|
||||||
}
|
}
|
||||||
@ -120,7 +120,7 @@ glonass_l2_ca_dll_pll_c_aid_tracking_sc::glonass_l2_ca_dll_pll_c_aid_tracking_sc
|
|||||||
d_dump = dump;
|
d_dump = dump;
|
||||||
d_fs_in = fs_in;
|
d_fs_in = fs_in;
|
||||||
d_vector_length = vector_length;
|
d_vector_length = vector_length;
|
||||||
d_dump_filename = std::move(dump_filename);
|
d_dump_filename = dump_filename;
|
||||||
d_correlation_length_samples = static_cast<int32_t>(d_vector_length);
|
d_correlation_length_samples = static_cast<int32_t>(d_vector_length);
|
||||||
|
|
||||||
// Initialize tracking ==========================================
|
// Initialize tracking ==========================================
|
||||||
@ -157,7 +157,7 @@ glonass_l2_ca_dll_pll_c_aid_tracking_sc::glonass_l2_ca_dll_pll_c_aid_tracking_sc
|
|||||||
|
|
||||||
multicorrelator_cpu_16sc.init(2 * d_correlation_length_samples, d_n_correlator_taps);
|
multicorrelator_cpu_16sc.init(2 * d_correlation_length_samples, d_n_correlator_taps);
|
||||||
|
|
||||||
//--- Perform initializations ------------------------------
|
// -- Perform initializations ------------------------------
|
||||||
// define initial code frequency basis of NCO
|
// define initial code frequency basis of NCO
|
||||||
d_code_freq_chips = GLONASS_L2_CA_CODE_RATE_CPS;
|
d_code_freq_chips = GLONASS_L2_CA_CODE_RATE_CPS;
|
||||||
// define residual code phase (in chips)
|
// define residual code phase (in chips)
|
||||||
|
@ -34,8 +34,8 @@
|
|||||||
* -------------------------------------------------------------------------
|
* -------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef GNSS_SDR_GLONASS_L2_CA_DLL_PLL_C_AID_TRACKING_SC_H
|
#ifndef GNSS_SDR_GLONASS_L2_CA_DLL_PLL_C_AID_TRACKING_SC_H_
|
||||||
#define GNSS_SDR_GLONASS_L2_CA_DLL_PLL_C_AID_TRACKING_SC_H
|
#define GNSS_SDR_GLONASS_L2_CA_DLL_PLL_C_AID_TRACKING_SC_H_
|
||||||
|
|
||||||
#include "cpu_multicorrelator_16sc.h"
|
#include "cpu_multicorrelator_16sc.h"
|
||||||
#include "glonass_l2_signal_processing.h"
|
#include "glonass_l2_signal_processing.h"
|
||||||
@ -201,4 +201,4 @@ private:
|
|||||||
int32_t save_matfile();
|
int32_t save_matfile();
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // GNSS_SDR_GLONASS_L2_CA_DLL_PLL_C_AID_TRACKING_SC_H
|
#endif // GNSS_SDR_GLONASS_L2_CA_DLL_PLL_C_AID_TRACKING_SC_H_
|
||||||
|
@ -68,7 +68,7 @@ glonass_l2_ca_dll_pll_make_tracking_cc(
|
|||||||
float early_late_space_chips)
|
float early_late_space_chips)
|
||||||
{
|
{
|
||||||
return glonass_l2_ca_dll_pll_tracking_cc_sptr(new Glonass_L2_Ca_Dll_Pll_Tracking_cc(
|
return glonass_l2_ca_dll_pll_tracking_cc_sptr(new Glonass_L2_Ca_Dll_Pll_Tracking_cc(
|
||||||
fs_in, vector_length, dump, std::move(dump_filename), pll_bw_hz, dll_bw_hz, early_late_space_chips));
|
fs_in, vector_length, dump, dump_filename, pll_bw_hz, dll_bw_hz, early_late_space_chips));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -98,7 +98,7 @@ Glonass_L2_Ca_Dll_Pll_Tracking_cc::Glonass_L2_Ca_Dll_Pll_Tracking_cc(
|
|||||||
d_dump = dump;
|
d_dump = dump;
|
||||||
d_fs_in = fs_in;
|
d_fs_in = fs_in;
|
||||||
d_vector_length = vector_length;
|
d_vector_length = vector_length;
|
||||||
d_dump_filename = std::move(dump_filename);
|
d_dump_filename = dump_filename;
|
||||||
|
|
||||||
d_current_prn_length_samples = static_cast<int32_t>(d_vector_length);
|
d_current_prn_length_samples = static_cast<int32_t>(d_vector_length);
|
||||||
|
|
||||||
|
@ -34,8 +34,8 @@
|
|||||||
* -------------------------------------------------------------------------
|
* -------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef GNSS_SDR_GLONASS_L2_CA_DLL_PLL_TRACKING_CC_H
|
#ifndef GNSS_SDR_GLONASS_L2_CA_DLL_PLL_TRACKING_CC_H_
|
||||||
#define GNSS_SDR_GLONASS_L2_CA_DLL_PLL_TRACKING_CC_H
|
#define GNSS_SDR_GLONASS_L2_CA_DLL_PLL_TRACKING_CC_H_
|
||||||
|
|
||||||
#include "cpu_multicorrelator.h"
|
#include "cpu_multicorrelator.h"
|
||||||
#include "gnss_synchro.h"
|
#include "gnss_synchro.h"
|
||||||
@ -166,4 +166,4 @@ private:
|
|||||||
int32_t save_matfile();
|
int32_t save_matfile();
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // GNSS_SDR_GLONASS_L2_CA_DLL_PLL_TRACKING_CC_H
|
#endif // GNSS_SDR_GLONASS_L2_CA_DLL_PLL_TRACKING_CC_H_
|
||||||
|
@ -33,8 +33,8 @@
|
|||||||
* -------------------------------------------------------------------------
|
* -------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef GNSS_SDR_GPS_L1_CA_DLL_PLL_TRACKING_GPU_CC_H
|
#ifndef GNSS_SDR_GPS_L1_CA_DLL_PLL_TRACKING_GPU_CC_H_
|
||||||
#define GNSS_SDR_GPS_L1_CA_DLL_PLL_TRACKING_GPU_CC_H
|
#define GNSS_SDR_GPS_L1_CA_DLL_PLL_TRACKING_GPU_CC_H_
|
||||||
|
|
||||||
#include "cuda_multicorrelator.h"
|
#include "cuda_multicorrelator.h"
|
||||||
#include "gnss_synchro.h"
|
#include "gnss_synchro.h"
|
||||||
@ -175,4 +175,4 @@ private:
|
|||||||
std::string sys;
|
std::string sys;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // GNSS_SDR_GPS_L1_CA_DLL_PLL_TRACKING_GPU_CC_H
|
#endif // GNSS_SDR_GPS_L1_CA_DLL_PLL_TRACKING_GPU_CC_H_
|
||||||
|
@ -74,7 +74,7 @@ gps_l1_ca_kf_make_tracking_cc(
|
|||||||
int32_t bce_kappa)
|
int32_t bce_kappa)
|
||||||
{
|
{
|
||||||
return gps_l1_ca_kf_tracking_cc_sptr(new Gps_L1_Ca_Kf_Tracking_cc(order, if_freq,
|
return gps_l1_ca_kf_tracking_cc_sptr(new Gps_L1_Ca_Kf_Tracking_cc(order, if_freq,
|
||||||
fs_in, vector_length, dump, std::move(dump_filename), dll_bw_hz, early_late_space_chips,
|
fs_in, vector_length, dump, dump_filename, dll_bw_hz, early_late_space_chips,
|
||||||
bce_run, bce_ptrans, bce_strans, bce_nu, bce_kappa));
|
bce_run, bce_ptrans, bce_strans, bce_nu, bce_kappa));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -115,7 +115,7 @@ Gps_L1_Ca_Kf_Tracking_cc::Gps_L1_Ca_Kf_Tracking_cc(
|
|||||||
d_if_freq = if_freq;
|
d_if_freq = if_freq;
|
||||||
d_fs_in = fs_in;
|
d_fs_in = fs_in;
|
||||||
d_vector_length = vector_length;
|
d_vector_length = vector_length;
|
||||||
d_dump_filename = std::move(dump_filename);
|
d_dump_filename = dump_filename;
|
||||||
|
|
||||||
d_current_prn_length_samples = static_cast<int>(d_vector_length);
|
d_current_prn_length_samples = static_cast<int>(d_vector_length);
|
||||||
|
|
||||||
|
@ -37,8 +37,8 @@
|
|||||||
* -------------------------------------------------------------------------
|
* -------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef GNSS_SDR_GPS_L1_CA_KF_TRACKING_CC_H
|
#ifndef GNSS_SDR_GPS_L1_CA_KF_TRACKING_CC_H_
|
||||||
#define GNSS_SDR_GPS_L1_CA_KF_TRACKING_CC_H
|
#define GNSS_SDR_GPS_L1_CA_KF_TRACKING_CC_H_
|
||||||
|
|
||||||
#if ARMA_NO_BOUND_CHECKING
|
#if ARMA_NO_BOUND_CHECKING
|
||||||
#define ARMA_NO_DEBUG 1
|
#define ARMA_NO_DEBUG 1
|
||||||
@ -223,4 +223,4 @@ private:
|
|||||||
int32_t save_matfile();
|
int32_t save_matfile();
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // GNSS_SDR_GPS_L1_CA_KF_TRACKING_CC_H
|
#endif // GNSS_SDR_GPS_L1_CA_KF_TRACKING_CC_H_
|
||||||
|
@ -94,10 +94,10 @@ Gps_L1_Ca_Tcp_Connector_Tracking_cc::Gps_L1_Ca_Tcp_Connector_Tracking_cc(
|
|||||||
d_vector_length = vector_length;
|
d_vector_length = vector_length;
|
||||||
d_dump_filename = dump_filename;
|
d_dump_filename = dump_filename;
|
||||||
|
|
||||||
//--- DLL variables --------------------------------------------------------
|
// -- DLL variables --------------------------------------------------------
|
||||||
d_early_late_spc_chips = early_late_space_chips; // Define early-late offset (in chips)
|
d_early_late_spc_chips = early_late_space_chips; // Define early-late offset (in chips)
|
||||||
|
|
||||||
//--- TCP CONNECTOR variables --------------------------------------------------------
|
// -- TCP CONNECTOR variables --------------------------------------------------------
|
||||||
d_port_ch0 = port_ch0;
|
d_port_ch0 = port_ch0;
|
||||||
d_port = 0;
|
d_port = 0;
|
||||||
d_listen_connection = true;
|
d_listen_connection = true;
|
||||||
|
@ -34,8 +34,8 @@
|
|||||||
* -------------------------------------------------------------------------
|
* -------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef GNSS_SDR_GPS_L1_CA_TCP_CONNECTOR_TRACKING_CC_H
|
#ifndef GNSS_SDR_GPS_L1_CA_TCP_CONNECTOR_TRACKING_CC_H_
|
||||||
#define GNSS_SDR_GPS_L1_CA_TCP_CONNECTOR_TRACKING_CC_H
|
#define GNSS_SDR_GPS_L1_CA_TCP_CONNECTOR_TRACKING_CC_H_
|
||||||
|
|
||||||
#include "cpu_multicorrelator.h"
|
#include "cpu_multicorrelator.h"
|
||||||
#include "gnss_synchro.h"
|
#include "gnss_synchro.h"
|
||||||
@ -171,4 +171,4 @@ private:
|
|||||||
std::string sys;
|
std::string sys;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // GNSS_SDR_GPS_L1_CA_TCP_CONNECTOR_TRACKING_CC_H
|
#endif // GNSS_SDR_GPS_L1_CA_TCP_CONNECTOR_TRACKING_CC_H_
|
||||||
|
@ -61,12 +61,12 @@ const float PHASE_CARR_MAX_DIV_PI = 683565275.5764316; // 2^(31)/pi
|
|||||||
const float TWO_PI = 6.283185307179586;
|
const float TWO_PI = 6.283185307179586;
|
||||||
|
|
||||||
Fpga_Multicorrelator_8sc::Fpga_Multicorrelator_8sc(int32_t n_correlators,
|
Fpga_Multicorrelator_8sc::Fpga_Multicorrelator_8sc(int32_t n_correlators,
|
||||||
std::string device_name, int32_t device_base, int32_t *ca_codes, int32_t *data_codes, uint32_t code_length_chips, bool track_pilot,
|
const std::string &device_name, int32_t device_base, int32_t *ca_codes, int32_t *data_codes, uint32_t code_length_chips, bool track_pilot,
|
||||||
uint32_t code_samples_per_chip)
|
uint32_t code_samples_per_chip)
|
||||||
|
|
||||||
{
|
{
|
||||||
d_n_correlators = n_correlators;
|
d_n_correlators = n_correlators;
|
||||||
d_device_name = std::move(device_name);
|
d_device_name = device_name;
|
||||||
d_device_base = device_base;
|
d_device_base = device_base;
|
||||||
d_track_pilot = track_pilot;
|
d_track_pilot = track_pilot;
|
||||||
d_device_descriptor = 0;
|
d_device_descriptor = 0;
|
||||||
@ -329,7 +329,7 @@ void Fpga_Multicorrelator_8sc::fpga_compute_code_shift_parameters()
|
|||||||
|
|
||||||
for (uint32_t i = 0; i < d_n_correlators; i++)
|
for (uint32_t i = 0; i < d_n_correlators; i++)
|
||||||
{
|
{
|
||||||
dec_part = floor(d_shifts_chips[i] - d_rem_code_phase_chips);
|
dec_part = std::floor(d_shifts_chips[i] - d_rem_code_phase_chips);
|
||||||
|
|
||||||
if (dec_part < 0)
|
if (dec_part < 0)
|
||||||
{
|
{
|
||||||
@ -344,11 +344,11 @@ void Fpga_Multicorrelator_8sc::fpga_compute_code_shift_parameters()
|
|||||||
frac_part = frac_part + 1.0; // fmod operator does not work as in Matlab with negative numbers
|
frac_part = frac_part + 1.0; // fmod operator does not work as in Matlab with negative numbers
|
||||||
}
|
}
|
||||||
|
|
||||||
d_initial_interp_counter[i] = static_cast<uint32_t>(floor(max_code_resampler_counter * frac_part));
|
d_initial_interp_counter[i] = static_cast<uint32_t>(std::floor(max_code_resampler_counter * frac_part));
|
||||||
}
|
}
|
||||||
if (d_track_pilot)
|
if (d_track_pilot)
|
||||||
{
|
{
|
||||||
dec_part = floor(d_prompt_data_shift[0] - d_rem_code_phase_chips);
|
dec_part = std::floor(d_prompt_data_shift[0] - d_rem_code_phase_chips);
|
||||||
|
|
||||||
if (dec_part < 0)
|
if (dec_part < 0)
|
||||||
{
|
{
|
||||||
@ -361,7 +361,7 @@ void Fpga_Multicorrelator_8sc::fpga_compute_code_shift_parameters()
|
|||||||
{
|
{
|
||||||
frac_part = frac_part + 1.0; // fmod operator does not work as in Matlab with negative numbers
|
frac_part = frac_part + 1.0; // fmod operator does not work as in Matlab with negative numbers
|
||||||
}
|
}
|
||||||
d_initial_interp_counter[d_n_correlators] = static_cast<uint32_t>(floor(max_code_resampler_counter * frac_part));
|
d_initial_interp_counter[d_n_correlators] = static_cast<uint32_t>(std::floor(max_code_resampler_counter * frac_part));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -522,7 +522,7 @@ void Fpga_Multicorrelator_8sc::initialize_secondary_code(uint32_t secondary_code
|
|||||||
|
|
||||||
void Fpga_Multicorrelator_8sc::write_secondary_code(uint32_t secondary_code_length, std::string *secondary_code_string, uint32_t reg_addr)
|
void Fpga_Multicorrelator_8sc::write_secondary_code(uint32_t secondary_code_length, std::string *secondary_code_string, uint32_t reg_addr)
|
||||||
{
|
{
|
||||||
uint32_t num_words = ceil(static_cast<float>(secondary_code_length) / secondary_code_word_size);
|
uint32_t num_words = std::ceil(static_cast<float>(secondary_code_length) / secondary_code_word_size);
|
||||||
uint32_t last_word_size = secondary_code_length % secondary_code_word_size;
|
uint32_t last_word_size = secondary_code_length % secondary_code_word_size;
|
||||||
|
|
||||||
if (last_word_size == 0)
|
if (last_word_size == 0)
|
||||||
|
@ -34,8 +34,8 @@
|
|||||||
* -------------------------------------------------------------------------
|
* -------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef GNSS_SDR_FPGA_MULTICORRELATOR_8SC_H_
|
#ifndef GNSS_SDR_FPGA_MULTICORRELATOR_H_
|
||||||
#define GNSS_SDR_FPGA_MULTICORRELATOR_8SC_H_
|
#define GNSS_SDR_FPGA_MULTICORRELATOR_H_
|
||||||
|
|
||||||
#include <gnuradio/block.h>
|
#include <gnuradio/block.h>
|
||||||
#include <cstdint>
|
#include <cstdint>
|
||||||
@ -52,7 +52,7 @@ public:
|
|||||||
* \brief Constructor
|
* \brief Constructor
|
||||||
*/
|
*/
|
||||||
Fpga_Multicorrelator_8sc(int32_t n_correlators,
|
Fpga_Multicorrelator_8sc(int32_t n_correlators,
|
||||||
std::string device_name,
|
const std::string &device_name,
|
||||||
int32_t device_base,
|
int32_t device_base,
|
||||||
int32_t *ca_codes,
|
int32_t *ca_codes,
|
||||||
int32_t *data_codes,
|
int32_t *data_codes,
|
||||||
|
@ -52,6 +52,7 @@
|
|||||||
*/
|
*/
|
||||||
double fll_four_quadrant_atan(gr_complex prompt_s1, gr_complex prompt_s2, double t1, double t2);
|
double fll_four_quadrant_atan(gr_complex prompt_s1, gr_complex prompt_s2, double t1, double t2);
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* FLL differential arctan discriminator:
|
* FLL differential arctan discriminator:
|
||||||
* \f{equation}
|
* \f{equation}
|
||||||
@ -61,11 +62,12 @@ double fll_four_quadrant_atan(gr_complex prompt_s1, gr_complex prompt_s2, double
|
|||||||
*/
|
*/
|
||||||
double fll_diff_atan(gr_complex prompt_s1, gr_complex prompt_s2, double t1, double t2);
|
double fll_diff_atan(gr_complex prompt_s1, gr_complex prompt_s2, double t1, double t2);
|
||||||
|
|
||||||
|
|
||||||
/*! \brief Phase unwrapping function, input is [rad]
|
/*! \brief Phase unwrapping function, input is [rad]
|
||||||
*
|
|
||||||
*/
|
*/
|
||||||
double phase_unwrap(double phase_rad);
|
double phase_unwrap(double phase_rad);
|
||||||
|
|
||||||
|
|
||||||
/*! \brief PLL four quadrant arctan discriminator
|
/*! \brief PLL four quadrant arctan discriminator
|
||||||
*
|
*
|
||||||
* PLL four quadrant arctan discriminator:
|
* PLL four quadrant arctan discriminator:
|
||||||
|
@ -45,8 +45,8 @@
|
|||||||
* -------------------------------------------------------------------------
|
* -------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef __INIREADER_H__
|
#ifndef GNSS_SDR_INIREADER_H_
|
||||||
#define __INIREADER_H__
|
#define GNSS_SDR_INIREADER_H_
|
||||||
|
|
||||||
#include <cstdint>
|
#include <cstdint>
|
||||||
#include <map>
|
#include <map>
|
||||||
@ -80,4 +80,4 @@ private:
|
|||||||
const char* value);
|
const char* value);
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // __INIREADER_H__
|
#endif // GNSS_SDR_INIREADER_H_
|
||||||
|
@ -28,8 +28,8 @@
|
|||||||
* -------------------------------------------------------------------------
|
* -------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef GNSS_SDR_CHANNEL_EVENT_H
|
#ifndef GNSS_SDR_CHANNEL_EVENT_H_
|
||||||
#define GNSS_SDR_CHANNEL_EVENT_H
|
#define GNSS_SDR_CHANNEL_EVENT_H_
|
||||||
|
|
||||||
#include <memory>
|
#include <memory>
|
||||||
|
|
||||||
@ -50,4 +50,4 @@ private:
|
|||||||
Channel_Event(int channel_id_, int event_type_);
|
Channel_Event(int channel_id_, int event_type_);
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif // GNSS_SDR_CHANNEL_EVENT_H_
|
||||||
|
@ -28,8 +28,8 @@
|
|||||||
* -------------------------------------------------------------------------
|
* -------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef GNSS_SDR_CHANNEL_STATUS_MSG_RECEIVER_CC_H
|
#ifndef GNSS_SDR_CHANNEL_STATUS_MSG_RECEIVER_CC_H_
|
||||||
#define GNSS_SDR_CHANNEL_STATUS_MSG_RECEIVER_CC_H
|
#define GNSS_SDR_CHANNEL_STATUS_MSG_RECEIVER_CC_H_
|
||||||
|
|
||||||
#include "gnss_synchro.h"
|
#include "gnss_synchro.h"
|
||||||
#include "monitor_pvt.h"
|
#include "monitor_pvt.h"
|
||||||
@ -70,4 +70,4 @@ private:
|
|||||||
void msg_handler_events(const pmt::pmt_t& msg);
|
void msg_handler_events(const pmt::pmt_t& msg);
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif // GNSS_SDR_CHANNEL_STATUS_MSG_RECEIVER_CC_H_
|
||||||
|
@ -28,8 +28,8 @@
|
|||||||
* -------------------------------------------------------------------------
|
* -------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef GNSS_SDR_COMMAND_EVENT_H
|
#ifndef GNSS_SDR_COMMAND_EVENT_H_
|
||||||
#define GNSS_SDR_COMMAND_EVENT_H
|
#define GNSS_SDR_COMMAND_EVENT_H_
|
||||||
|
|
||||||
#include <memory>
|
#include <memory>
|
||||||
|
|
||||||
@ -50,4 +50,4 @@ private:
|
|||||||
Command_Event(int command_id_, int event_type_);
|
Command_Event(int command_id_, int event_type_);
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif // GNSS_SDR_COMMAND_EVENT_H_
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user