GNSS-SDR  0.0.13
An Open Source GNSS Software Defined Receiver
beidou_b3i_signal_processing.h
Go to the documentation of this file.
1 /*!
2  * \file beidou_b3i_signal_processing.h
3  * \brief This class implements various functions for BeiDou B3I signals
4  * \author Damian Miralles, 2019. dmiralles2009@gmail.com
5  *
6  *
7  * -----------------------------------------------------------------------------
8  *
9  * Copyright (C) 2010-2020 (see AUTHORS file for a list of contributors)
10  *
11  * GNSS-SDR is a software defined Global Navigation
12  * Satellite Systems receiver
13  *
14  * This file is part of GNSS-SDR.
15  *
16  * SPDX-License-Identifier: GPL-3.0-or-later
17  *
18  * -----------------------------------------------------------------------------
19  */
20 
21 #ifndef GNSS_SDR_BEIDOU_B3I_SIGNAL_PROCESSING_H
22 #define GNSS_SDR_BEIDOU_B3I_SIGNAL_PROCESSING_H
23 
24 #include <complex>
25 #include <cstdint>
26 #if HAS_STD_SPAN
27 #include <span>
28 namespace own = std;
29 #else
30 #include <gsl/gsl>
31 namespace own = gsl;
32 #endif
33 
34 
35 //! Generates int BeiDou B3I code for the desired SV ID and code shift
36 void beidou_b3i_code_gen_int(own::span<int> _dest, int32_t _prn, uint32_t _chip_shift);
37 
38 //! Generates float BeiDou B3I code for the desired SV ID and code shift
39 void beidou_b3i_code_gen_float(own::span<float> _dest, int32_t _prn, uint32_t _chip_shift);
40 
41 //! Generates complex BeiDou B3I code for the desired SV ID and code shift, and sampled to specific sampling frequency
42 void beidou_b3i_code_gen_complex(own::span<std::complex<float>> _dest, int32_t _prn, uint32_t _chip_shift);
43 
44 //! Generates N complex BeiDou B3I codes for the desired SV ID and code shift
45 void beidou_b3i_code_gen_complex_sampled(own::span<std::complex<float>> _dest, uint32_t _prn, int _fs, uint32_t _chip_shift, uint32_t _ncodes);
46 
47 //! Generates complex BeiDou B3I code for the desired SV ID and code shift
48 void beidou_b3i_code_gen_complex_sampled(own::span<std::complex<float>> _dest, uint32_t _prn, int _fs, uint32_t _chip_shift);
49 
50 #endif // GNSS_SDR_BEIDOU_B3I_SIGNAL_PROCESSING_H
STL namespace.
void beidou_b3i_code_gen_int(own::span< int > _dest, int32_t _prn, uint32_t _chip_shift)
Generates int BeiDou B3I code for the desired SV ID and code shift.
void beidou_b3i_code_gen_float(own::span< float > _dest, int32_t _prn, uint32_t _chip_shift)
Generates float BeiDou B3I code for the desired SV ID and code shift.
void beidou_b3i_code_gen_complex(own::span< std::complex< float >> _dest, int32_t _prn, uint32_t _chip_shift)
Generates complex BeiDou B3I code for the desired SV ID and code shift, and sampled to specific sampl...
void beidou_b3i_code_gen_complex_sampled(own::span< std::complex< float >> _dest, uint32_t _prn, int _fs, uint32_t _chip_shift, uint32_t _ncodes)
Generates N complex BeiDou B3I codes for the desired SV ID and code shift.