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

Loading...
Searching...
No Matches
fir_filter_block_control.hpp
Go to the documentation of this file.
1//
2// Copyright 2020 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/config.hpp>
10#include <uhd/rfnoc/noc_block_base.hpp>
11#include <uhd/types/ranges.hpp>
12
13 namespace uhd { namespace rfnoc {
14
25 class UHD_API fir_filter_block_control : public noc_block_base
26{
27 public:
28 RFNOC_DECLARE_BLOCK(fir_filter_block_control)
29
30 static const uint16_t MINOR_COMPAT;
31 static const uint16_t MAJOR_COMPAT;
32
33 // Block registers
34 static const uint32_t REG_FIR_BLOCK_SIZE;
35 static const uint32_t REG_FIR_MAX_NUM_COEFFS_ADDR;
36 static const uint32_t REG_FIR_LOAD_COEFF_ADDR;
37 static const uint32_t REG_FIR_LOAD_COEFF_LAST_ADDR;
38 static const uint32_t REG_COMPAT_NUM_ADDR;
39
47 virtual size_t get_max_num_coefficients(const size_t chan = 0) const = 0;
48
63 virtual void set_coefficients(
64 const std::vector<int16_t>& coeffs, const size_t chan = 0) = 0;
65
72 virtual std::vector<int16_t> get_coefficients(const size_t chan = 0) const = 0;
73};
74
75}} // namespace uhd::rfnoc
uhd::rfnoc::fir_filter_block_control
Definition fir_filter_block_control.hpp:26
uhd::rfnoc::fir_filter_block_control::REG_FIR_LOAD_COEFF_ADDR
static const uint32_t REG_FIR_LOAD_COEFF_ADDR
Definition fir_filter_block_control.hpp:36
uhd::rfnoc::fir_filter_block_control::get_coefficients
virtual std::vector< int16_t > get_coefficients(const size_t chan=0) const =0
uhd::rfnoc::fir_filter_block_control::REG_FIR_BLOCK_SIZE
static const uint32_t REG_FIR_BLOCK_SIZE
Definition fir_filter_block_control.hpp:34
uhd::rfnoc::fir_filter_block_control::REG_FIR_LOAD_COEFF_LAST_ADDR
static const uint32_t REG_FIR_LOAD_COEFF_LAST_ADDR
Definition fir_filter_block_control.hpp:37
uhd::rfnoc::fir_filter_block_control::MAJOR_COMPAT
static const uint16_t MAJOR_COMPAT
Definition fir_filter_block_control.hpp:31
uhd::rfnoc::fir_filter_block_control::get_max_num_coefficients
virtual size_t get_max_num_coefficients(const size_t chan=0) const =0
uhd::rfnoc::fir_filter_block_control::set_coefficients
virtual void set_coefficients(const std::vector< int16_t > &coeffs, const size_t chan=0)=0
uhd::rfnoc::fir_filter_block_control::REG_COMPAT_NUM_ADDR
static const uint32_t REG_COMPAT_NUM_ADDR
Definition fir_filter_block_control.hpp:38
uhd::rfnoc::fir_filter_block_control::MINOR_COMPAT
static const uint16_t MINOR_COMPAT
Definition fir_filter_block_control.hpp:30
uhd::rfnoc::fir_filter_block_control::REG_FIR_MAX_NUM_COEFFS_ADDR
static const uint32_t REG_FIR_MAX_NUM_COEFFS_ADDR
Definition fir_filter_block_control.hpp:35
uhd::rfnoc::noc_block_base::noc_block_base
noc_block_base(make_args_ptr make_args)
UHD_API
#define UHD_API
Definition config.h:87
config.hpp
std
STL namespace.
uhd::rfnoc
Definition actions.hpp:24
uhd
Definition build_info.hpp:12
noc_block_base.hpp
RFNOC_DECLARE_BLOCK
#define RFNOC_DECLARE_BLOCK(CLASS_NAME)
Definition noc_block_base.hpp:22
ranges.hpp