Deluge Firmware 1.3.0
Build date: 2025.04.16
Loading...
Searching...
No Matches
CVEngine Class Reference
Collaboration diagram for CVEngine:

Public Member Functions

void init ()
 
void sendNote (bool on, uint8_t channel, int16_t note=-32768)
 
void setGateType (uint8_t whichGate, GateType value)
 
void setCVVoltsPerOctave (uint8_t channel, uint8_t value)
 
void setCVTranspose (uint8_t channel, int32_t semitones, int32_t cents)
 
void setCVPitchBend (uint8_t channel, int32_t value, bool outputToo=true)
 
int32_t calculateVoltage (int32_t note, uint8_t channel)
 
void physicallySwitchGate (int32_t channel)
 
void cvOutUpdated ()
 
void analogOutTick ()
 
void playbackBegun ()
 
void playbackEnded ()
 
void updateClockOutput ()
 toggles clock, does not physically update until updateGateOutputs called
 
void updateRunOutput ()
 
bool isTriggerClockOutputEnabled ()
 
void updateGateOutputs ()
 physically send all gate outs if any output pending
 
bool isGatePending () const
 
bool isRunPending () const
 
bool isClockPending () const
 
bool isAnythingButRunPending () const
 
bool isAnythingPending () const
 
void sendVoltageOut (uint8_t channel, uint16_t voltage)
 
bool isNoteOn (int32_t channel, int32_t note)
 

Public Attributes

GateChannel gateChannels [NUM_GATE_CHANNELS]
 
CVChannel cvChannels [NUM_PHYSICAL_CV_CHANNELS]
 
uint8_t minGateOffTime
 
bool clockState
 
uint32_t mostRecentSwitchOffTimeOfPendingNoteOn
 

Private Member Functions

void recalculateCVChannelVoltage (uint8_t channel)
 
void switchGateOff (int32_t channel)
 
void switchGateOn (int32_t channel, int32_t doInstantlyIfPossible=false)
 

Private Attributes

bool cvOutPending {false}
 signifies there's a gate that can't go until the cv is output
 
bool gateOutputPending {false}
 gate 1-4 as synths or drums
 
bool asapGateOutputPending
 gate 3 as a run signal
 
bool clockOutputPending
 gate 4 as a clock signal
 

The documentation for this class was generated from the following files: