//------------------------------------------------------------------------ // Project : VST SDK // // Category : Interfaces // Filename : pluginterfaces/vst/ivstmidicontrollers.h // Created by : Steinberg, 02/2006 // Description : VST MIDI Controller Enumeration // //----------------------------------------------------------------------------- // This file is part of a Steinberg SDK. It is subject to the license terms // in the LICENSE file found in the top-level directory of this distribution // and at www.steinberg.net/sdklicenses. // No part of the SDK, including this file, may be copied, modified, propagated, // or distributed except according to the terms contained in the LICENSE file. //----------------------------------------------------------------------------- #pragma once //------------------------------------------------------------------------ namespace Steinberg { namespace Vst { //------------------------------------------------------------------------ /** Controller Numbers (MIDI) */ //------------------------------------------------------------------------ enum ControllerNumbers { kCtrlBankSelectMSB = 0, ///< Bank Select MSB kCtrlModWheel = 1, ///< Modulation Wheel kCtrlBreath = 2, ///< Breath controller kCtrlFoot = 4, ///< Foot Controller kCtrlPortaTime = 5, ///< Portamento Time kCtrlDataEntryMSB = 6, ///< Data Entry MSB kCtrlVolume = 7, ///< Channel Volume (formerly Main Volume) kCtrlBalance = 8, ///< Balance kCtrlPan = 10, ///< Pan kCtrlExpression = 11, ///< Expression kCtrlEffect1 = 12, ///< Effect Control 1 kCtrlEffect2 = 13, ///< Effect Control 2 //---General Purpose Controllers #1 to #4--- kCtrlGPC1 = 16, ///< General Purpose Controller #1 kCtrlGPC2 = 17, ///< General Purpose Controller #2 kCtrlGPC3 = 18, ///< General Purpose Controller #3 kCtrlGPC4 = 19, ///< General Purpose Controller #4 kCtrlBankSelectLSB = 32, ///< Bank Select LSB kCtrlDataEntryLSB = 38, ///< Data Entry LSB kCtrlSustainOnOff = 64, ///< Damper Pedal On/Off (Sustain) kCtrlPortaOnOff = 65, ///< Portamento On/Off kCtrlSustenutoOnOff = 66, ///< Sustenuto On/Off kCtrlSoftPedalOnOff = 67, ///< Soft Pedal On/Off kCtrlLegatoFootSwOnOff= 68, ///< Legato Footswitch On/Off kCtrlHold2OnOff = 69, ///< Hold 2 On/Off //---Sound Controllers #1 to #10--- kCtrlSoundVariation = 70, ///< Sound Variation kCtrlFilterCutoff = 71, ///< Filter Cutoff (Timbre/Harmonic Intensity) kCtrlReleaseTime = 72, ///< Release Time kCtrlAttackTime = 73, ///< Attack Time kCtrlFilterResonance= 74, ///< Filter Resonance (Brightness) kCtrlDecayTime = 75, ///< Decay Time kCtrlVibratoRate = 76, ///< Vibrato Rate kCtrlVibratoDepth = 77, ///< Vibrato Depth kCtrlVibratoDelay = 78, ///< Vibrato Delay kCtrlSoundCtrler10 = 79, ///< undefined //---General Purpose Controllers #5 to #8--- kCtrlGPC5 = 80, ///< General Purpose Controller #5 kCtrlGPC6 = 81, ///< General Purpose Controller #6 kCtrlGPC7 = 82, ///< General Purpose Controller #7 kCtrlGPC8 = 83, ///< General Purpose Controller #8 kCtrlPortaControl = 84, ///< Portamento Control //---Effect Controllers--- kCtrlEff1Depth = 91, ///< Effect 1 Depth (Reverb Send Level) kCtrlEff2Depth = 92, ///< Effect 2 Depth kCtrlEff3Depth = 93, ///< Effect 3 Depth (Chorus Send Level) kCtrlEff4Depth = 94, ///< Effect 4 Depth (Delay/Variation Level) kCtrlEff5Depth = 95, ///< Effect 5 Depth kCtrlDataIncrement = 96, ///< Data Increment (+1) kCtrlDataDecrement = 97, ///< Data Decrement (-1) kCtrlNRPNSelectLSB = 98, ///< NRPN Select LSB kCtrlNRPNSelectMSB = 99, ///< NRPN Select MSB kCtrlRPNSelectLSB = 100, ///< RPN Select LSB kCtrlRPNSelectMSB = 101, ///< RPN Select MSB //---Other Channel Mode Messages--- kCtrlAllSoundsOff = 120, ///< All Sounds Off kCtrlResetAllCtrlers = 121, ///< Reset All Controllers kCtrlLocalCtrlOnOff = 122, ///< Local Control On/Off kCtrlAllNotesOff = 123, ///< All Notes Off kCtrlOmniModeOff = 124, ///< Omni Mode Off + All Notes Off kCtrlOmniModeOn = 125, ///< Omni Mode On + All Notes Off kCtrlPolyModeOnOff = 126, ///< Poly Mode On/Off + All Sounds Off kCtrlPolyModeOn = 127, ///< Poly Mode On //---Extra-------------------------- kAfterTouch = 128, ///< After Touch kPitchBend = 129, ///< Pitch Bend kCountCtrlNumber, ///< Count of Controller Number //---Extra for kLegacyMIDICCOutEvent- kCtrlProgramChange = 130, ///< Program Change (use LegacyMIDICCOutEvent.value only) kCtrlPolyPressure = 131, ///< Poly Pressure (use LegacyMIDICCOutEvent.value for pitch and /// LegacyMIDICCOutEvent.value2 for pressure) kCtrlQuarterFrame = 132 ///< Quarter Frame ((use LegacyMIDICCOutEvent.value only) }; //------------------------------------------------------------------------ } // namespace Vst } // namespace Steinberg