USRP Hardware Driver and USRP Manual: filter_node.hpp Source File

| USRP Hardware Driver and USRP Manual Version: 4.9.0.makepkg-0-g9ec1f582 UHD and USRP Manual |

Loading...
Searching...
No Matches
filter_node.hpp
Go to the documentation of this file.
1//
2// Copyright 2019 Ettus Research, a National Instruments Brand
3//
4// SPDX-License-Identifier: GPL-3.0-or-later
5//
6
7#pragma once
8
9#include <uhd/types/filters.hpp>
10#include <string>
11#include <vector>
12
13namespace uhd { namespace rfnoc { namespace detail {
14
15// TODO: Support static filters
16// TODO: User-defined (external?) filter
19 class filter_node
20{
21public:
22 using sptr = std::shared_ptr<filter_node>;
23
24 virtual ~filter_node() = default;
25
26 virtual std::vector<std::string> get_rx_filter_names(const size_t chan) const = 0;
27 virtual uhd::filter_info_base::sptr get_rx_filter(
28 const std::string& name, const size_t chan) = 0;
29 virtual void set_rx_filter(const std::string& name,
30 uhd::filter_info_base::sptr filter,
31 const size_t chan) = 0;
32
33 virtual std::vector<std::string> get_tx_filter_names(const size_t chan) const = 0;
34 virtual uhd::filter_info_base::sptr get_tx_filter(
35 const std::string& name, const size_t chan) = 0;
36 virtual void set_tx_filter(const std::string& name,
37 uhd::filter_info_base::sptr filter,
38 const size_t chan) = 0;
39};
40
41}}} /* namespace uhd::rfnoc::detail */
uhd::filter_info_base::sptr
std::shared_ptr< filter_info_base > sptr
Definition filters.hpp:24
uhd::rfnoc::detail::filter_node
Definition filter_node.hpp:20
uhd::rfnoc::detail::filter_node::~filter_node
virtual ~filter_node()=default
uhd::rfnoc::detail::filter_node::get_rx_filter
virtual uhd::filter_info_base::sptr get_rx_filter(const std::string &name, const size_t chan)=0
uhd::rfnoc::detail::filter_node::get_tx_filter_names
virtual std::vector< std::string > get_tx_filter_names(const size_t chan) const =0
uhd::rfnoc::detail::filter_node::set_rx_filter
virtual void set_rx_filter(const std::string &name, uhd::filter_info_base::sptr filter, const size_t chan)=0
uhd::rfnoc::detail::filter_node::get_rx_filter_names
virtual std::vector< std::string > get_rx_filter_names(const size_t chan) const =0
uhd::rfnoc::detail::filter_node::set_tx_filter
virtual void set_tx_filter(const std::string &name, uhd::filter_info_base::sptr filter, const size_t chan)=0
uhd::rfnoc::detail::filter_node::get_tx_filter
virtual uhd::filter_info_base::sptr get_tx_filter(const std::string &name, const size_t chan)=0
uhd::rfnoc::detail::filter_node::sptr
std::shared_ptr< filter_node > sptr
Definition filter_node.hpp:22
filters.hpp
uhd::rfnoc::detail
Definition graph.hpp:16
uhd::rfnoc
Definition actions.hpp:24
uhd
Definition build_info.hpp:12