46 lines
1.1 KiB
C++
46 lines
1.1 KiB
C++
#pragma once
|
|
#include "../Axis/AbsAxis.h"
|
|
#include "../GlobalTypes.h"
|
|
#include <QTime>
|
|
|
|
|
|
|
|
|
|
namespace YSG {
|
|
class TimeAxis;
|
|
struct AudioFrequentPrivate;
|
|
class LIB_DECL AudioFrequent : public RenderAble {
|
|
public:
|
|
Q_Ptr2(AudioFrequent)
|
|
void giveData(int tick, double data);
|
|
PROP(int, timePointSize)
|
|
PROP(TimeAxis*, timeAxis)
|
|
PROP(Axis*, valueAxis)
|
|
PROP(Range, keyRange)
|
|
PROP(QColor, color)
|
|
struct Builder;
|
|
};
|
|
struct AudioFrequent_Prop {
|
|
int timePointSize = 100;
|
|
TimeAxis *timeAxis;
|
|
Axis *valueAxis{};
|
|
Range keyRange = {0, 20};
|
|
QColor color = Qt::yellow;
|
|
};
|
|
struct LIB_DECL AudioFrequent::Builder : AudioFrequent_Prop {
|
|
PROP_B(int, timePointSize)
|
|
PROP_B(TimeAxis*, timeAxis)
|
|
PROP_B(Axis*, valueAxis)
|
|
PROP_B(Range, keyRange)
|
|
PROP_B(QColor, color)
|
|
SETTER(QString, layerName, "plottable")
|
|
Builder(TimeAxis* timeAxis, Axis* valueAxis);
|
|
AudioFrequent* build();
|
|
protected:
|
|
Axis* valueAxis;
|
|
TimeAxis* timeAxis{};
|
|
Plot *plot{};
|
|
};
|
|
}
|
|
|