GNU Radio's DPD Package
stream_to_gmp_vector_impl.h
Go to the documentation of this file.
1 /* -*- c++ -*- */
2 /*
3  * Copyright 2020 Alekh Gupta
4  *
5  * SPDX-License-Identifier: GPL-3.0-or-later
6  */
7 
8 #ifndef INCLUDED_DPD_STREAM_TO_GMP_VECTOR_IMPL_H
9 #define INCLUDED_DPD_STREAM_TO_GMP_VECTOR_IMPL_H
10 
12 #include <armadillo>
13 
14 using namespace arma;
15 
16 namespace gr {
17 namespace dpd {
18 
20 {
21 private:
22  std::vector<int> d_dpd_params;
23  // consts to be assigned values in the constructor initialization list
24  const int K_a;
25  const int L_a;
26  const int K_b;
27  const int M_b;
28  const int L_b;
29  const int M;
30 
31 public:
32  stream_to_gmp_vector_impl(const std::vector<int>& dpd_params);
34 
35 
36  // Genrates shift-structured GMP vector based on the parameters
37  void gen_GMPvector(const gr_complex* const in,
38  int item,
39  int K_a,
40  int L_a,
41  int K_b,
42  int M_b,
43  int L_b,
44  cx_fcolvec& GMP_vector);
45  // Where all the action really happens
46  int work(int noutput_items,
47  gr_vector_const_void_star& input_items,
48  gr_vector_void_star& output_items);
49 };
50 
51 } // namespace dpd
52 } // namespace gr
53 
54 #endif /* INCLUDED_DPD_STREAM_TO_GMP_VECTOR_IMPL_H */
Definition: stream_to_gmp_vector_impl.h:19
Definition: gain_phase_calibrate.h:14
Converts a stream of single complex data items into corresponding GMP vectors based on GMP model para...
Definition: stream_to_gmp_vector.h:29