![]() |
Mixxx
|
00001 #ifndef POSITIONSCRATCHCONTROLLER_H 00002 #define POSITIONSCRATCHCONTROLLER_H 00003 00004 #include <QObject> 00005 #include <QString> 00006 00007 #include "controlobject.h" 00008 00009 class VelocityController; 00010 00011 class PositionScratchController : public QObject { 00012 public: 00013 PositionScratchController(const char* pGroup); 00014 virtual ~PositionScratchController(); 00015 00016 void process(double currentSample, bool paused, int iBufferSize); 00017 bool isEnabled(); 00018 double getRate(); 00019 void notifySeek(double currentSample); 00020 00021 private: 00022 const QString m_group; 00023 ControlObject* m_pScratchEnable; 00024 ControlObject* m_pScratchPosition; 00025 VelocityController* m_pVelocityController; 00026 bool m_bScratching; 00027 bool m_bEnableInertia; 00028 double m_dLastPlaypos; 00029 double m_dPositionDeltaSum; 00030 int m_iScratchTime; 00031 double m_dRate; 00032 }; 00033 00034 #endif /* POSITIONSCRATCHCONTROLLER_H */