GNSS-SDR  0.0.13
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  * Copyright (C) 2010-2020 (see AUTHORS file for a list of contributors)
15  *
16  * GNSS-SDR is a software defined Global Navigation
17  * Satellite Systems receiver
18  *
19  * This file is part of GNSS-SDR.
20  *
21  * SPDX-License-Identifier: GPL-3.0-or-later
22  *
23  * -----------------------------------------------------------------------------
24  */
25 
26 #ifndef GNSS_SDR_CHANNEL_INTERFACE_H
27 #define GNSS_SDR_CHANNEL_INTERFACE_H
28 
29 #include "gnss_block_interface.h"
30 #include "gnss_signal.h"
31 
32 /*!
33  * \brief This abstract class represents an interface to a channel GNSS block.
34  *
35  * Abstract class for channel blocks. Since all its methods are pure virtual,
36  * this class cannot be instantiated directly, and a subclass can only be
37  * instantiated directly if all inherited pure virtual methods have been
38  * implemented by that class or a parent class.
39  */
41 {
42 public:
43  virtual gr::basic_block_sptr get_left_block_trk() = 0;
44  virtual gr::basic_block_sptr get_left_block_acq() = 0;
45  virtual gr::basic_block_sptr get_left_block() = 0;
46  virtual gr::basic_block_sptr get_right_block() = 0;
47  virtual Gnss_Signal get_signal() const = 0;
48  virtual void start_acquisition() = 0;
49  virtual void assist_acquisition_doppler(double Carrier_Doppler_hz) = 0;
50  virtual void stop_channel() = 0;
51  virtual void set_signal(const Gnss_Signal&) = 0;
52 };
53 
54 #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:33
This abstract class represents an interface to GNSS blocks.