1 #ifndef __IPLUGPOLYSYNTH__
2 #define __IPLUGPOLYSYNTH__
4 #include "IPlug_include_in_plug_hdr.h"
5 #include "IMidiQueue.h"
6 #include "IPlugPolySynthDSP.h"
9 #define ATTACK_DEFAULT 5.
10 #define DECAY_DEFAULT 20.
11 #define RELEASE_DEFAULT 500.
13 #define TIME_MAX 5000.
15 class IPlugPolySynth
: public IPlug
19 IPlugPolySynth(IPlugInstanceInfo instanceInfo
);
23 void OnParamChange(int paramIdx
);
25 void ProcessDoubleReplacing(double** inputs
, double** outputs
, int nFrames
);
26 bool HostRequestingAboutBox();
29 bool GetKeyStatus(int key
);
30 void ProcessMidiMsg(IMidiMsg
* pMsg
);
31 void NoteOnOff(IMidiMsg
* pMsg
);
35 void NoteOnOffPoly(IMidiMsg
* pMsg
);
38 IBitmapOverlayControl
* mAboutBox
;
41 IMidiQueue mMidiQueue
;
46 bool mKeyStatus
[128]; // array of on/off for each key
50 CVoiceState mVS
[MAX_VOICES
];
58 kWidth
= GUI_WIDTH
, // width of plugin window
59 kHeight
= GUI_HEIGHT
, // height of plugin window
69 #endif //__IPLUGPOLYSYNTH__