GNU Radio's GSM Package
tch_f_decoder.h
Go to the documentation of this file.
1 /* -*- c++ -*- */
2 /*
3  * @file
4  * @author (C) 2015 by Roman Khassraf <rkhassraf@gmail.com>
5  * @section LICENSE
6  *
7  * Gr-gsm 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 3, or (at your option)
10  * any later version.
11  *
12  * Gr-gsm 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 gr-gsm; see the file COPYING. If not, write to
19  * the Free Software Foundation, Inc., 51 Franklin Street,
20  * Boston, MA 02110-1301, USA.
21  */
22 
23 
24 #ifndef INCLUDED_GSM_TCH_F_DECODER_H
25 #define INCLUDED_GSM_TCH_F_DECODER_H
26 
27 #include <grgsm/api.h>
28 #include <gnuradio/block.h>
29 
30 namespace gr {
31  namespace gsm {
32 
33  enum tch_mode
34  {
46  };
47 
48  /*!
49  * \brief <+description of block+>
50  * \ingroup gsm
51  *
52  */
53  class GRGSM_API tch_f_decoder : virtual public gr::block
54  {
55  public:
56  typedef boost::shared_ptr<tch_f_decoder> sptr;
57 
58  /*!
59  * \brief Return a shared_ptr to a new instance of gsm::tch_f_decoder.
60  *
61  * To avoid accidental use of raw pointers, gsm::tch_f_decoder's
62  * constructor is in a private implementation
63  * class. gsm::tch_f_decoder::make is the public interface for
64  * creating new instances.
65  */
66  static sptr make(tch_mode mode, bool boundary_check=false);
67 
68  };
69 
70  } // namespace gsm
71 } // namespace gr
72 
73 #endif /* INCLUDED_GSM_TCH_F_DECODER_H */
74 
gr::gsm::TCH_FS
@ TCH_FS
Definition: tch_f_decoder.h:43
gr::gsm::TCH_AFS7_95
@ TCH_AFS7_95
Definition: tch_f_decoder.h:37
gr::gsm::TCH_AFS12_2
@ TCH_AFS12_2
Definition: tch_f_decoder.h:35
gr::gsm::TCH_AFS5_15
@ TCH_AFS5_15
Definition: tch_f_decoder.h:41
gr::gsm::TCH_AFS5_9
@ TCH_AFS5_9
Definition: tch_f_decoder.h:40
mode
uint8_t mode
Definition: gsm_04_08.h:3
gr::gsm::tch_f_decoder::sptr
boost::shared_ptr< tch_f_decoder > sptr
Definition: tch_f_decoder.h:56
gr::gsm::tch_f_decoder
<+description of block+>
Definition: tch_f_decoder.h:53
gr::gsm::tch_mode
tch_mode
Definition: tch_f_decoder.h:33
gr::gsm::TCH_AFS6_7
@ TCH_AFS6_7
Definition: tch_f_decoder.h:39
gr::gsm::TCH_AFS4_75
@ TCH_AFS4_75
Definition: tch_f_decoder.h:42
gr
Definition: constants.h:29
GRGSM_API
#define GRGSM_API
Definition: api.h:31
gr::gsm::TCH_EFR
@ TCH_EFR
Definition: tch_f_decoder.h:44
gr::gsm::TCH_HS
@ TCH_HS
Definition: tch_f_decoder.h:45
gr::gsm::TCH_AFS7_4
@ TCH_AFS7_4
Definition: tch_f_decoder.h:38
gr::gsm::TCH_AFS10_2
@ TCH_AFS10_2
Definition: tch_f_decoder.h:36
api.h