GNU Radio Radar Toolbox
os_cfar_2d_vc_impl.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_OS_CFAR_2D_VC_IMPL_H
22#define INCLUDED_RADAR_OS_CFAR_2D_VC_IMPL_H
23
24#include <radar/os_cfar_2d_vc.h>
25
26namespace gr {
27namespace radar {
28
30{
31private:
32 // Nothing to declare in this block.
33
34protected:
35 int calculate_output_stream_length(const gr_vector_int& ninput_items);
36
37public:
39 std::vector<int> samp_compare,
40 std::vector<int> samp_protect,
41 float rel_threshold,
42 float mult_threshold,
43 const std::string& len_key);
45 void set_rel_threshold(float inp);
46 void set_mult_threshold(float inp);
47 void set_samp_compare(std::vector<int> inp);
48 void set_samp_protect(std::vector<int> inp);
49
50 int d_vlen;
51 std::vector<int> d_samp_compare, d_samp_protect;
53 std::vector<float> d_x, d_y, d_power;
54
55 pmt::pmt_t d_port_id;
56 std::vector<tag_t> d_tags;
58
59 // Where all the action really happens
60 int work(int noutput_items,
61 gr_vector_int& ninput_items,
62 gr_vector_const_void_star& input_items,
63 gr_vector_void_star& output_items);
64};
65
66} // namespace radar
67} // namespace gr
68
69#endif /* INCLUDED_RADAR_OS_CFAR_2D_VC_IMPL_H */
Definition os_cfar_2d_vc_impl.h:30
int work(int noutput_items, gr_vector_int &ninput_items, gr_vector_const_void_star &input_items, gr_vector_void_star &output_items)
void set_samp_compare(std::vector< int > inp)
float d_rel_threshold
Definition os_cfar_2d_vc_impl.h:52
pmt::pmt_t d_port_id
Definition os_cfar_2d_vc_impl.h:55
void set_rel_threshold(float inp)
pmt::pmt_t d_value
Definition os_cfar_2d_vc_impl.h:57
pmt::pmt_t d_py
Definition os_cfar_2d_vc_impl.h:57
void set_mult_threshold(float inp)
int d_vlen
Definition os_cfar_2d_vc_impl.h:50
std::vector< float > d_power
Definition os_cfar_2d_vc_impl.h:53
std::vector< tag_t > d_tags
Definition os_cfar_2d_vc_impl.h:56
int calculate_output_stream_length(const gr_vector_int &ninput_items)
os_cfar_2d_vc_impl(int vlen, std::vector< int > samp_compare, std::vector< int > samp_protect, float rel_threshold, float mult_threshold, const std::string &len_key)
pmt::pmt_t d_px
Definition os_cfar_2d_vc_impl.h:57
std::vector< int > d_samp_compare
Definition os_cfar_2d_vc_impl.h:51
pmt::pmt_t d_ppower
Definition os_cfar_2d_vc_impl.h:57
std::vector< float > d_y
Definition os_cfar_2d_vc_impl.h:53
std::vector< int > d_samp_protect
Definition os_cfar_2d_vc_impl.h:51
float d_mult_threshold
Definition os_cfar_2d_vc_impl.h:52
pmt::pmt_t d_ptimestamp
Definition os_cfar_2d_vc_impl.h:57
std::vector< float > d_x
Definition os_cfar_2d_vc_impl.h:53
void set_samp_protect(std::vector< int > inp)
This block estimates peaks of a given matrix. A matrix can be represented as a combination of vectors...
Definition os_cfar_2d_vc.h:56
Definition crop_matrix_vcvc.h:28