GNSS-SDR  0.0.21
An Open Source GNSS Software Defined Receiver
beidou_b1i_dll_pll_tracking.h
Go to the documentation of this file.
1 /*!
2  * \file beidou_b1i_dll_pll_tracking.h
3  * \brief Interface of an adapter of a DLL+PLL tracking loop block
4  * for Beidou B1I to a TrackingInterface
5  * \author Sergi Segura, 2018. sergi.segura.munoz(at)gmail.com
6  *
7  * Code DLL + carrier PLL according to the algorithms described in:
8  * K.Borre, D.M.Akos, N.Bertelsen, P.Rinder, and S.H.Jensen,
9  * A Software-Defined GPS and Galileo Receiver. A Single-Frequency
10  * Approach, Birkhauser, 2007
11  *
12  * -----------------------------------------------------------------------------
13  *
14  * GNSS-SDR is a Global Navigation Satellite System software-defined receiver.
15  * This file is part of GNSS-SDR.
16  *
17  * Copyright (C) 2010-2020 (see AUTHORS file for a list of contributors)
18  * SPDX-License-Identifier: GPL-3.0-or-later
19  *
20  * -----------------------------------------------------------------------------
21  */
22 
23 #ifndef GNSS_SDR_BEIDOU_B1I_DLL_PLL_TRACKING_H
24 #define GNSS_SDR_BEIDOU_B1I_DLL_PLL_TRACKING_H
25 
26 #include "base_dll_pll_tracking.h"
27 
28 /** \addtogroup Tracking
29  * Classes for GNSS signal tracking.
30  * \{ */
31 /** \addtogroup Tracking_adapters tracking_adapters
32  * Wrap GNU Radio blocks for GNSS signal tracking with a TrackingInterface
33  * \{ */
34 
36 
37 /*!
38  * \brief This class Adapts a DLL+PLL VEML (Very Early Minus Late) tracking
39  * loop block to a TrackingInterface for BeiDou B1I signals
40  */
42 {
43 public:
44  //! Constructor
46  const std::string& role,
47  unsigned int in_streams,
48  unsigned int out_streams);
49 
50  //! Returns "BEIDOU_B1I_DLL_PLL_Tracking"
51  inline std::string implementation() override
52  {
53  return "BEIDOU_B1I_DLL_PLL_Tracking";
54  }
55 
56 private:
57  void configure_tracking_parameters(const ConfigurationInterface* configuration) override;
58  void create_tracking_block() override;
59 };
60 
61 
62 /** \} */
63 /** \} */
64 #endif // GNSS_SDR_BEIDOU_B1I_DLL_PLL_TRACKING_H
Base class providing shared logic for DLL+PLL tracking loop adapters for GNSS signals.
std::string role() override final
Get role from the Tracking block adapter.
This abstract class represents an interface to configuration parameters.
This class Adapts a DLL+PLL VEML (Very Early Minus Late) tracking loop block to a TrackingInterface f...
BeidouB1iDllPllTracking(const ConfigurationInterface *configuration, const std::string &role, unsigned int in_streams, unsigned int out_streams)
Constructor.
std::string implementation() override
Returns "BEIDOU_B1I_DLL_PLL_Tracking".
Base class providing shared logic for DLL+PLL VEML tracking adapters.