Deluge Firmware 1.3.0
Build date: 2025.08.14
Loading...
Searching...
No Matches
MIDIDrum Class Referencefinal
Inheritance diagram for MIDIDrum:
Collaboration diagram for MIDIDrum:

Public Member Functions

void noteOn (ModelStackWithThreeMainThings *modelStack, uint8_t velocity, int16_t const *mpeValues, int32_t fromMIDIChannel=MIDI_CHANNEL_NONE, uint32_t sampleSyncLength=0, int32_t ticksLate=0, uint32_t samplesLate=0) override
void noteOff (ModelStackWithThreeMainThings *modelStack, int32_t velocity=kDefaultLiftValue) override
void noteOnPostArp (int32_t noteCodePostArp, ArpNote *arpNote, int32_t noteIndex) override
void noteOffPostArp (int32_t noteCodePostArp) override
void writeToFile (Serializer &writer, bool savingSong, ParamManager *paramManager) override
Error readFromFile (Deserializer &reader, Song *song, Clip *clip, int32_t readAutomationUpToPos) override
void getName (char *buffer) override
int32_t getNumChannels () override
void killAllVoices () override
int8_t modEncoderAction (ModelStackWithThreeMainThings *modelStack, int8_t offset, uint8_t whichModEncoder) override
void expressionEvent (int32_t newValue, int32_t expressionDimension) override
void polyphonicExpressionEventOnChannelOrNote (int32_t newValue, int32_t expressionDimension, int32_t channelOrNoteNumber, MIDICharacteristic whichCharacteristic) override
Public Member Functions inherited from NonAudioDrum
 NonAudioDrum (DrumType newType)
bool anyNoteIsOn () final
bool hasActiveVoices () const final
void killAllVoices () override
bool allowNoteTails (ModelStackWithSoundFlags *modelStack, bool disregardSampleLoop=false) final
bool readDrumTagFromFile (Deserializer &reader, char const *tagName)
ModControllabletoModControllable () override
ArpeggiatorBasegetArp ()
ArpeggiatorSettingsgetArpSettings (InstrumentClip *clip=NULL)
void writeArpeggiatorToFile (Serializer &writer)
Public Member Functions inherited from Drum
 Drum (DrumType newType)
virtual Error loadAllSamples (bool mayActuallyReadFiles)
virtual void prepareDrumToHaveNoActiveClip ()
virtual void drumWontBeRenderedForAWhile ()
virtual void choke (ModelStackWithSoundFlags *modelStack)
void writeMIDICommandsToFile (Serializer &writer)
bool readDrumTagFromFile (Deserializer &reader, char const *tagName)
void recordNoteOnEarly (int32_t velocity, bool noteTailsAllowed)
void expressionEventPossiblyToRecord (ModelStackWithTimelineCounter *modelStack, int16_t newValue, int32_t expressionDimension, int32_t level)
void getCombinedExpressionInputs (int16_t *combined)
Public Member Functions inherited from Voiced
virtual void prepareForHibernation ()
Public Member Functions inherited from ModControllable
virtual bool modEncoderButtonAction (uint8_t whichModEncoder, bool on, ModelStackWithThreeMainThings *modelStack)
virtual void modButtonAction (uint8_t whichModButton, bool on, ParamManagerForTimeline *paramManager)
virtual ModelStackWithAutoParamgetParamFromModEncoder (int32_t whichModEncoder, ModelStackWithThreeMainThings *modelStack, bool allowCreation=true)
virtual ModelStackWithAutoParamgetParamFromMIDIKnob (MIDIKnob &knob, ModelStackWithThreeMainThings *modelStack)
 Check that autoParam isn't NULL, after calling this.
virtual uint8_t * getModKnobMode ()
virtual bool isKit ()
virtual bool isSong ()
virtual bool isEditingComp ()
virtual bool valueChangedEnoughToMatter (int32_t old_value, int32_t new_value, deluge::modulation::params::Kind kind, uint32_t paramID)
virtual int32_t getKnobPosForNonExistentParam (int32_t whichModEncoder, ModelStackWithAutoParam *modelStack)
virtual ActionResult modEncoderActionForNonExistentParam (int32_t offset, int32_t whichModEncoder, ModelStackWithAutoParam *modelStack)
virtual void monophonicExpressionEvent (int32_t newValue, int32_t expressionDimension)

