GNU Radio's LTE Package
pss_tagger_cc_impl.h
Go to the documentation of this file.
1/* -*- c++ -*- */
2/*
3 * Copyright 2013 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_PSS_TAGGER_CC_IMPL_H
22#define INCLUDED_LTE_PSS_TAGGER_CC_IMPL_H
23
24#include <lte/pss_tagger_cc.h>
25
26namespace gr {
27 namespace lte {
28
30 {
31 private:
32 int d_fftl;
33 int d_cpl;
34 int d_cpl0;
35 int d_slotl;
36 int d_half_frame_start;
37 int d_N_id_2;
38 int d_slot_num;
39 bool d_is_locked;
40 pmt::pmt_t d_key;
41 pmt::pmt_t d_id_key;
42 pmt::pmt_t d_tag_id;
43
44 void handle_msg_lock(pmt::pmt_t msg);
45 void handle_msg_half_frame_start(pmt::pmt_t msg);
46 void handle_msg_N_id_2(pmt::pmt_t msg);
47
48 public:
49 pss_tagger_cc_impl(int fftl, std::string& name);
51
52 // Where all the action really happens
53 int work(int noutput_items,
54 gr_vector_const_void_star &input_items,
55 gr_vector_void_star &output_items);
56
57 void set_half_frame_start(int start){d_half_frame_start = start;}
58 void set_N_id_2(int nid2){d_N_id_2 = nid2;}
59 void lock(){d_is_locked = true;}
60 void unlock(){d_is_locked = false;}
61 };
62
63 } // namespace lte
64} // namespace gr
65
66#endif /* INCLUDED_LTE_PSS_TAGGER_CC_IMPL_H */
67
Definition: pss_tagger_cc_impl.h:30
void lock()
Definition: pss_tagger_cc_impl.h:59
int work(int noutput_items, gr_vector_const_void_star &input_items, gr_vector_void_star &output_items)
void set_N_id_2(int nid2)
Definition: pss_tagger_cc_impl.h:58
void unlock()
Definition: pss_tagger_cc_impl.h:60
void set_half_frame_start(int start)
Definition: pss_tagger_cc_impl.h:57
pss_tagger_cc_impl(int fftl, std::string &name)
<+description of block+>
Definition: pss_tagger_cc.h:37
Definition: bch_crc_check_ant_chooser_bb.h:28