GNU Radio's MESA Package
LongTermIntegrator_impl.h
Go to the documentation of this file.
1/* -*- c++ -*- */
2/*
3 * Copyright 2019 ghostop14.
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_MESA_LONGTERMINTEGRATOR_IMPL_H
22#define INCLUDED_MESA_LONGTERMINTEGRATOR_IMPL_H
23
24#include "signals_mesa.h"
26
27using namespace std;
28using namespace MesaSignals;
29#include <boost/thread/thread.hpp>
30#include <chrono>
31#include <ctime>
32
33namespace gr {
34namespace mesa {
35
37private:
38 int d_fftsize;
39 bool d_normalize;
40 double *aggBuffer;
41 boost::mutex d_mutex;
42
43 std::chrono::time_point<std::chrono::steady_clock> startTime;
44
45 boost::thread *readThread = NULL;
46 bool threadRunning;
47 bool stopThread;
48
49 void runThread();
50
51public:
52 LongTermIntegrator_impl(int fftsize, bool normalize);
54
55 virtual void reset(bool bReset);
56 void setup_rpc();
57
58 bool stop();
59
60 // Where all the action really happens
61 int work(int noutput_items, gr_vector_const_void_star &input_items,
62 gr_vector_void_star &output_items);
63};
64
65} // namespace mesa
66} // namespace gr
67
68#endif /* INCLUDED_MESA_LONGTERMINTEGRATOR_IMPL_H */
virtual void reset(bool bReset)
int work(int noutput_items, gr_vector_const_void_star &input_items, gr_vector_void_star &output_items)
LongTermIntegrator_impl(int fftsize, bool normalize)
<+description of block+>
Definition LongTermIntegrator.h:35
Definition signals_mesa.h:33
Definition AutoDopplerCorrect.h:28
Definition AutoDopplerCorrect.h:27