Save and restore sassy scope state
Signed-off-by: falkTX <falktx@falktx.com>
This commit is contained in:
parent
8d68d6e10c
commit
fc1fb75123
1 changed files with 124 additions and 0 deletions
|
@ -94,6 +94,130 @@ struct SassyScopeModule : Module {
|
|||
{
|
||||
scope.realloc(e.sampleRate);
|
||||
}
|
||||
|
||||
json_t* dataToJson() override
|
||||
{
|
||||
json_t* const rootJ = json_object();
|
||||
DISTRHO_SAFE_ASSERT_RETURN(rootJ != nullptr, nullptr);
|
||||
|
||||
json_object_set_new(rootJ, "mTimeScale", json_real(scope.mTimeScale));
|
||||
json_object_set_new(rootJ, "mTimeScaleSlider", json_integer(scope.mTimeScaleSlider));
|
||||
json_object_set_new(rootJ, "mSyncMode", json_integer(scope.mSyncMode));
|
||||
json_object_set_new(rootJ, "mSyncChannel", json_integer(scope.mSyncChannel));
|
||||
json_object_set_new(rootJ, "mMode", json_integer(scope.mMode));
|
||||
json_object_set_new(rootJ, "mDisplay", json_integer(scope.mDisplay));
|
||||
json_object_set_new(rootJ, "mFFTZoom", json_integer(scope.mFFTZoom));
|
||||
json_object_set_new(rootJ, "mPot", json_integer(scope.mPot));
|
||||
json_object_set_new(rootJ, "fft.average", json_integer(scope.fft.average));
|
||||
|
||||
json_object_set_new(rootJ, "mCh0.mEnabled", json_boolean(scope.mCh[0].mEnabled));
|
||||
json_object_set_new(rootJ, "mCh0.mScale", json_real(scope.mCh[0].mScale));
|
||||
json_object_set_new(rootJ, "mCh0.mScaleSlider", json_integer(scope.mCh[0].mScaleSlider));
|
||||
json_object_set_new(rootJ, "mCh0.mOffset", json_integer(scope.mCh[0].mOffset));
|
||||
|
||||
json_object_set_new(rootJ, "mCh1.mEnabled", json_boolean(scope.mCh[1].mEnabled));
|
||||
json_object_set_new(rootJ, "mCh1.mScale", json_real(scope.mCh[1].mScale));
|
||||
json_object_set_new(rootJ, "mCh1.mScaleSlider", json_integer(scope.mCh[1].mScaleSlider));
|
||||
json_object_set_new(rootJ, "mCh1.mOffset", json_integer(scope.mCh[1].mOffset));
|
||||
|
||||
json_object_set_new(rootJ, "mCh2.mEnabled", json_boolean(scope.mCh[2].mEnabled));
|
||||
json_object_set_new(rootJ, "mCh2.mScale", json_real(scope.mCh[2].mScale));
|
||||
json_object_set_new(rootJ, "mCh2.mScaleSlider", json_integer(scope.mCh[2].mScaleSlider));
|
||||
json_object_set_new(rootJ, "mCh2.mOffset", json_integer(scope.mCh[2].mOffset));
|
||||
|
||||
json_object_set_new(rootJ, "mCh3.mEnabled", json_boolean(scope.mCh[3].mEnabled));
|
||||
json_object_set_new(rootJ, "mCh3.mScale", json_real(scope.mCh[3].mScale));
|
||||
json_object_set_new(rootJ, "mCh3.mScaleSlider", json_integer(scope.mCh[3].mScaleSlider));
|
||||
json_object_set_new(rootJ, "mCh3.mOffset", json_integer(scope.mCh[3].mOffset));
|
||||
|
||||
return rootJ;
|
||||
}
|
||||
|
||||
void dataFromJson(json_t* const rootJ) override
|
||||
{
|
||||
if (json_t* const mTimeScaleJ = json_object_get(rootJ, "mTimeScale"))
|
||||
scope.mTimeScale = json_real_value(mTimeScaleJ);
|
||||
|
||||
if (json_t* const mTimeScaleSliderJ = json_object_get(rootJ, "mTimeScaleSlider"))
|
||||
scope.mTimeScaleSlider = json_integer_value(mTimeScaleSliderJ);
|
||||
|
||||
if (json_t* const mSyncModeJ = json_object_get(rootJ, "mSyncMode"))
|
||||
scope.mSyncMode = json_integer_value(mSyncModeJ);
|
||||
|
||||
if (json_t* const mSyncChannelJ = json_object_get(rootJ, "mSyncChannel"))
|
||||
scope.mSyncChannel = json_integer_value(mSyncChannelJ);
|
||||
|
||||
if (json_t* const mModeJ = json_object_get(rootJ, "mMode"))
|
||||
scope.mMode = json_integer_value(mModeJ);
|
||||
|
||||
if (json_t* const mDisplayJ = json_object_get(rootJ, "mDisplay"))
|
||||
scope.mDisplay = json_integer_value(mDisplayJ);
|
||||
|
||||
if (json_t* const mFFTZoomJ = json_object_get(rootJ, "mFFTZoom"))
|
||||
scope.mFFTZoom = json_integer_value(mFFTZoomJ);
|
||||
|
||||
if (json_t* const mPotJ = json_object_get(rootJ, "mPot"))
|
||||
scope.mPot = json_integer_value(mPotJ);
|
||||
|
||||
if (json_t* const fftAverageJ = json_object_get(rootJ, "fft.average"))
|
||||
scope.fft.average = json_integer_value(fftAverageJ);
|
||||
|
||||
{
|
||||
if (json_t* const mCh0mEnabledJ = json_object_get(rootJ, "mCh0.mEnabled"))
|
||||
scope.mCh[0].mEnabled = json_boolean_value(mCh0mEnabledJ);
|
||||
|
||||
if (json_t* const mCh0mScaleJ = json_object_get(rootJ, "mCh0.mScale"))
|
||||
scope.mCh[0].mScale = json_real_value(mCh0mScaleJ);
|
||||
|
||||
if (json_t* const mCh0mScaleSliderJ = json_object_get(rootJ, "mCh0.mScaleSlider"))
|
||||
scope.mCh[0].mScaleSlider = json_integer_value(mCh0mScaleSliderJ);
|
||||
|
||||
if (json_t* const mCh0mOffsetJ = json_object_get(rootJ, "mCh0.mOffset"))
|
||||
scope.mCh[0].mOffset = json_integer_value(mCh0mOffsetJ);
|
||||
}
|
||||
|
||||
{
|
||||
if (json_t* const mCh1mEnabledJ = json_object_get(rootJ, "mCh1.mEnabled"))
|
||||
scope.mCh[1].mEnabled = json_boolean_value(mCh1mEnabledJ);
|
||||
|
||||
if (json_t* const mCh1mScaleJ = json_object_get(rootJ, "mCh1.mScale"))
|
||||
scope.mCh[1].mScale = json_real_value(mCh1mScaleJ);
|
||||
|
||||
if (json_t* const mCh1mScaleSliderJ = json_object_get(rootJ, "mCh1.mScaleSlider"))
|
||||
scope.mCh[1].mScaleSlider = json_integer_value(mCh1mScaleSliderJ);
|
||||
|
||||
if (json_t* const mCh1mOffsetJ = json_object_get(rootJ, "mCh1.mOffset"))
|
||||
scope.mCh[1].mOffset = json_integer_value(mCh1mOffsetJ);
|
||||
}
|
||||
|
||||
{
|
||||
if (json_t* const mCh2mEnabledJ = json_object_get(rootJ, "mCh2.mEnabled"))
|
||||
scope.mCh[2].mEnabled = json_boolean_value(mCh2mEnabledJ);
|
||||
|
||||
if (json_t* const mCh2mScaleJ = json_object_get(rootJ, "mCh2.mScale"))
|
||||
scope.mCh[2].mScale = json_real_value(mCh2mScaleJ);
|
||||
|
||||
if (json_t* const mCh2mScaleSliderJ = json_object_get(rootJ, "mCh2.mScaleSlider"))
|
||||
scope.mCh[2].mScaleSlider = json_integer_value(mCh2mScaleSliderJ);
|
||||
|
||||
if (json_t* const mCh2mOffsetJ = json_object_get(rootJ, "mCh2.mOffset"))
|
||||
scope.mCh[2].mOffset = json_integer_value(mCh2mOffsetJ);
|
||||
}
|
||||
|
||||
{
|
||||
if (json_t* const mCh3mEnabledJ = json_object_get(rootJ, "mCh3.mEnabled"))
|
||||
scope.mCh[3].mEnabled = json_boolean_value(mCh3mEnabledJ);
|
||||
|
||||
if (json_t* const mCh3mScaleJ = json_object_get(rootJ, "mCh3.mScale"))
|
||||
scope.mCh[3].mScale = json_real_value(mCh3mScaleJ);
|
||||
|
||||
if (json_t* const mCh3mScaleSliderJ = json_object_get(rootJ, "mCh3.mScaleSlider"))
|
||||
scope.mCh[3].mScaleSlider = json_integer_value(mCh3mScaleSliderJ);
|
||||
|
||||
if (json_t* const mCh3mOffsetJ = json_object_get(rootJ, "mCh3.mOffset"))
|
||||
scope.mCh[3].mOffset = json_integer_value(mCh3mOffsetJ);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
// used for module browser
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue