![]() |
Mixxx
|
00001 00002 #ifndef WAVEFORMRENDERSIGNALPIXMAP_H 00003 #define WAVEFORMRENDERSIGNALPIXMAP_H 00004 00005 #include <QObject> 00006 #include <QColor> 00007 #include <QVector> 00008 #include <QList> 00009 #include <QLineF> 00010 #include <QPixmap> 00011 00012 #include "renderobject.h" 00013 00014 class QDomNode; 00015 class QPainter; 00016 class QPaintEvent; 00017 00018 00019 class ControlObjectThreadMain; 00020 class WaveformRenderer; 00021 class SoundSourceProxy; 00022 00023 class WaveformRenderSignalPixmap : public RenderObject { 00024 Q_OBJECT 00025 public: 00026 WaveformRenderSignalPixmap(const char *group, WaveformRenderer *parent); 00027 virtual ~WaveformRenderSignalPixmap(); 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 private: 00035 void updatePixmap(QVector<float> *buffer, double playPos, double rateAdjust); 00036 00037 WaveformRenderer *m_pParent; 00038 int m_iWidth, m_iHeight; 00039 int m_iLastPlaypos; 00040 QVector<QLineF> m_lines; 00041 TrackPointer m_pTrack; 00042 QColor signalColor; 00043 QPixmap m_screenPixmap; 00044 }; 00045 00046 #endif