Snapshots

This commit is contained in:
Robin Davies
2024-10-03 07:27:13 -04:00
parent 0b7078b592
commit 7821872016
69 changed files with 6070 additions and 1169 deletions
+34 -14
View File
@@ -507,6 +507,19 @@ void Lv2Pedalboard::ResetAtomBuffers()
}
}
void Lv2Pedalboard::GatherPathPatchProperties(IPatchWriterCallback*cbPatchWriter)
{
for (auto& pEffect : this->effects) {
if (pEffect->IsLv2Effect())
{
Lv2Effect *pLv2Effect = (Lv2Effect*)pEffect.get();
pLv2Effect->GatherPathPatchProperties(cbPatchWriter);
}
}
}
void Lv2Pedalboard::ProcessParameterRequests(RealtimePatchPropertyRequest *pParameterRequests)
{
while (pParameterRequests != nullptr)
@@ -522,25 +535,29 @@ void Lv2Pedalboard::ProcessParameterRequests(RealtimePatchPropertyRequest *pPara
}
else
{
Lv2Effect *pLv2Effect = dynamic_cast<Lv2Effect *>(pEffect);
if (pEffect->IsLv2Effect())
{
Lv2Effect *pLv2Effect = dynamic_cast<Lv2Effect *>(pEffect);
if (pParameterRequests->requestType == RealtimePatchPropertyRequest::RequestType::PatchGet)
{
pLv2Effect->RequestPatchProperty(pParameterRequests->uridUri);
}
else if (pParameterRequests->requestType == RealtimePatchPropertyRequest::RequestType::PatchSet)
{
pLv2Effect->SetPatchProperty(
pParameterRequests->uridUri,
pParameterRequests->GetSize(),
(LV2_Atom *)pParameterRequests->GetBuffer());
pLv2Effect->SetRequestStateChangedNotification(true);
if (pParameterRequests->requestType == RealtimePatchPropertyRequest::RequestType::PatchGet)
{
pLv2Effect->RequestPatchProperty(pParameterRequests->uridUri);
}
else if (pParameterRequests->requestType == RealtimePatchPropertyRequest::RequestType::PatchSet)
{
pLv2Effect->SetPatchProperty(
pParameterRequests->uridUri,
pParameterRequests->GetSize(),
(LV2_Atom *)pParameterRequests->GetBuffer());
pLv2Effect->SetRequestStateChangedNotification(true);
}
}
}
pParameterRequests = pParameterRequests->pNext;
}
}
void Lv2Pedalboard::GatherPatchProperties(RealtimePatchPropertyRequest *pParameterRequests)
{
while (pParameterRequests != nullptr)
@@ -558,8 +575,11 @@ void Lv2Pedalboard::GatherPatchProperties(RealtimePatchPropertyRequest *pParamet
}
else
{
Lv2Effect *pLv2Effect = dynamic_cast<Lv2Effect *>(effect);
pLv2Effect->GatherPatchProperties(pParameterRequests);
if (effect->IsLv2Effect())
{
Lv2Effect *pLv2Effect = dynamic_cast<Lv2Effect *>(effect);
pLv2Effect->GatherPatchProperties(pParameterRequests);
}
}
}