![]() |
Mixxx
|
00001 00002 #ifndef WAVEFORMRENDERSIGNAL_H 00003 #define WAVEFORMRENDERSIGNAL_H 00004 00005 #include <QObject> 00006 #include <QColor> 00007 #include <QVector> 00008 #include <QList> 00009 #include <QLineF> 00010 00011 #include "renderobject.h" 00012 00013 00014 class QDomNode; 00015 class QPainter; 00016 class QPaintEvent; 00017 00018 00019 class ControlObjectThreadMain; 00020 class WaveformRenderer; 00021 class SoundSourceProxy; 00022 00023 class WaveformRenderSignal : public RenderObject { 00024 Q_OBJECT 00025 public: 00026 WaveformRenderSignal(const char *group, WaveformRenderer *parent); 00027 virtual ~WaveformRenderSignal(); 00028 00029 void resize(int w, int h); 00030 void setup(QDomNode node); 00031 void draw(QPainter *pPainter, QPaintEvent *event, QVector<float> *buffer, double playPos, double rateAdjust); 00032 void newTrack(TrackPointer pTrack); 00033 00034 public slots: 00035 void slotUpdateGain(double gain); 00036 00037 private: 00038 float m_fGain; 00039 00040 WaveformRenderer *m_pParent; 00041 ControlObjectThreadMain *m_pGain; 00042 00043 int m_iWidth, m_iHeight; 00044 QVector<QLineF> m_lines; 00045 TrackPointer m_pTrack; 00046 QColor signalColor; 00047 }; 00048 00049 #endif