GNU Radio's AIS Package: corr_est_cc_impl.h Source File

GNU Radio's AIS Package

corr_est_cc_impl.h
Go to the documentation of this file.
1/* -*- c++ -*- */
2/*
3 * Copyright 2013 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 3, 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., 51 Franklin Street,
20 * Boston, MA 02110-1301, USA.
21 */
22
23#ifndef INCLUDED_DIGITAL_CORR_EST_CC_IMPL_H
24#define INCLUDED_DIGITAL_CORR_EST_CC_IMPL_H
25
26#include <ais/corr_est_cc.h>
27#include <gnuradio/filter/fft_filter.h>
28
29using namespace gr::filter;
30
31namespace gr {
32 namespace ais {
33
34 class corr_est_cc_impl : public corr_est_cc
35 {
36 private:
37 pmt::pmt_t d_src_id;
38 std::vector<gr_complex> d_symbols;
39 float d_sps;
40 unsigned int d_mark_delay;
41 float d_thresh;
42 kernel::fft_filter_ccc *d_filter;
43
44 gr_complex *d_corr;
45 float *d_corr_mag;
46
47 public:
48 corr_est_cc_impl(const std::vector<gr_complex> &symbols,
49 float sps, unsigned int mark_delay,
50 float threshold=0.9);
51 ~corr_est_cc_impl();
52
53 std::vector<gr_complex> symbols() const;
54 void set_symbols(const std::vector<gr_complex> &symbols);
55
56 int work(int noutput_items,
57 gr_vector_const_void_star &input_items,
58 gr_vector_void_star &output_items);
59 };
60
61 } // namespace ais
62} // namespace gr
63
64#endif /* INCLUDED_DIGITAL_CORR_EST_CC_IMPL_H */
gr::ais::corr_est_cc_impl
Definition: corr_est_cc_impl.h:35
gr::ais::corr_est_cc_impl::work
int work(int noutput_items, gr_vector_const_void_star &input_items, gr_vector_void_star &output_items)
gr::ais::corr_est_cc_impl::symbols
std::vector< gr_complex > symbols() const
gr::ais::corr_est_cc_impl::corr_est_cc_impl
corr_est_cc_impl(const std::vector< gr_complex > &symbols, float sps, unsigned int mark_delay, float threshold=0.9)
gr::ais::corr_est_cc_impl::set_symbols
void set_symbols(const std::vector< gr_complex > &symbols)
gr::ais::corr_est_cc_impl::~corr_est_cc_impl
~corr_est_cc_impl()
gr::ais::corr_est_cc
Correlate stream with a pre-defined sequence and estimate peak.
Definition: corr_est_cc.h:86
corr_est_cc.h
gr
Definition: corr_est_cc.h:29