Public Attributes

uint8_t note
int8_t noteEncoderCurrentOffset
Public Attributes inherited from NonAudioDrum
uint8_t lastVelocity
uint8_t channel
int8_t channelEncoderCurrentOffset = 0
Public Attributes inherited from Drum
Kitkit
const DrumType type
bool noteRowAssignedTemp
uint8_t earlyNoteVelocity
bool earlyNoteStillActive
bool auditioned
uint8_t lastMIDIChannelAuditioned
int8_t lastExpressionInputsReceived [2][kNumExpressionDimensions]
Drumnext
LearnedMIDI midiInput
LearnedMIDI muteMIDICommand
ArpeggiatorForDrum arpeggiator
ArpeggiatorSettings arpSettings

Additional Inherited Members

Protected Member Functions inherited from NonAudioDrum
void modChange (ModelStackWithThreeMainThings *modelStack, int32_t offset, int8_t *encoderOffset, uint8_t *value, int32_t numValues)
Protected Attributes inherited from ModControllable
deluge::modulation::params::Kind unpatchedParamKind_

Member Function Documentation

◆ expressionEvent()

void MIDIDrum::expressionEvent ( int32_t newValue,
int32_t expressionDimension )
overridevirtual

Reimplemented from Drum.

◆ getName()

void MIDIDrum::getName ( char * buffer)
overridevirtual

Implements Drum.

◆ getNumChannels()

int32_t MIDIDrum::getNumChannels ( )
inlineoverridevirtual

Implements NonAudioDrum.

◆ killAllVoices()

void MIDIDrum::killAllVoices ( )
overridevirtual

Implements Voiced.

◆ modEncoderAction()

int8_t MIDIDrum::modEncoderAction ( ModelStackWithThreeMainThings * modelStack,
int8_t offset,
uint8_t whichModEncoder )
overridevirtual

Reimplemented from NonAudioDrum.

◆ noteOff()

void MIDIDrum::noteOff ( ModelStackWithThreeMainThings * modelStack,
int32_t velocity = kDefaultLiftValue )
overridevirtual

Implements Drum.

◆ noteOffPostArp()

void MIDIDrum::noteOffPostArp ( int32_t noteCodePostArp)
overridevirtual

Reimplemented from NonAudioDrum.

◆ noteOn()

void MIDIDrum::noteOn ( ModelStackWithThreeMainThings * modelStack,
uint8_t velocity,
int16_t const * mpeValues,
int32_t fromMIDIChannel = MIDI_CHANNEL_NONE,
uint32_t sampleSyncLength = 0,
int32_t ticksLate = 0,
uint32_t samplesLate = 0 )
overridevirtual

Implements Drum.

◆ noteOnPostArp()

void MIDIDrum::noteOnPostArp ( int32_t noteCodePostArp,
ArpNote * arpNote,
int32_t noteIndex )
overridevirtual

Reimplemented from NonAudioDrum.

◆ polyphonicExpressionEventOnChannelOrNote()

void MIDIDrum::polyphonicExpressionEventOnChannelOrNote ( int32_t newValue,
int32_t expressionDimension,
int32_t channelOrNoteNumber,
MIDICharacteristic whichCharacteristic )
overridevirtual

Reimplemented from ModControllable.

◆ readFromFile()

Error MIDIDrum::readFromFile ( Deserializer & reader,
Song * song,
Clip * clip,
int32_t readAutomationUpToPos )
overridevirtual

Implements Drum.

◆ writeToFile()

void MIDIDrum::writeToFile ( Serializer & writer,
bool savingSong,
ParamManager * paramManager )
overridevirtual

Implements Drum.


The documentation for this class was generated from the following files:
  • src/deluge/model/drum/midi_drum.h
  • src/deluge/model/drum/midi_drum.cpp