##// END OF EJS Templates
Creates sync and desync operations and adds them to the fuzzing tests
Creates sync and desync operations and adds them to the fuzzing tests

File last commit:

r1029:2928e8449245
r1238:b0db13ba024e
Show More
SpectrogramSeries.h
40 lines | 1.5 KiB | text/x-c | CLexer
#ifndef SCIQLOP_SPECTROGRAMSERIES_H
#define SCIQLOP_SPECTROGRAMSERIES_H
#include "CoreGlobal.h"
#include <Data/DataSeries.h>
/**
* @brief The SpectrogramSeries class is the implementation for a data series representing a
* spectrogram.
*
* It defines values on a x-axis and a y-axis.
*/
class SCIQLOP_CORE_EXPORT SpectrogramSeries : public DataSeries<2> {
public:
/// Ctor
explicit SpectrogramSeries(std::vector<double> xAxisData, std::vector<double> yAxisData,
std::vector<double> valuesData, const Unit &xAxisUnit,
const Unit &yAxisUnit, const Unit &valuesUnit,
double xResolution = std::numeric_limits<double>::quiet_NaN());
/// Ctor directly with the y-axis
explicit SpectrogramSeries(std::shared_ptr<ArrayData<1> > xAxisData, const Unit &xAxisUnit,
std::shared_ptr<ArrayData<2> > valuesData, const Unit &valuesUnit,
OptionalAxis yAxis,
double xResolution = std::numeric_limits<double>::quiet_NaN());
/// @sa DataSeries::clone()
std::unique_ptr<IDataSeries> clone() const override;
/// @sa DataSeries::subDataSeries()
std::shared_ptr<IDataSeries> subDataSeries(const SqpRange &range) override;
inline double xResolution() const noexcept { return m_XResolution; }
private:
double m_XResolution; ///< Resolution used on x-axis to build the spectrogram
};
#endif // SCIQLOP_SPECTROGRAMSERIES_H