GNU Radio's GR-AIR-MODES Package
air_modes_slicer.h
Go to the documentation of this file.
1 /*
2 # Copyright 2010 Nick Foster
3 #
4 # This file is part of gr-air-modes
5 #
6 # gr-air-modes is free software; you can redistribute it and/or modify
7 # it under the terms of the GNU General Public License as published by
8 # the Free Software Foundation; either version 3, or (at your option)
9 # any later version.
10 #
11 # gr-air-modes is distributed in the hope that it will be useful,
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 # GNU General Public License for more details.
15 #
16 # You should have received a copy of the GNU General Public License
17 # along with gr-air-modes; see the file COPYING. If not, write to
18 # the Free Software Foundation, Inc., 51 Franklin Street,
19 # Boston, MA 02110-1301, USA.
20 #
21 */
22 
23 #ifndef INCLUDED_AIR_MODES_slicer_H
24 #define INCLUDED_AIR_MODES_slicer_H
25 
26 #include <gnuradio/sync_block.h>
27 #include <gnuradio/msg_queue.h>
28 #include <air_modes_api.h>
29 
30 class air_modes_slicer;
31 typedef boost::shared_ptr<air_modes_slicer> air_modes_slicer_sptr;
32 
33 AIR_MODES_API air_modes_slicer_sptr air_make_modes_slicer(int channel_rate, gr::msg_queue::sptr queue);
34 
35 /*!
36  * \brief mode select slicer detection
37  * \ingroup block
38  */
39 class AIR_MODES_API air_modes_slicer : public gr::sync_block
40 {
41 private:
42  friend air_modes_slicer_sptr air_make_modes_slicer(int channel_rate, gr::msg_queue::sptr queue);
43  air_modes_slicer(int channel_rate, gr::msg_queue::sptr queue);
44 
45  int d_check_width;
46  int d_chip_rate;
47  int d_samples_per_chip;
48  int d_samples_per_symbol;
49  gr::msg_queue::sptr d_queue;
50  std::ostringstream d_payload;
51 
52 public:
53  int work (int noutput_items,
54  gr_vector_const_void_star &input_items,
55  gr_vector_void_star &output_items);
56 };
57 
58 #endif /* INCLUDED_AIR_MODES_slicer_H */
#define AIR_MODES_API
Definition: air_modes_api.h:30
AIR_MODES_API air_modes_slicer_sptr air_make_modes_slicer(int channel_rate, gr::msg_queue::sptr queue)
mode select slicer detection
Definition: air_modes_slicer.h:39