groups in MIDI bindings and info dialog. Momentary swtiches, Progress ctl,, TooB Looper and Record plugins.

This commit is contained in:
Robin E. R. Davies
2025-03-12 20:52:56 -04:00
parent eb7a7f3a48
commit 28f4aeafe2
32 changed files with 3526 additions and 264 deletions
+12 -3
View File
@@ -35,6 +35,8 @@ namespace pipedal
class RealtimePatchPropertyRequest;
class RealtimeRingBufferWriter;
using ExistingEffectMap = std::map<uint64_t, std::shared_ptr<IEffect>>;
struct Lv2PedalboardError
{
int64_t intanceId;
@@ -78,7 +80,8 @@ namespace pipedal
Select,
Dial,
Toggle,
Trigger
Trigger,
MomentarySwitch
};
class MidiMapping
{
@@ -101,7 +104,8 @@ namespace pipedal
std::vector<float *> PrepareItems(
std::vector<PedalboardItem> &items,
std::vector<float *> inputBuffers,
Lv2PedalboardErrorList &errorList);
Lv2PedalboardErrorList &errorList,
ExistingEffectMap *existingEffects);
void PrepareMidiMap(const Pedalboard &pedalboard);
void PrepareMidiMap(const PedalboardItem &pedalboardItem);
@@ -114,9 +118,12 @@ namespace pipedal
Lv2Pedalboard() {}
~Lv2Pedalboard() {}
void Prepare(IHost *pHost, Pedalboard &pedalboard, Lv2PedalboardErrorList &errorList);
void Prepare(IHost *pHost, Pedalboard &pedalboard, Lv2PedalboardErrorList &errorList, ExistingEffectMap *existingEffects = nullptr);
std::vector<IEffect *> &GetEffects() { return realtimeEffects; }
std::vector<std::shared_ptr<IEffect>> &GetSharedEffectList() { return effects; }
int GetIndexOfInstanceId(uint64_t instanceId)
{
@@ -140,6 +147,8 @@ namespace pipedal
}
void Activate();
void Deactivate();
void UpdateAudioPorts();
bool Run(float **inputBuffers, float **outputBuffers, uint32_t samples, RealtimeRingBufferWriter *realtimeWriter);
void ResetAtomBuffers();