From ee5a4e6b503e393459ef68468fb8cd061f5b13a9 Mon Sep 17 00:00:00 2001 From: Robbert van der Helm Date: Thu, 7 May 2020 16:32:55 +0200 Subject: [PATCH] Move the serialization function for VST events --- src/common/serialization.h | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/common/serialization.h b/src/common/serialization.h index e0286dbf..def47b34 100644 --- a/src/common/serialization.h +++ b/src/common/serialization.h @@ -188,6 +188,12 @@ class alignas(16) DynamicVstEvents { */ std::vector events; + template + void serialize(S& s) { + s.container(events, max_midi_events, + [](S& s, VstEvent& event) { s.container1b(event.dump); }); + } + private: /** * Some buffer we can build a `VstEvents` object in. This object can be @@ -342,11 +348,7 @@ void serialize(S& s, EventPayload& payload) { s.value8b(window_handle); }, [](S& s, AEffect& effect) { s.object(effect); }, - [](S& s, DynamicVstEvents& events) { - s.container( - events.events, max_midi_events, - [](S& s, VstEvent& event) { s.container1b(event.dump); }); - }, + [](S& s, DynamicVstEvents& events) { s.object(events); }, [](S& s, VstIOProperties& props) { s.object(props); }, [](S& s, VstMidiKeyName& key_name) { s.object(key_name); }, [](S& s, VstParameterProperties& props) { s.object(props); },