cwIoPresetSelApp.cpp : Fix formatting problems.

This commit is contained in:
kevin 2023-01-30 19:35:28 -05:00
parent 7444044c05
commit 59647d4e58

View File

@ -89,12 +89,12 @@ namespace cw
kAMtrOut1Id, kAMtrOut1Id,
/* /*
kHalfPedalPedalVel, kHalfPedalPedalVel,
kHalfPedalDelayMs, kHalfPedalDelayMs,
kHalfPedalPitch, kHalfPedalPitch,
kHalfPedalVel, kHalfPedalVel,
kHalfPedalDurMs, kHalfPedalDurMs,
kHalfPedalDnDelayMs, kHalfPedalDnDelayMs,
*/ */
kLogId, kLogId,
@ -175,14 +175,14 @@ namespace cw
{ kPanelDivId, kInsertBtnId, "insertBtnId" }, { kPanelDivId, kInsertBtnId, "insertBtnId" },
{ kPanelDivId, kDeleteBtnId, "deleteBtnId" }, { kPanelDivId, kDeleteBtnId, "deleteBtnId" },
/* /*
{ kPanelDivId, kHalfPedalPedalVel, "halfPedalPedalVelId" }, { kPanelDivId, kHalfPedalPedalVel, "halfPedalPedalVelId" },
{ kPanelDivId, kHalfPedalDelayMs, "halfPedalDelayMsId" }, { kPanelDivId, kHalfPedalDelayMs, "halfPedalDelayMsId" },
{ kPanelDivId, kHalfPedalPitch, "halfPedalPitchId" }, { kPanelDivId, kHalfPedalPitch, "halfPedalPitchId" },
{ kPanelDivId, kHalfPedalVel, "halfPedalVelId" }, { kPanelDivId, kHalfPedalVel, "halfPedalVelId" },
{ kPanelDivId, kHalfPedalDurMs, "halfPedalDurMsId" }, { kPanelDivId, kHalfPedalDurMs, "halfPedalDurMsId" },
{ kPanelDivId, kHalfPedalDnDelayMs, "halfPedalDnDelayMsId" }, { kPanelDivId, kHalfPedalDnDelayMs, "halfPedalDnDelayMsId" },
*/ */
{ kPanelDivId, kPvWndSmpCntId, "pvWndSmpCntId" }, { kPanelDivId, kPvWndSmpCntId, "pvWndSmpCntId" },
{ kPanelDivId, kSdBypassId, "sdBypassId" }, { kPanelDivId, kSdBypassId, "sdBypassId" },
@ -417,7 +417,7 @@ namespace cw
app->insertLoc = kInvalidId; // initialize 'insertLoc' to be invalid app->insertLoc = kInvalidId; // initialize 'insertLoc' to be invalid
errLabel: errLabel:
return rc; return rc;
} }
@ -729,13 +729,13 @@ namespace cw
if( !time::isZero(app->beg_play_timestamp) && !app->useLiveMidiFl ) if( !time::isZero(app->beg_play_timestamp) && !app->useLiveMidiFl )
{ {
// seek the player to the requested loc // seek the player to the requested loc
if((rc = midi_record_play::seek( app->mrpH, app->beg_play_timestamp )) != kOkRC ) if((rc = midi_record_play::seek( app->mrpH, app->beg_play_timestamp )) != kOkRC )
{ {
rc = cwLogError(rc,"MIDI seek failed."); rc = cwLogError(rc,"MIDI seek failed.");
goto errLabel; goto errLabel;
} }
rewindFl = false; rewindFl = false;
} }
// apply the preset which is active at the start time // apply the preset which is active at the start time
@ -919,7 +919,6 @@ namespace cw
{ {
rc_t rc = kOkRC; rc_t rc = kOkRC;
// if
if( fragEndLoc == kInvalidId ) if( fragEndLoc == kInvalidId )
{ {
// get the endLoc associated with this fragment // get the endLoc associated with this fragment
@ -962,13 +961,12 @@ namespace cw
rc_t _update_frag_ui(app_t* app, unsigned fragId ) rc_t _update_frag_ui(app_t* app, unsigned fragId )
{ {
// Notes: // Notes:
// uiChanId = fragId for panel values // uiChanId = fragId for panel values or uiChanId = preset_index for preset values
// or uiChanId = preset_index for preset values
rc_t rc = kOkRC; rc_t rc = kOkRC;
unsigned endLoc; unsigned endLoc;
// get the endLoc for this fragment // Get the endLoc for this fragment
if((rc = _frag_id_to_endloc(app, fragId, endLoc )) == kOkRC ) if((rc = _frag_id_to_endloc(app, fragId, endLoc )) == kOkRC )
{ {
unsigned uValue; unsigned uValue;
@ -1093,20 +1091,20 @@ namespace cw
break; break;
case preset_sel::kBegPlayLocVarId: case preset_sel::kBegPlayLocVarId:
{ {
unsigned endPlayLoc; unsigned endPlayLoc;
get_value( app->psH, blob->fragId, preset_sel::kEndPlayLocVarId, blob->presetId, endPlayLoc ); get_value( app->psH, blob->fragId, preset_sel::kEndPlayLocVarId, blob->presetId, endPlayLoc );
_enable_frag_play_btn( app, blob, value, endPlayLoc ); _enable_frag_play_btn( app, blob, value, endPlayLoc );
} }
break; break;
case preset_sel::kEndPlayLocVarId: case preset_sel::kEndPlayLocVarId:
{ {
unsigned begPlayLoc; unsigned begPlayLoc;
get_value( app->psH, blob->fragId, preset_sel::kBegPlayLocVarId, blob->presetId, begPlayLoc ); get_value( app->psH, blob->fragId, preset_sel::kBegPlayLocVarId, blob->presetId, begPlayLoc );
_enable_frag_play_btn( app, blob, begPlayLoc, value ); _enable_frag_play_btn( app, blob, begPlayLoc, value );
} }
break; break;
} }
errLabel: errLabel:
@ -1199,7 +1197,7 @@ namespace cw
// Make the fragment panel clickable // Make the fragment panel clickable
io::uiSetClickable( app->ioH, fragPanelUuId); io::uiSetClickable( app->ioH, fragPanelUuId);
// Set the fragment panel order // Set the fragment panel order.
io::uiSetOrderKey( app->ioH, fragPanelUuId, endLoc ); io::uiSetOrderKey( app->ioH, fragPanelUuId, endLoc );
// Set the fragment beg/end play range // Set the fragment beg/end play range
@ -1666,7 +1664,7 @@ namespace cw
if(f != nullptr ) if(f != nullptr )
_update_frag_ui(app, f->fragId ); _update_frag_ui(app, f->fragId );
errLabel: errLabel:
if( rc != kOkRC ) if( rc != kOkRC )
rc = cwLogError(rc,"Fragment delete failed."); rc = cwLogError(rc,"Fragment delete failed.");
@ -1715,7 +1713,7 @@ namespace cw
rc = cwLogError(rc,"Master value set failed on varId:%i %s.%s.",varId,cwStringNullGuard(inst_label),cwStringNullGuard(var_label)); rc = cwLogError(rc,"Master value set failed on varId:%i %s.%s.",varId,cwStringNullGuard(inst_label),cwStringNullGuard(var_label));
else else
if((rc = io_flow::set_variable_value( app->ioFlowH, flow_cross::kAllDestId, inst_label, var_label, flow::kAnyChIdx, (dsp::real_t)value )) != kOkRC ) if((rc = io_flow::set_variable_value( app->ioFlowH, flow_cross::kAllDestId, inst_label, var_label, flow::kAnyChIdx, (dsp::real_t)value )) != kOkRC )
rc = cwLogError(rc,"Master value send failed on %s.%s.",cwStringNullGuard(inst_label),cwStringNullGuard(var_label)); rc = cwLogError(rc,"Master value send failed on %s.%s.",cwStringNullGuard(inst_label),cwStringNullGuard(var_label));
return rc; return rc;
} }
@ -1728,12 +1726,12 @@ namespace cw
for(unsigned i=0; i<n; ++i) for(unsigned i=0; i<n; ++i)
{ {
unsigned uuid = io::uiFindElementUuId( app->ioH, baseUiAppId+i ); unsigned uuid = io::uiFindElementUuId( app->ioH, baseUiAppId+i );
double lin_val = agd->meterA[i]; double lin_val = agd->meterA[i];
unsigned meter_value = (unsigned)(lin_val < 1e-5 ? 0 : (100.0 + 20*log10(lin_val))); unsigned meter_value = (unsigned)(lin_val < 1e-5 ? 0 : (100.0 + 20*log10(lin_val)));
io::uiSendValue( app->ioH, uuid, meter_value ); io::uiSendValue( app->ioH, uuid, meter_value );
} }
return kOkRC; return kOkRC;
@ -1748,143 +1746,143 @@ namespace cw
switch( m.appId ) switch( m.appId )
{ {
case kPvWndSmpCntId: case kPvWndSmpCntId:
var_label="wndSmpN"; var_label="wndSmpN";
app->pvWndSmpCnt = m.value->u.u; app->pvWndSmpCnt = m.value->u.u;
rc = io_flow::set_variable_value( app->ioFlowH, flow_cross::kAllDestId, "pva", var_label, flow::kAnyChIdx, m.value->u.u ); rc = io_flow::set_variable_value( app->ioFlowH, flow_cross::kAllDestId, "pva", var_label, flow::kAnyChIdx, m.value->u.u );
break; break;
case kSdBypassId: case kSdBypassId:
var_label="bypass"; var_label="bypass";
app->sdBypassFl = m.value->u.b; app->sdBypassFl = m.value->u.b;
rc = io_flow::set_variable_value( app->ioFlowH, flow_cross::kAllDestId, "sd", var_label, flow::kAnyChIdx, m.value->u.b ); rc = io_flow::set_variable_value( app->ioFlowH, flow_cross::kAllDestId, "sd", var_label, flow::kAnyChIdx, m.value->u.b );
break; break;
case kSdInGainId: case kSdInGainId:
var_label = "igain"; var_label = "igain";
app->sdInGain = m.value->u.d; app->sdInGain = m.value->u.d;
break; break;
case kSdCeilingId: case kSdCeilingId:
var_label = "ceiling"; var_label = "ceiling";
app->sdCeiling = m.value->u.d; app->sdCeiling = m.value->u.d;
break; break;
case kSdExpoId: case kSdExpoId:
var_label = "expo"; var_label = "expo";
app->sdExpo = m.value->u.d; app->sdExpo = m.value->u.d;
break; break;
case kSdThreshId: case kSdThreshId:
var_label = "thresh"; var_label = "thresh";
app->sdThresh = m.value->u.d; app->sdThresh = m.value->u.d;
break; break;
case kSdUprId: case kSdUprId:
var_label = "upr"; var_label = "upr";
app->sdUpr = m.value->u.d; app->sdUpr = m.value->u.d;
break; break;
case kSdLwrId: case kSdLwrId:
var_label = "lwr"; var_label = "lwr";
app->sdLwr = m.value->u.d; app->sdLwr = m.value->u.d;
break; break;
case kSdMixId: case kSdMixId:
var_label = "mix"; var_label = "mix";
app->sdMix = m.value->u.d; app->sdMix = m.value->u.d;
break; break;
case kCmpBypassId: case kCmpBypassId:
var_label="cmp-bypass"; var_label="cmp-bypass";
app->cmpBypassFl = m.value->u.b; app->cmpBypassFl = m.value->u.b;
rc = io_flow::set_variable_value( app->ioFlowH, flow_cross::kAllDestId, "cmp", "bypass", flow::kAnyChIdx, m.value->u.b ); rc = io_flow::set_variable_value( app->ioFlowH, flow_cross::kAllDestId, "cmp", "bypass", flow::kAnyChIdx, m.value->u.b );
break; break;
default: default:
assert(0); assert(0);
} }
if( m.value->tid == ui::kDoubleTId ) if( m.value->tid == ui::kDoubleTId )
rc = io_flow::set_variable_value( app->ioFlowH, flow_cross::kAllDestId, "sd", var_label, flow::kAnyChIdx, (dsp::real_t)m.value->u.d ); rc = io_flow::set_variable_value( app->ioFlowH, flow_cross::kAllDestId, "sd", var_label, flow::kAnyChIdx, (dsp::real_t)m.value->u.d );
if(rc != kOkRC ) if(rc != kOkRC )
rc = cwLogError(rc,"Attempt to set a spec-dist variable '%s'",var_label ); rc = cwLogError(rc,"Attempt to set a spec-dist variable '%s'",var_label );
return rc; return rc;
} }
/* /*
rc_t _on_ui_half_pedal_value( app_t* app, unsigned appId, unsigned uuId, unsigned value ) rc_t _on_ui_half_pedal_value( app_t* app, unsigned appId, unsigned uuId, unsigned value )
{ {
switch( appId ) switch( appId )
{ {
case kHalfPedalDelayMs: case kHalfPedalDelayMs:
app->hpDelayMs = value; app->hpDelayMs = value;
break; break;
case kHalfPedalPedalVel: case kHalfPedalPedalVel:
app->hpPedalVel = value; app->hpPedalVel = value;
break; break;
case kHalfPedalPitch: case kHalfPedalPitch:
app->hpPitch = value; app->hpPitch = value;
break; break;
case kHalfPedalVel: case kHalfPedalVel:
app->hpVel = value; app->hpVel = value;
break; break;
case kHalfPedalDurMs: case kHalfPedalDurMs:
app->hpDurMs = value; app->hpDurMs = value;
break; break;
case kHalfPedalDnDelayMs: case kHalfPedalDnDelayMs:
app->hpDnDelayMs = value; app->hpDnDelayMs = value;
break; break;
default: default:
{ assert(0); } { assert(0); }
} }
return kOkRC; return kOkRC;
} }
rc_t _on_echo_half_pedal( app_t* app, unsigned appId, unsigned uuId ) rc_t _on_echo_half_pedal( app_t* app, unsigned appId, unsigned uuId )
{ {
switch( appId ) switch( appId )
{ {
case kHalfPedalDelayMs: case kHalfPedalDelayMs:
io::uiSendValue( app->ioH, uuId, app->hpDelayMs ); io::uiSendValue( app->ioH, uuId, app->hpDelayMs );
break; break;
case kHalfPedalPedalVel: case kHalfPedalPedalVel:
io::uiSendValue( app->ioH, uuId, app->hpPedalVel ); io::uiSendValue( app->ioH, uuId, app->hpPedalVel );
break; break;
case kHalfPedalPitch: case kHalfPedalPitch:
io::uiSendValue( app->ioH, uuId, app->hpPitch ); io::uiSendValue( app->ioH, uuId, app->hpPitch );
break; break;
case kHalfPedalVel: case kHalfPedalVel:
io::uiSendValue( app->ioH, uuId, app->hpVel ); io::uiSendValue( app->ioH, uuId, app->hpVel );
break; break;
case kHalfPedalDurMs: case kHalfPedalDurMs:
io::uiSendValue( app->ioH, uuId, app->hpDurMs ); io::uiSendValue( app->ioH, uuId, app->hpDurMs );
break; break;
case kHalfPedalDnDelayMs: case kHalfPedalDnDelayMs:
io::uiSendValue( app->ioH, uuId, app->hpDnDelayMs ); io::uiSendValue( app->ioH, uuId, app->hpDnDelayMs );
break; break;
default: default:
{ assert(0); } { assert(0); }
} }
return kOkRC; return kOkRC;
} }
*/ */
rc_t _onUiInit(app_t* app, const io::ui_msg_t& m ) rc_t _onUiInit(app_t* app, const io::ui_msg_t& m )
@ -1958,13 +1956,13 @@ namespace cw
_do_stop_play(app); _do_stop_play(app);
break; break;
case kLiveCheckId: case kLiveCheckId:
app->useLiveMidiFl = m.value->u.b; app->useLiveMidiFl = m.value->u.b;
break; break;
case kTrackMidiCheckId: case kTrackMidiCheckId:
app->trackMidiFl = m.value->u.b; app->trackMidiFl = m.value->u.b;
break; break;
case kPrintMidiCheckId: case kPrintMidiCheckId:
app->printMidiFl = m.value->u.b; app->printMidiFl = m.value->u.b;
@ -2014,28 +2012,28 @@ namespace cw
_on_ui_delete_btn(app); _on_ui_delete_btn(app);
break; break;
case kPvWndSmpCntId: case kPvWndSmpCntId:
case kSdBypassId: case kSdBypassId:
case kSdInGainId: case kSdInGainId:
case kSdCeilingId: case kSdCeilingId:
case kSdExpoId: case kSdExpoId:
case kSdThreshId: case kSdThreshId:
case kSdUprId: case kSdUprId:
case kSdLwrId: case kSdLwrId:
case kSdMixId: case kSdMixId:
case kCmpBypassId: case kCmpBypassId:
_on_sd_control(app,m); _on_sd_control(app,m);
break; break;
/* /*
case kHalfPedalPedalVel: case kHalfPedalPedalVel:
case kHalfPedalDelayMs: case kHalfPedalDelayMs:
case kHalfPedalPitch: case kHalfPedalPitch:
case kHalfPedalVel: case kHalfPedalVel:
case kHalfPedalDurMs: case kHalfPedalDurMs:
case kHalfPedalDnDelayMs: case kHalfPedalDnDelayMs:
_on_ui_half_pedal_value( app, m.appId, m.uuId, m.value->u.u ); _on_ui_half_pedal_value( app, m.appId, m.uuId, m.value->u.u );
break; break;
*/ */
case kFragInGainId: case kFragInGainId:
@ -2099,22 +2097,22 @@ namespace cw
{ {
switch( m.appId ) switch( m.appId )
{ {
case kBegPlayLocNumbId: case kBegPlayLocNumbId:
case kEndPlayLocNumbId: case kEndPlayLocNumbId:
_enable_global_play_btn(app,false); _enable_global_play_btn(app,false);
break; break;
case kInsertLocId: case kInsertLocId:
io::uiSetEnable( app->ioH, io::uiFindElementUuId( app->ioH, kInsertBtnId ), false ); io::uiSetEnable( app->ioH, io::uiFindElementUuId( app->ioH, kInsertBtnId ), false );
break; break;
case kFragBegPlayLocId: case kFragBegPlayLocId:
case kFragEndPlayLocId: case kFragEndPlayLocId:
_disable_frag_play_btn(app, m.uuId ); _disable_frag_play_btn(app, m.uuId );
break; break;
default: default:
break; break;
} }
return kOkRC; return kOkRC;
@ -2183,64 +2181,64 @@ namespace cw
io::uiSendValue( app->ioH, m.uuId, app->end_play_loc ); io::uiSendValue( app->ioH, m.uuId, app->end_play_loc );
break; break;
case kLiveCheckId: case kLiveCheckId:
io::uiSendValue( app->ioH, m.uuId, app->useLiveMidiFl ); io::uiSendValue( app->ioH, m.uuId, app->useLiveMidiFl );
break; break;
case kTrackMidiCheckId: case kTrackMidiCheckId:
io::uiSendValue( app->ioH, m.uuId, app->trackMidiFl ); io::uiSendValue( app->ioH, m.uuId, app->trackMidiFl );
break; break;
case kPvWndSmpCntId: case kPvWndSmpCntId:
io::uiSendValue( app->ioH, m.uuId, app->pvWndSmpCnt ); io::uiSendValue( app->ioH, m.uuId, app->pvWndSmpCnt );
break; break;
case kSdBypassId: case kSdBypassId:
io::uiSendValue( app->ioH, m.uuId, app->sdBypassFl ); io::uiSendValue( app->ioH, m.uuId, app->sdBypassFl );
break; break;
case kSdInGainId: case kSdInGainId:
io::uiSendValue( app->ioH, m.uuId, app->sdInGain ); io::uiSendValue( app->ioH, m.uuId, app->sdInGain );
break; break;
case kSdCeilingId: case kSdCeilingId:
io::uiSendValue( app->ioH, m.uuId, app->sdCeiling ); io::uiSendValue( app->ioH, m.uuId, app->sdCeiling );
break; break;
case kSdExpoId: case kSdExpoId:
io::uiSendValue( app->ioH, m.uuId, app->sdExpo ); io::uiSendValue( app->ioH, m.uuId, app->sdExpo );
break; break;
case kSdThreshId: case kSdThreshId:
io::uiSendValue( app->ioH, m.uuId, app->sdThresh ); io::uiSendValue( app->ioH, m.uuId, app->sdThresh );
break; break;
case kSdUprId: case kSdUprId:
io::uiSendValue( app->ioH, m.uuId, app->sdUpr ); io::uiSendValue( app->ioH, m.uuId, app->sdUpr );
break; break;
case kSdLwrId: case kSdLwrId:
io::uiSendValue( app->ioH, m.uuId, app->sdLwr ); io::uiSendValue( app->ioH, m.uuId, app->sdLwr );
break; break;
case kSdMixId: case kSdMixId:
io::uiSendValue( app->ioH, m.uuId, app->sdMix ); io::uiSendValue( app->ioH, m.uuId, app->sdMix );
break; break;
case kCmpBypassId: case kCmpBypassId:
io::uiSendValue( app->ioH, m.uuId, app->cmpBypassFl ); io::uiSendValue( app->ioH, m.uuId, app->cmpBypassFl );
break; break;
/* /*
case kHalfPedalPedalVel: case kHalfPedalPedalVel:
case kHalfPedalDelayMs: case kHalfPedalDelayMs:
case kHalfPedalPitch: case kHalfPedalPitch:
case kHalfPedalVel: case kHalfPedalVel:
case kHalfPedalDurMs: case kHalfPedalDurMs:
case kHalfPedalDnDelayMs: case kHalfPedalDnDelayMs:
_on_echo_half_pedal( app, m.appId, m.uuId ); _on_echo_half_pedal( app, m.appId, m.uuId );
break; break;
*/ */
} }
@ -2253,47 +2251,47 @@ namespace cw
switch( m.opId ) switch( m.opId )
{ {
case ui::kConnectOpId: case ui::kConnectOpId:
cwLogInfo("UI Connected: wsSessId:%i.",m.wsSessId); cwLogInfo("UI Connected: wsSessId:%i.",m.wsSessId);
break; break;
case ui::kDisconnectOpId: case ui::kDisconnectOpId:
cwLogInfo("UI Disconnected: wsSessId:%i.",m.wsSessId); cwLogInfo("UI Disconnected: wsSessId:%i.",m.wsSessId);
break; break;
case ui::kInitOpId: case ui::kInitOpId:
_onUiInit(app,m); _onUiInit(app,m);
break; break;
case ui::kValueOpId: case ui::kValueOpId:
_onUiValue( app, m ); _onUiValue( app, m );
break; break;
case ui::kCorruptOpId: case ui::kCorruptOpId:
_onUiCorrupt( app, m ); _onUiCorrupt( app, m );
break; break;
case ui::kClickOpId: case ui::kClickOpId:
_do_select_frag( app, m.uuId ); _do_select_frag( app, m.uuId );
break; break;
case ui::kSelectOpId: case ui::kSelectOpId:
_onUiSelect( app, m ); _onUiSelect( app, m );
break; break;
case ui::kEchoOpId: case ui::kEchoOpId:
_onUiEcho( app, m ); _onUiEcho( app, m );
break; break;
case ui::kIdleOpId: case ui::kIdleOpId:
_do_seq_exec( app ); _do_seq_exec( app );
break; break;
case ui::kInvalidOpId: case ui::kInvalidOpId:
// fall through // fall through
default: default:
assert(0); assert(0);
break; break;
} }
@ -2328,39 +2326,39 @@ namespace cw
switch( m->tid ) switch( m->tid )
{ {
case io::kTimerTId: case io::kTimerTId:
break; break;
case io::kSerialTId: case io::kSerialTId:
break; break;
case io::kMidiTId: case io::kMidiTId:
if( app->useLiveMidiFl && app->mrpH.isValid() ) if( app->useLiveMidiFl && app->mrpH.isValid() )
_on_live_midi( app, *m ); _on_live_midi( app, *m );
break; break;
case io::kAudioTId: case io::kAudioTId:
break; break;
case io::kAudioMeterTId: case io::kAudioMeterTId:
_on_master_audio_meter(app, *m ); _on_master_audio_meter(app, *m );
break; break;
case io::kSockTId: case io::kSockTId:
break; break;
case io::kWebSockTId: case io::kWebSockTId:
break; break;
case io::kUiTId: case io::kUiTId:
rc = _ui_callback(app,m->u.ui); rc = _ui_callback(app,m->u.ui);
break; break;
case io::kExecTId: case io::kExecTId:
break; break;
default: default:
assert(0); assert(0);
} }
@ -2377,17 +2375,18 @@ cw::rc_t cw::preset_sel_app::main( const object_t* cfg, int argc, const char* ar
rc_t rc; rc_t rc;
app_t app = { .hpDelayMs=250, .hpPedalVel=127, .hpPitch=64, .hpVel=64, .hpDurMs=500, .hpDnDelayMs=1000, app_t app = { .hpDelayMs=250, .hpPedalVel=127, .hpPitch=64, .hpVel=64, .hpDurMs=500, .hpDnDelayMs=1000,
.trackMidiFl = true, .trackMidiFl = true,
.pvWndSmpCnt = 512, .audioFileSrcFl = true,
.sdBypassFl = false, .pvWndSmpCnt = 512,
.sdInGain = 1.0, .sdBypassFl = false,
.sdCeiling = 20.0, .sdInGain = 1.0,
.sdExpo = 2.0, .sdCeiling = 20.0,
.sdThresh = 60.0, .sdExpo = 2.0,
.sdUpr = -1.1, .sdThresh = 60.0,
.sdLwr = 2.0, .sdUpr = -1.1,
.sdMix = 0.0, .sdLwr = 2.0,
.cmpBypassFl = false .sdMix = 0.0,
.cmpBypassFl = false,
}; };
const object_t* params_cfg = nullptr; const object_t* params_cfg = nullptr;