24 #ifndef GNSS_SDR_BLOCK_FACTORY_H 25 #define GNSS_SDR_BLOCK_FACTORY_H 58 std::unique_ptr<GNSSBlockInterface> GetSignalConditioner(
const ConfigurationInterface* configuration,
int ID = -1);
60 std::unique_ptr<std::vector<std::unique_ptr<GNSSBlockInterface>>> GetChannels(
const ConfigurationInterface* configuration,
71 const std::string& role,
72 unsigned int in_streams,
73 unsigned int out_streams,
77 std::unique_ptr<GNSSBlockInterface> GetChannel(
79 const std::string& signal,
83 std::unique_ptr<AcquisitionInterface> GetAcqBlock(
85 const std::string& role,
86 unsigned int in_streams,
87 unsigned int out_streams);
89 std::unique_ptr<TrackingInterface> GetTrkBlock(
91 const std::string& role,
92 unsigned int in_streams,
93 unsigned int out_streams);
95 std::unique_ptr<TelemetryDecoderInterface> GetTlmBlock(
97 const std::string& role,
98 unsigned int in_streams,
99 unsigned int out_streams);
105 #endif // GNSS_SDR_BLOCK_FACTORY_H Interface of a thread-safe std::queue.
This abstract class represents an interface to signal_source GNSS block.
This abstract class represents an interface to an acquisition GNSS block.
std::unique_ptr< GNSSBlockInterface > GetBlock(const ConfigurationInterface *configuration, const std::string &role, unsigned int in_streams, unsigned int out_streams, Concurrent_Queue< pmt::pmt_t > *queue=nullptr)
Returns the block with the required role implementation and its configuration parameters.
This abstract class represents an interface to configuration parameters.
Class that produces all kinds of GNSS blocks.
This abstract class represents an interface to a navigation GNSS block.
This abstract class represents an interface to GNSS blocks.
This abstract class represents an interface to a tracking block.