Make internal plugin context use const; Fix host time

Signed-off-by: falkTX <falktx@falktx.com>
This commit is contained in:
falkTX 2022-01-14 15:45:36 +00:00
parent ec2f455826
commit 1a2c64309b
No known key found for this signature in database
GPG key ID: CDBAA37ABC74FBA0
8 changed files with 63 additions and 39 deletions

View file

@ -930,12 +930,13 @@ protected:
{
const TimePosition& timePos(getTimePosition());
bool reset = false;
MidiEvent singleTimeMidiEvent = { 0, 1, { 0, 0, 0, 0 }, nullptr };
if (timePos.playing)
{
if (timePos.frame == 0 || fPreviousFrame + frames != timePos.frame)
context->reset = true;
reset = true;
if (! context->playing)
{
@ -977,6 +978,7 @@ protected:
context->tickClock = std::fmod(timePos.bbt.tick, context->ticksPerClock);
}
context->reset = reset;
fPreviousFrame = timePos.frame;
}

View file

@ -193,7 +193,7 @@ START_NAMESPACE_DISTRHO
// -----------------------------------------------------------------------------------------------------------
bool CardinalPluginContext::addIdleCallback(IdleCallback* const cb)
bool CardinalPluginContext::addIdleCallback(IdleCallback* const cb) const
{
if (ui == nullptr)
return false;
@ -202,7 +202,7 @@ bool CardinalPluginContext::addIdleCallback(IdleCallback* const cb)
return true;
}
void CardinalPluginContext::removeIdleCallback(IdleCallback* const cb)
void CardinalPluginContext::removeIdleCallback(IdleCallback* const cb) const
{
if (ui == nullptr)
return;
@ -210,7 +210,7 @@ void CardinalPluginContext::removeIdleCallback(IdleCallback* const cb)
ui->removeIdleCallback(cb);
}
void handleHostParameterDrag(CardinalPluginContext* pcontext, uint index, bool started)
void handleHostParameterDrag(const CardinalPluginContext* pcontext, uint index, bool started)
{
DISTRHO_SAFE_ASSERT_RETURN(pcontext->ui != nullptr,);

View file

@ -91,13 +91,13 @@ struct CardinalPluginContext : rack::Context {
}
#ifndef HEADLESS
bool addIdleCallback(IdleCallback* cb);
void removeIdleCallback(IdleCallback* cb);
bool addIdleCallback(IdleCallback* cb) const;
void removeIdleCallback(IdleCallback* cb) const;
#endif
};
#ifndef HEADLESS
void handleHostParameterDrag(CardinalPluginContext* pcontext, uint index, bool started);
void handleHostParameterDrag(const CardinalPluginContext* pcontext, uint index, bool started);
#endif
// -----------------------------------------------------------------------------------------------------------