GNSS-SDR  0.0.21
An Open Source GNSS Software Defined Receiver
galileo_e1_dll_pll_veml_tracking.h
Go to the documentation of this file.
1 /*!
2  * \file galileo_e1_dll_pll_veml_tracking.h
3  * \brief Adapts a DLL+PLL VEML (Very Early Minus Late) tracking loop block
4  * to a TrackingInterface for Galileo E1 signals
5  * \author Luis Esteve, 2012. luis(at)epsilon-formacion.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_GALILEO_E1_DLL_PLL_VEML_TRACKING_H
24 #define GNSS_SDR_GALILEO_E1_DLL_PLL_VEML_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 Galileo E1 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 "Galileo_E1_DLL_PLL_VEML_Tracking"
51  inline std::string implementation() override
52  {
53  return "Galileo_E1_DLL_PLL_VEML_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_GALILEO_E1_DLL_PLL_VEML_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.
std::string implementation() override
Returns "Galileo_E1_DLL_PLL_VEML_Tracking".
GalileoE1DllPllVemlTracking(const ConfigurationInterface *configuration, const std::string &role, unsigned int in_streams, unsigned int out_streams)
Constructor.
This class Adapts a DLL+PLL VEML (Very Early Minus Late) tracking loop block to a TrackingInterface f...
Base class providing shared logic for DLL+PLL VEML tracking adapters.