1 #pragma once
2 
3 #include "engine/engineobject.h"
4 #include "preferences/usersettings.h"
5 
6 class ControlPotmeter;
7 class ControlProxy;
8 
9 class EngineDelay : public EngineObject {
10     Q_OBJECT
11   public:
12     EngineDelay(const QString& group, const ConfigKey& delayControl, bool bPersist = true);
13     virtual ~EngineDelay();
14 
15     void process(CSAMPLE* pInOut, const int iBufferSize);
16 
17     void setDelay(double newDelay);
18 
19   public slots:
20     void slotDelayChanged();
21 
22   private:
23     ControlPotmeter* m_pDelayPot;
24     ControlProxy* m_pSampleRate;
25     CSAMPLE* m_pDelayBuffer;
26     int m_iDelayPos;
27     int m_iDelay;
28 };
29