GNSS-SDR 0.0.21
An Open Source GNSS Software Defined Receiver
Loading...
Searching...
No Matches
gps_l2c_signal_replica.h
Go to the documentation of this file.
1/*!
2 * \file gps_l2c_signal_replica.h
3 * \brief This file implements signal generators for GPS L2C signals
4 * \author Javier Arribas, 2015. jarribas(at)cttc.es
5 *
6 *
7 * -----------------------------------------------------------------------------
8 *
9 * GNSS-SDR is a Global Navigation Satellite System software-defined receiver.
10 * This file is part of GNSS-SDR.
11 *
12 * Copyright (C) 2010-2020 (see AUTHORS file for a list of contributors)
13 * SPDX-License-Identifier: GPL-3.0-or-later
14 *
15 * -----------------------------------------------------------------------------
16 */
17
18#ifndef GNSS_SDR_GPS_L2C_SIGNAL_REPLICA_H
19#define GNSS_SDR_GPS_L2C_SIGNAL_REPLICA_H
20
21#include <complex>
22#include <cstdint>
23#if HAS_STD_SPAN
24#include <span>
25namespace own = std;
26#else
27#include <gsl-lite/gsl-lite.hpp>
28namespace own = gsl_lite;
29#endif
30
31/** \addtogroup Algorithms_Library
32 * \{ */
33/** \addtogroup Algorithm_libs algorithms_libs
34 * \{ */
35
36
37//! Generates complex GPS L2C M code for the desired SV ID
38void gps_l2c_m_code_gen_complex(own::span<std::complex<float>> dest, uint32_t prn);
39
40//! Generates float GPS L2C M code for the desired SV ID
41void gps_l2c_m_code_gen_float(own::span<float> dest, uint32_t prn);
42
43//! Generates float GPS L2C M code with double chip rate and L component zeroed for the desired SV ID
44void gps_l2c_m_code_gen_float_cl_zeroed(own::span<float> dest, uint32_t prn);
45
46
47//! Generates complex GPS L2C M code for the desired SV ID, and sampled to specific sampling frequency
48void gps_l2c_m_code_gen_complex_sampled(own::span<std::complex<float>> dest, uint32_t prn, int32_t sampling_freq);
49
50//! Generates complex GPS L2C M code for the desired SV ID, and sampled to specific sampling frequency, optionally zeroing CL slots
51void gps_l2c_m_code_gen_complex_sampled(own::span<std::complex<float>> dest, uint32_t prn, int32_t sampling_freq, bool cl_zeroed);
52
53/** \} */
54/** \} */
55#endif // GNSS_SDR_GPS_L2C_SIGNAL_REPLICA_H
void gps_l2c_m_code_gen_complex(own::span< std::complex< float > > dest, uint32_t prn)
Generates complex GPS L2C M code for the desired SV ID.
void gps_l2c_m_code_gen_float_cl_zeroed(own::span< float > dest, uint32_t prn)
Generates float GPS L2C M code with double chip rate and L component zeroed for the desired SV ID.
void gps_l2c_m_code_gen_complex_sampled(own::span< std::complex< float > > dest, uint32_t prn, int32_t sampling_freq)
Generates complex GPS L2C M code for the desired SV ID, and sampled to specific sampling frequency.
void gps_l2c_m_code_gen_float(own::span< float > dest, uint32_t prn)
Generates float GPS L2C M code for the desired SV ID.
STL namespace.