GNSS-SDR 0.0.21
An Open Source GNSS Software Defined Receiver
Loading...
Searching...
No Matches
tracking_interface.h
Go to the documentation of this file.
1/*!
2 * \file tracking_interface.h
3 * \brief This class represents an interface to a tracking block.
4 * \author Carlos Aviles, 2010. carlos.avilesr(at)googlemail.com
5 *
6 * Abstract class for tracking interfaces. Since all its methods are virtual,
7 * this class cannot be instantiated directly, and a subclass can only be
8 * instantiated directly if all inherited pure virtual methods have been
9 * implemented by that class or a parent class.
10 *
11 * -----------------------------------------------------------------------------
12 *
13 * GNSS-SDR is a Global Navigation Satellite System software-defined receiver.
14 * This file is part of GNSS-SDR.
15 *
16 * Copyright (C) 2010-2020 (see AUTHORS file for a list of contributors)
17 * SPDX-License-Identifier: GPL-3.0-or-later
18 *
19 * -----------------------------------------------------------------------------
20 */
21
22
23#ifndef GNSS_SDR_TRACKING_INTERFACE_H
24#define GNSS_SDR_TRACKING_INTERFACE_H
25
27#include "gnss_synchro.h"
28
29/** \addtogroup Core
30 * \{ */
31/** \addtogroup GNSS_Block_Interfaces
32 * \{ */
33
34
35template <typename Data>
37
38/*!
39 * \brief This abstract class represents an interface to a tracking block.
40 *
41 * Abstract class for tracking interfaces. Since all its methods are virtual,
42 * this class cannot be instantiated directly, and a subclass can only be
43 * instantiated directly if all inherited pure virtual methods have been
44 * implemented by that class or a parent class.
45 *
46 */
48{
49public:
50 virtual void start_tracking() = 0;
51 virtual void stop_tracking() = 0;
52 virtual void set_gnss_synchro(Gnss_Synchro* gnss_synchro) = 0;
53 virtual void set_channel(unsigned int channel) = 0;
54};
55
56
57/** \} */
58/** \} */
59#endif // GNSS_SDR_TRACKING_INTERFACE_H
This class implements a thread-safe std::queue.
This abstract class represents an interface to GNSS blocks.
This is the class that contains the information that is shared by the processing blocks.
This abstract class represents an interface to a tracking block.
This interface represents a GNSS block.
Interface of the Gnss_Synchro class.