OpenHantek
spectrumgenerator.h
1 // SPDX-License-Identifier: GPL-2.0+
2 
3 #pragma once
4 
5 #include <vector>
6 
7 #include <QMutex>
8 #include <QThread>
9 #include <memory>
10 
11 #include "ppresult.h"
12 #include "dsosamples.h"
13 #include "utils/printutils.h"
14 #include "postprocessingsettings.h"
15 
16 #include "processor.h"
17 
18 class DsoSettings;
19 struct DsoSettingsScope;
20 
24 class SpectrumGenerator : public Processor {
25  public:
26  SpectrumGenerator(const DsoSettingsScope* scope, const DsoSettingsPostProcessing* postprocessing);
27  virtual ~SpectrumGenerator();
28  virtual void process(PPresult *data) override;
29 
30  private:
31  const DsoSettingsScope* scope;
32  const DsoSettingsPostProcessing* postprocessing;
33  unsigned int lastRecordLength = 0;
34  Dso::WindowFunction lastWindow = (Dso::WindowFunction)-1;
35  double *lastWindowBuffer = nullptr;
36 };
Definition: postprocessingsettings.h:45
Holds the settings of the program.
Definition: settings.h:16
SpectrumGenerator(const DsoSettingsScope *scope, const DsoSettingsPostProcessing *postprocessing)
Analyzes the data from the dso.
Definition: spectrumgenerator.cpp:19
Definition: processor.h:5
virtual void process(PPresult *data) override
Definition: spectrumgenerator.cpp:26
Holds the settings for the oscilloscope.
Definition: scopesettings.h:77
Analyzes the data from the dso. Calculates the spectrum and various data about the signal and saves t...
Definition: spectrumgenerator.h:24
Post processing results.
Definition: ppresult.h:31