GNU Radio's LTE Package
mimo_pss_freq_sync_impl.h
Go to the documentation of this file.
1/* -*- c++ -*- */
2/*
3 * Copyright 2014 Communications Engineering Lab (CEL) / Karlsruhe Institute of Technology (KIT)
4 *
5 * This is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation; either version 3, or (at your option)
8 * any later version.
9 *
10 * This software is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with this software; see the file COPYING. If not, write to
17 * the Free Software Foundation, Inc., 51 Franklin Street,
18 * Boston, MA 02110-1301, USA.
19 */
20
21#ifndef INCLUDED_LTE_MIMO_PSS_FREQ_SYNC_IMPL_H
22#define INCLUDED_LTE_MIMO_PSS_FREQ_SYNC_IMPL_H
23
25
26namespace gr {
27 namespace lte {
28
30 {
31 private:
32 int d_fftl;
33 int d_rxant;
34 int d_N_id_2;
35 int d_sampl;
36 float d_f_est;
37 uint64_t d_pss_pos;
38 uint64_t d_f_count;
39
40 gr_complex *d_pssX;
41 gr_complex **d_buf_pss;
42
43 pmt::pmt_t d_id_key;
44 boost::shared_ptr<gr::analog::sig_source_c> d_sig;
45
46 void mult_memcpy(gr_complex** &out,
47 const gr_vector_const_void_star &in,
48 int out_pos, int in_pos,
49 int multi, int n);
50 void calc_freq_off();
51
52
53 public:
54 mimo_pss_freq_sync_impl(int fftl, int rxant, boost::shared_ptr<gr::analog::sig_source_c> &sig);
56
57
58 // Where all the action really happens
59 int work(int noutput_items,
60 gr_vector_const_void_star &input_items,
61 gr_vector_void_star &output_items);
62 };
63
64 } // namespace lte
65} // namespace gr
66
67#endif /* INCLUDED_LTE_MIMO_PSS_FREQ_SYNC_IMPL_H */
68
Definition: mimo_pss_freq_sync_impl.h:30
mimo_pss_freq_sync_impl(int fftl, int rxant, boost::shared_ptr< gr::analog::sig_source_c > &sig)
int work(int noutput_items, gr_vector_const_void_star &input_items, gr_vector_void_star &output_items)
<+description of block+>
Definition: mimo_pss_freq_sync.h:38
Definition: bch_crc_check_ant_chooser_bb.h:28