GNU Radio Radar Toolbox
 All Classes Namespaces Files Functions Variables Typedefs Macros
estimator_fsk.h
Go to the documentation of this file.
1 /* -*- c++ -*- */
2 /*
3  * Copyright 2014 Communications Engineering Lab, 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_RADAR_ESTIMATOR_FSK_H
22 #define INCLUDED_RADAR_ESTIMATOR_FSK_H
23 
24 #include <radar/api.h>
25 #include <gnuradio/block.h>
26 
27 namespace gr {
28  namespace radar {
29 
30  /*!
31  * \brief This block estimates the range with peaks given from a FSK spectrum. Needed identifiers (symbols) are 'frequency' and 'phase'. The velocity is calculated with the 'frequency' information and the doppler formula. The phase of the doppler peaks are used to estimate the range. Output identifier are 'range' and 'velocity'. If push_power is true the information about the power of the peaks is pushed through. This can be used for estimating the RCS of an object.
32  *
33  * \param center_freq Center frequency
34  * \param delta_freq Frequency difference of high and low frequency
35  * \param push_power Toggle pushing through information about power of peaks
36  *
37  * \ingroup radar
38  *
39  */
40  class RADAR_API estimator_fsk : virtual public gr::block
41  {
42  public:
43  typedef boost::shared_ptr<estimator_fsk> sptr;
44 
45  /*!
46  * \brief Return a shared_ptr to a new instance of radar::estimator_fsk.
47  *
48  * To avoid accidental use of raw pointers, radar::estimator_fsk's
49  * constructor is in a private implementation
50  * class. radar::estimator_fsk::make is the public interface for
51  * creating new instances.
52  */
53  static sptr make(float center_freq, float delta_freq, bool push_power=false);
54  };
55 
56  } // namespace radar
57 } // namespace gr
58 
59 #endif /* INCLUDED_RADAR_ESTIMATOR_FSK_H */
60 
This block estimates the range with peaks given from a FSK spectrum. Needed identifiers (symbols) are...
Definition: estimator_fsk.h:40
boost::shared_ptr< estimator_fsk > sptr
Definition: estimator_fsk.h:43
#define RADAR_API
Definition: api.h:30