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

Public Member Functions

 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)
virtual int32_t getNumChannels ()=0
virtual int8_t modEncoderAction (ModelStackWithThreeMainThings *modelStack, int8_t offset, uint8_t whichModEncoder)
ModControllabletoModControllable () override
ArpeggiatorBasegetArp ()
ArpeggiatorSettingsgetArpSettings (InstrumentClip *clip=NULL)
virtual void noteOnPostArp (int32_t noteCodePostArp, ArpNote *arpNote, int32_t noteIndex)
virtual void noteOffPostArp (int32_t noteCodePostArp)
void writeArpeggiatorToFile (Serializer &writer)
Public Member Functions inherited from Drum
 Drum (DrumType newType)
virtual 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)=0
virtual void noteOff (ModelStackWithThreeMainThings *modelStack, int32_t velocity=kDefaultLiftValue)=0
virtual Error loadAllSamples (bool mayActuallyReadFiles)
virtual void prepareDrumToHaveNoActiveClip ()
virtual void writeToFile (Serializer &writer, bool savingSong, ParamManager *paramManager)=0
virtual Error readFromFile (Deserializer &reader, Song *song, Clip *clip, int32_t readAutomationUpToPos)=0
virtual void drumWontBeRenderedForAWhile ()
virtual void getName (char *buffer)=0
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)
virtual void expressionEvent (int32_t newValue, int32_t expressionDimension)
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 polyphonicExpressionEventOnChannelOrNote (int32_t newValue, int32_t expressionDimension, int32_t channelOrNoteNumber, MIDICharacteristic whichCharacteristic)
virtual void monophonicExpressionEvent (int32_t newValue, int32_t expressionDimension)

Public Attributes

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

Protected Member Functions

void modChange (ModelStackWithThreeMainThings *modelStack, int32_t offset, int8_t *encoderOffset, uint8_t *value, int32_t numValues)

Private Attributes

bool state_ = false

Additional Inherited Members

Protected Attributes inherited from ModControllable
deluge::modulation::params::Kind unpatchedParamKind_

Member Function Documentation

◆ allowNoteTails()

bool NonAudioDrum::allowNoteTails ( ModelStackWithSoundFlags * modelStack,
bool disregardSampleLoop = false )
inlinefinalvirtual

Implements Voiced.

◆ anyNoteIsOn()

bool NonAudioDrum::anyNoteIsOn ( )
inlinefinalvirtual

Implements Voiced.

◆ hasActiveVoices()

bool NonAudioDrum::hasActiveVoices ( ) const
inlinenodiscardfinalvirtual

Implements Voiced.

◆ killAllVoices()

void NonAudioDrum::killAllVoices ( )
overridevirtual

Implements Voiced.

◆ toModControllable()

ModControllable * NonAudioDrum::toModControllable ( )
inlineoverridevirtual

Reimplemented from Drum.


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