OpenHantek
Loading...
Searching...
No Matches
spectrumgenerator.h
Go to the documentation of this file.
1// SPDX-License-Identifier: GPL-2.0-or-later
2
3#pragma once
4
5#include <vector>
6
7#include <QMutex>
8#include <QThread>
9#include <memory>
10
11#include <fftw3.h>
12
13#include "analysissettings.h"
14#include "dsosamples.h"
15#include "ppresult.h"
16#include "utils/printutils.h"
17
18#include "processor.h"
19
20class DsoSettings;
21struct DsoSettingsScope;
22
27
28 public:
29 SpectrumGenerator( const DsoSettingsScope *scope, const DsoSettingsAnalysis *postprocessing );
30 ~SpectrumGenerator() override;
31
32 private:
36 std::vector< double > window;
37 fftw_plan fftPlan_R2HC = nullptr;
38 fftw_plan fftPlan_HC2R = nullptr;
39 QString note;
40 const QString &calculateNote( double frequency );
41 // Processor interface
42 void process( PPresult *data ) override;
43};
Holds the settings of the program.
Definition dsosettings.h:20
Post processing results.
Definition ppresult.h:43
Definition processor.h:7
const DsoSettingsAnalysis * analysis
Definition spectrumgenerator.h:34
QString note
Definition spectrumgenerator.h:39
const DsoSettingsScope * scope
Definition spectrumgenerator.h:33
fftw_plan fftPlan_R2HC
Definition spectrumgenerator.h:37
fftw_plan fftPlan_HC2R
Definition spectrumgenerator.h:38
const QString & calculateNote(double frequency)
Definition spectrumgenerator.cpp:439
SpectrumGenerator(const DsoSettingsScope *scope, const DsoSettingsAnalysis *postprocessing)
Analyzes the data from the dso.
Definition spectrumgenerator.cpp:21
std::vector< double > window
storage for the tapering window
Definition spectrumgenerator.h:36
void process(PPresult *data) override
Definition spectrumgenerator.cpp:57
Dso::WindowFunction previousWindowFunction
The previously used dft window function.
Definition spectrumgenerator.h:35
~SpectrumGenerator() override
Definition spectrumgenerator.cpp:28
WindowFunction
The supported window functions. These are needed for spectrum analysis and are applied to the sample ...
Definition analysissettings.h:15
Definition analysissettings.h:43
Holds the settings for the oscilloscope.
Definition scopesettings.h:100