GNU Radio 3.3.0 C++ API
|
00001 #ifndef SPECTRUM_UPDATE_EVENTS_H 00002 #define SPECTRUM_UPDATE_EVENTS_H 00003 00004 #include <stdint.h> 00005 #include <QEvent> 00006 #include <QString> 00007 #include <complex> 00008 #include <highResTimeFunctions.h> 00009 00010 class SpectrumUpdateEvent:public QEvent{ 00011 00012 public: 00013 SpectrumUpdateEvent(const std::complex<float>* fftPoints, 00014 const uint64_t numFFTDataPoints, 00015 const double* realTimeDomainPoints, 00016 const double* imagTimeDomainPoints, 00017 const uint64_t numTimeDomainDataPoints, 00018 const timespec dataTimestamp, 00019 const bool repeatDataFlag, 00020 const bool lastOfMultipleUpdateFlag, 00021 const timespec generatedTimestamp, 00022 const int droppedFFTFrames); 00023 00024 ~SpectrumUpdateEvent(); 00025 00026 const std::complex<float>* getFFTPoints() const; 00027 const double* getRealTimeDomainPoints() const; 00028 const double* getImagTimeDomainPoints() const; 00029 uint64_t getNumFFTDataPoints() const; 00030 uint64_t getNumTimeDomainDataPoints() const; 00031 timespec getDataTimestamp() const; 00032 bool getRepeatDataFlag() const; 00033 bool getLastOfMultipleUpdateFlag() const; 00034 timespec getEventGeneratedTimestamp() const; 00035 int getDroppedFFTFrames() const; 00036 00037 protected: 00038 00039 private: 00040 std::complex<float>* _fftPoints; 00041 double* _realDataTimeDomainPoints; 00042 double* _imagDataTimeDomainPoints; 00043 uint64_t _numFFTDataPoints; 00044 uint64_t _numTimeDomainDataPoints; 00045 timespec _dataTimestamp; 00046 bool _repeatDataFlag; 00047 bool _lastOfMultipleUpdateFlag; 00048 timespec _eventGeneratedTimestamp; 00049 int _droppedFFTFrames; 00050 }; 00051 00052 class SpectrumWindowCaptionEvent:public QEvent{ 00053 public: 00054 SpectrumWindowCaptionEvent(const QString&); 00055 ~SpectrumWindowCaptionEvent(); 00056 QString getLabel(); 00057 00058 protected: 00059 00060 private: 00061 QString _labelString; 00062 }; 00063 00064 class SpectrumWindowResetEvent:public QEvent{ 00065 public: 00066 SpectrumWindowResetEvent(); 00067 ~SpectrumWindowResetEvent(); 00068 00069 protected: 00070 00071 private: 00072 00073 }; 00074 00075 class SpectrumFrequencyRangeEvent:public QEvent{ 00076 public: 00077 SpectrumFrequencyRangeEvent(const double, const double, const double); 00078 ~SpectrumFrequencyRangeEvent(); 00079 double GetCenterFrequency()const; 00080 double GetStartFrequency()const; 00081 double GetStopFrequency()const; 00082 00083 protected: 00084 00085 private: 00086 double _centerFrequency; 00087 double _startFrequency; 00088 double _stopFrequency; 00089 }; 00090 00091 00092 #endif /* SPECTRUM_UPDATE_EVENTS_H */