using CommunityToolkit.Mvvm.Messaging; namespace Toolkit.Foundation; public class MicrocontrollerContext(IReadOnlyCollection modules, IMessenger messenger, ISerialContext serialContext) : IMicrocontrollerContext where TReadDeserializer : IMicrocontrollerModuleDeserializer, new() { public async Task InitializeAsync() { //eventAggregator.Subscribe>(OnEvent, null, args => args.Context.Equals(serialContext)); serialContext.Open(); await Task.CompletedTask; } private async void OnEvent(SerialResponse args) { //IMicrocontrollerModule? module = await messenger.SendAsync(new TReadDeserializer { Read = args.Content }, modules); //messenger.Send((dynamic?)module); } }