GNSS-SDR  0.0.19
An Open Source GNSS Software Defined Receiver
channel_interface.h
Go to the documentation of this file.
1 /*!
2  * \file channel_interface.h
3  * \brief This class represents an interface to a channel GNSS block.
4  * \author Carlos Aviles, 2010. carlos.avilesr(at)googlemail.com
5  * Luis Esteve, 2011. luis(at)epsilon-formacion.com
6  *
7  * Abstract class for channel blocks. Since all its methods are virtual,
8  * this class cannot be instantiated directly, and a subclass can only be
9  * instantiated directly if all inherited pure virtual methods have been
10  * implemented by that class or a parent class.
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_CHANNEL_INTERFACE_H
24 #define GNSS_SDR_CHANNEL_INTERFACE_H
25 
26 #include "gnss_block_interface.h"
27 #include "gnss_signal.h"
28 
29 /** \addtogroup Core
30  * \{ */
31 /** \addtogroup GNSS_Block_Interfaces
32  * \{ */
33 
34 
35 /*!
36  * \brief This abstract class represents an interface to a channel GNSS block.
37  *
38  * Abstract class for channel blocks. Since all its methods are pure virtual,
39  * this class cannot be instantiated directly, and a subclass can only be
40  * instantiated directly if all inherited pure virtual methods have been
41  * implemented by that class or a parent class.
42  */
44 {
45 public:
46  virtual gr::basic_block_sptr get_left_block_trk() = 0;
47  virtual gr::basic_block_sptr get_right_block_trk() = 0;
48  virtual gr::basic_block_sptr get_left_block_acq() = 0;
49  virtual gr::basic_block_sptr get_right_block_acq() = 0;
50  virtual gr::basic_block_sptr get_left_block() = 0;
51  virtual gr::basic_block_sptr get_right_block() = 0;
52  virtual Gnss_Signal get_signal() = 0;
53  virtual void start_acquisition() = 0;
54  virtual void assist_acquisition_doppler(double Carrier_Doppler_hz) = 0;
55  virtual void stop_channel() = 0;
56  virtual void set_signal(const Gnss_Signal&) = 0;
57 };
58 
59 
60 /** \} */
61 /** \} */
62 #endif // GNSS_SDR_CHANNEL_INTERFACE_H
Implementation of the Gnss_Signal class.
This interface represents a GNSS block.
This abstract class represents an interface to a channel GNSS block.
This class represents a GNSS signal.
Definition: gnss_signal.h:37
This abstract class represents an interface to GNSS blocks.