GNSS-SDR  0.0.19
An Open Source GNSS Software Defined Receiver
Public Member Functions | List of all members
Channel Class Reference

This class represents a GNSS channel. It wraps an AcquisitionInterface, a TrackingInterface and a TelemetryDecoderInterface, and handles their interaction through a Finite State Machine. More...

#include <channel.h>

Inheritance diagram for Channel:
ChannelInterface GNSSBlockInterface

Public Member Functions

 Channel (const ConfigurationInterface *configuration, uint32_t channel, std::shared_ptr< AcquisitionInterface > acq, std::shared_ptr< TrackingInterface > trk, std::shared_ptr< TelemetryDecoderInterface > nav, const std::string &role, const std::string &signal_str, Concurrent_Queue< pmt::pmt_t > *queue)
 Constructor. More...
 
 ~Channel ()=default
 Destructor. More...
 
void connect (gr::top_block_sptr top_block) override
 Connects the tracking block to the top_block and to the telemetry. More...
 
void disconnect (gr::top_block_sptr top_block) override
 
gr::basic_block_sptr get_left_block () override
 
gr::basic_block_sptr get_left_block_trk () override
 Gets the GNU Radio tracking block input pointer. More...
 
gr::basic_block_sptr get_right_block_trk () override
 Gets the GNU Radio tracking block output pointer. More...
 
gr::basic_block_sptr get_left_block_acq () override
 Gets the GNU Radio acquisition block input pointer. More...
 
gr::basic_block_sptr get_right_block_acq () override
 Gets the GNU Radio acquisition block output pointer. More...
 
gr::basic_block_sptr get_right_block () override
 Gets the GNU Radio channel block output pointer. More...
 
std::string role () override
 
std::string implementation () override
 Returns "Channel". More...
 
size_t item_size () override
 
Gnss_Signal get_signal () override
 
void start_acquisition () override
 Start the State Machine. More...
 
void stop_channel () override
 Stop the State Machine. More...
 
void set_signal (const Gnss_Signal &gnss_signal_) override
 Sets the channel GNSS signal. More...
 
void assist_acquisition_doppler (double Carrier_Doppler_hz) override
 
std::shared_ptr< AcquisitionInterfaceacquisition () const
 
std::shared_ptr< TrackingInterfacetracking () const
 
std::shared_ptr< TelemetryDecoderInterfacetelemetry () const
 
- Public Member Functions inherited from GNSSBlockInterface
virtual gr::basic_block_sptr get_left_block (int RF_channel)
 
virtual gr::basic_block_sptr get_right_block (int RF_channel)
 
virtual void start ()
 Start the flow of samples if needed. More...
 

Detailed Description

This class represents a GNSS channel. It wraps an AcquisitionInterface, a TrackingInterface and a TelemetryDecoderInterface, and handles their interaction through a Finite State Machine.

Definition at line 60 of file channel.h.

Constructor & Destructor Documentation

◆ Channel()

Channel::Channel ( const ConfigurationInterface configuration,
uint32_t  channel,
std::shared_ptr< AcquisitionInterface acq,
std::shared_ptr< TrackingInterface trk,
std::shared_ptr< TelemetryDecoderInterface nav,
const std::string &  role,
const std::string &  signal_str,
Concurrent_Queue< pmt::pmt_t > *  queue 
)

Constructor.

◆ ~Channel()

Channel::~Channel ( )
default

Destructor.

Member Function Documentation

◆ connect()

void Channel::connect ( gr::top_block_sptr  top_block)
overridevirtual

Connects the tracking block to the top_block and to the telemetry.

Implements GNSSBlockInterface.

◆ get_left_block_acq()

gr::basic_block_sptr Channel::get_left_block_acq ( )
overridevirtual

Gets the GNU Radio acquisition block input pointer.

Implements ChannelInterface.

◆ get_left_block_trk()

gr::basic_block_sptr Channel::get_left_block_trk ( )
overridevirtual

Gets the GNU Radio tracking block input pointer.

Implements ChannelInterface.

◆ get_right_block()

gr::basic_block_sptr Channel::get_right_block ( )
overridevirtual

Gets the GNU Radio channel block output pointer.

Implements ChannelInterface.

◆ get_right_block_acq()

gr::basic_block_sptr Channel::get_right_block_acq ( )
overridevirtual

Gets the GNU Radio acquisition block output pointer.

Implements ChannelInterface.

◆ get_right_block_trk()

gr::basic_block_sptr Channel::get_right_block_trk ( )
overridevirtual

Gets the GNU Radio tracking block output pointer.

Implements ChannelInterface.

◆ implementation()

std::string Channel::implementation ( )
inlineoverridevirtual

Returns "Channel".

Implements GNSSBlockInterface.

Definition at line 85 of file channel.h.

◆ set_signal()

void Channel::set_signal ( const Gnss_Signal gnss_signal_)
overridevirtual

Sets the channel GNSS signal.

Implements ChannelInterface.

◆ start_acquisition()

void Channel::start_acquisition ( )
overridevirtual

Start the State Machine.

Implements ChannelInterface.

◆ stop_channel()

void Channel::stop_channel ( )
overridevirtual

Stop the State Machine.

Implements ChannelInterface.


The documentation for this class was generated from the following file: