GNU Radio's MESA Package
SignalDetector.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_SIGNALDETECTOR_H
22#define INCLUDED_MESA_SIGNALDETECTOR_H
23
24#include <gnuradio/sync_block.h>
25#include <mesa/api.h>
26
27namespace gr {
28namespace mesa {
29
30/*!
31 * \brief <+description of block+>
32 * \ingroup mesa
33 *
34 */
35class MESA_API SignalDetector : virtual public gr::sync_block {
36public:
37 typedef std::shared_ptr<SignalDetector> sptr;
38
39 /*!
40 * \brief Return a shared_ptr to a new instance of mesa::SignalDetector.
41 *
42 * To avoid accidental use of raw pointers, mesa::SignalDetector's
43 * constructor is in a private implementation
44 * class. mesa::SignalDetector::make is the public interface for
45 * creating new instances.
46 */
47 static sptr make(int fftsize, float squelchThreshold, double minWidthHz,
48 double maxWidthHz, double radioCenterFreq, double sampleRate,
49 float holdUpSec, int framesToAvg, bool genSignalPDUs,
50 bool enableDebug, int detectionMethod);
51
52 virtual float getSquelch() const = 0;
53 virtual void setSquelch(float newValue) = 0;
54
55 virtual double getCenterFrequency() const = 0;
56 virtual void setCenterFrequency(double newValue) = 0;
57
58 virtual double getMinWidthHz() const = 0;
59 virtual void setMinWidthHz(double newValue) = 0;
60
61 virtual double getMaxWidthHz() const = 0;
62 virtual void setMaxWidthHz(double newValue) = 0;
63};
64
65} // namespace mesa
66} // namespace gr
67
68#endif /* INCLUDED_MESA_SIGNALDETECTOR_H */
#define MESA_API
Definition api.h:31
<+description of block+>
Definition SignalDetector.h:35
virtual float getSquelch() const =0
static sptr make(int fftsize, float squelchThreshold, double minWidthHz, double maxWidthHz, double radioCenterFreq, double sampleRate, float holdUpSec, int framesToAvg, bool genSignalPDUs, bool enableDebug, int detectionMethod)
Return a shared_ptr to a new instance of mesa::SignalDetector.
virtual void setMinWidthHz(double newValue)=0
virtual void setMaxWidthHz(double newValue)=0
virtual void setCenterFrequency(double newValue)=0
std::shared_ptr< SignalDetector > sptr
Definition SignalDetector.h:37
virtual double getMinWidthHz() const =0
virtual double getMaxWidthHz() const =0
virtual double getCenterFrequency() const =0
virtual void setSquelch(float newValue)=0
Definition AutoDopplerCorrect.h:28
Definition AutoDopplerCorrect.h:27