Mixxx

/home/maxime/Projets/Mixxx/1.10/mixxx/src/engine/quantizecontrol.h

Go to the documentation of this file.
00001 #ifndef QUANTIZECONTROL_H
00002 #define QUANTIZECONTROL_H
00003 
00004 #include <QObject>
00005 
00006 #include "configobject.h"
00007 #include "engine/enginecontrol.h"
00008 
00009 #include "trackinfoobject.h"
00010 #include "track/beats.h"
00011 
00012 class ControlObject;
00013 class ControlPushButton;
00014 class ControlObjectThread;
00015 
00016 class QuantizeControl : public EngineControl {
00017     Q_OBJECT
00018   public:
00019     QuantizeControl(const char* pGroup, ConfigObject<ConfigValue>* pConfig);
00020     virtual ~QuantizeControl();
00021 
00022     double process(const double dRate,
00023                    const double currentSample,
00024                    const double totalSamples,
00025                    const int iBufferSize);
00026 
00027   public slots:
00028     virtual void trackLoaded(TrackPointer pTrack);
00029     virtual void trackUnloaded(TrackPointer pTrack);
00030 
00031   private slots:
00032     void slotBeatsUpdated();
00033 
00034   private:
00035     ControlPushButton* m_pCOQuantizeEnabled;
00036     ControlObject* m_pCONextBeat;
00037     ControlObject* m_pCOPrevBeat;
00038     ControlObject* m_pCOClosestBeat;
00039 
00040     TrackPointer m_pTrack;
00041     BeatsPointer m_pBeats;
00042 };
00043 
00044 #endif // QUANTIZECONTROL_H
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines