Houston, we have a trunk.
[debian/gnuradio] / gr-error-correcting-codes / src / lib / gr_metrics_decode_viterbi_full_block.i
1 /* -*- c++ -*- */
2 /*
3  * Copyright 2006 Free Software Foundation, Inc.
4  * 
5  * This file is part of GNU Radio
6  * 
7  * GNU Radio is free software; you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as published by
9  * the Free Software Foundation; either version 2, or (at your option)
10  * any later version.
11  * 
12  * GNU Radio is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15  * GNU General Public License for more details.
16  * 
17  * You should have received a copy of the GNU General Public License
18  * along with GNU Radio; see the file COPYING.  If not, write to
19  * the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
20  * Boston, MA 02111-1307, USA.
21  */
22
23 GR_SWIG_BLOCK_MAGIC(gr,metrics_decode_viterbi_full_block);
24
25 // corrected "class NAME" statement, which uses slightly different NAMEs
26
27 typedef boost::shared_ptr<gr_metrics_decode_viterbi_full_block>
28 gr_metrics_decode_viterbi_full_block_feedback_sptr;
29
30 LOCAL_GR_SWIG_BLOCK_MAGIC(gr,metrics_decode_viterbi_full_block_feedback);
31
32 gr_metrics_decode_viterbi_full_block_sptr
33 gr_make_metrics_decode_viterbi_full_block
34 (int sample_precision,
35  int frame_size_bits,
36  int n_code_inputs,
37  int n_code_outputs,
38  const std::vector<int> &code_generator,
39  bool do_termination,
40  int start_memory_state,
41  int end_memory_state);
42
43 gr_metrics_decode_viterbi_full_block_feedback_sptr
44 gr_make_metrics_decode_viterbi_full_block_feedback
45 (int sample_precision,
46  int frame_size_bits,
47  int n_code_inputs,
48  int n_code_outputs,
49  const std::vector<int> &code_generator,
50  const std::vector<int> &code_feedback,
51  bool do_termination,
52  int start_memory_state,
53  int end_memory_state);
54
55 class gr_metrics_decode_viterbi_full_block : public gr_block
56 {
57   gr_metrics_decode_viterbi_full_block
58   (int sample_precision,
59    int frame_size_bits,
60    int n_code_inputs,
61    int n_code_outputs,
62    const std::vector<int> &code_generator,
63    bool do_termination,
64    int start_memory_state,
65    int end_memory_state);
66
67   gr_metrics_decode_viterbi_full_block
68   (int sample_precision,
69    int frame_size_bits,
70    int n_code_inputs,
71    int n_code_outputs,
72    const std::vector<int> &code_generator,
73    const std::vector<int> &code_feedback,
74    bool do_termination,
75    int start_memory_state,
76    int end_memory_state);
77 };