1
0
mirror of https://github.com/gnss-sdr/gnss-sdr synced 2024-06-13 08:49:27 +00:00
gnss-sdr/src/core/interfaces/tracking_interface.h
Javier Arribas 0f80ce0159 Channel internal message queue is replaced by the asynchronous GNURadio
message system. Removing the deprecated channel internal queue and its
references. Some tests that are using the old channel queue are disabled
in this version
2016-04-15 16:33:41 +02:00

63 lines
2.2 KiB
C++

/*!
* \file tracking_interface.h
* \brief This class represents an interface to a tracking block.
* \author Carlos Aviles, 2010. carlos.avilesr(at)googlemail.com
*
* Abstract class for tracking interfaces. Since all its methods are virtual,
* this class cannot be instantiated directly, and a subclass can only be
* instantiated directly if all inherited pure virtual methods have been
* implemented by that class or a parent class.
*
* -------------------------------------------------------------------------
*
* Copyright (C) 2010-2015 (see AUTHORS file for a list of contributors)
*
* GNSS-SDR is a software defined Global Navigation
* Satellite Systems receiver
*
* This file is part of GNSS-SDR.
*
* GNSS-SDR is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* GNSS-SDR is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with GNSS-SDR. If not, see <http://www.gnu.org/licenses/>.
*
* -------------------------------------------------------------------------
*/
#ifndef GNSS_SDR_TRACKING_INTERFACE_H_
#define GNSS_SDR_TRACKING_INTERFACE_H_
#include "gnss_block_interface.h"
#include "gnss_synchro.h"
template<typename Data>class concurrent_queue;
/*!
* \brief This abstract class represents an interface to a tracking block.
*
* Abstract class for tracking interfaces. Since all its methods are virtual,
* this class cannot be instantiated directly, and a subclass can only be
* instantiated directly if all inherited pure virtual methods have been
* implemented by that class or a parent class.
*
*/
class TrackingInterface : public GNSSBlockInterface
{
public:
virtual void start_tracking() = 0;
virtual void set_gnss_synchro(Gnss_Synchro* gnss_synchro) = 0;
virtual void set_channel(unsigned int channel) = 0;
};
#endif /* GNSS_SDR_TRACKING_INTERFACE_H_ */