GNSS-SDR  0.0.19
An Open Source GNSS Software Defined Receiver
beidou_b3i_signal_replica.h
Go to the documentation of this file.
1 /*!
2  * \file beidou_b3i_signal_replica.h
3  * \brief This file implements various functions for BeiDou B3I signal replica
4  * generation
5  * \author Damian Miralles, 2019. dmiralles2009@gmail.com
6  *
7  *
8  * -----------------------------------------------------------------------------
9  *
10  * GNSS-SDR is a Global Navigation Satellite System software-defined receiver.
11  * This file is part of GNSS-SDR.
12  *
13  * Copyright (C) 2010-2020 (see AUTHORS file for a list of contributors)
14  * SPDX-License-Identifier: GPL-3.0-or-later
15  *
16  * -----------------------------------------------------------------------------
17  */
18 
19 #ifndef GNSS_SDR_BEIDOU_B3I_SIGNAL_REPLICA_H
20 #define GNSS_SDR_BEIDOU_B3I_SIGNAL_REPLICA_H
21 
22 #include <complex>
23 #include <cstdint>
24 #if HAS_STD_SPAN
25 #include <span>
26 namespace own = std;
27 #else
28 #include <gsl/gsl-lite.hpp>
29 namespace own = gsl;
30 #endif
31 
32 /** \addtogroup Algorithms_Library
33  * \{ */
34 /** \addtogroup Algorithm_libs algorithms_libs
35  * \{ */
36 
37 
38 //! Generates int BeiDou B3I code for the desired SV ID and code shift
39 void beidou_b3i_code_gen_int(own::span<int> dest, int32_t prn, uint32_t chip_shift);
40 
41 //! Generates float BeiDou B3I code for the desired SV ID and code shift
42 void beidou_b3i_code_gen_float(own::span<float> dest, int32_t prn, uint32_t chip_shift);
43 
44 //! Generates complex BeiDou B3I code for the desired SV ID and code shift
45 void beidou_b3i_code_gen_complex(own::span<std::complex<float>> dest, int32_t prn, uint32_t chip_shift);
46 
47 //! Generates complex BeiDou B3I code for the desired SV ID and code shift, and sampled to specific sampling frequency
48 void beidou_b3i_code_gen_complex_sampled(own::span<std::complex<float>> dest, uint32_t prn, int sampling_freq, uint32_t chip_shift);
49 
50 
51 /** \} */
52 /** \} */
53 #endif // GNSS_SDR_BEIDOU_B3I_SIGNAL_REPLICA_H
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.
STL namespace.
void beidou_b3i_code_gen_complex_sampled(own::span< std::complex< float >> dest, uint32_t prn, int sampling_freq, 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_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_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.