public static void Transmitted(OSCEditorTransmitter transmitter, IOSCPacket packet) { var message = new OSCConsolePacket(); message.Info = $"<color=green>Editor Transmitter</color>: {transmitter.RemoteHost}:{transmitter.RemotePort}"; message.PacketType = OSCConsolePacketType.Transmitted; message.Packet = packet; Log(message); }
public static void RemoveEditorTransmitter(OSCEditorTransmitter transmitter) { if (!_transmitters.Contains(transmitter)) { return; } transmitter.Close(); transmitter.Dispose(); _transmitters.Remove(transmitter); }
public static OSCEditorTransmitter CreateEditorTransmitter() { var transmitter = new OSCEditorTransmitter(); transmitter.RemotePort = 7100 + _transmitters.Count; transmitter.LocalHostMode = OSCLocalHostMode.Any; transmitter.LocalHost = OSCUtilities.GetLocalHost(); transmitter.LocalPortMode = OSCLocalPortMode.FromRemotePort; transmitter.LocalPort = transmitter.RemotePort; _transmitters.Add(transmitter); return(transmitter); }
public static void LoadSettings() { if (!File.Exists(_configsPath)) { return; } var configs = JsonUtility.FromJson <OSCEditorConfigs>(File.ReadAllText(_configsPath)); _receivers.ForEach(receiver => { receiver.Close(); receiver.Dispose(); }); _receivers.Clear(); _transmitters.ForEach(transmitter => { transmitter.Close(); transmitter.Dispose(); }); _transmitters.Clear(); foreach (var receiverConfig in configs.Receivers) { var receiver = new OSCEditorReceiver(); receiver.LocalHostMode = receiverConfig.LocalHostMode; receiver.LocalHost = receiverConfig.LocalHost; receiver.LocalPort = receiverConfig.LocalPort; if (receiverConfig.AutoConnect) { receiver.Connect(); } _receivers.Add(receiver); } foreach (var transmitterConfig in configs.Transmitters) { var transmitter = new OSCEditorTransmitter(); transmitter.RemoteHost = transmitterConfig.RemoteHost; transmitter.RemotePort = transmitterConfig.RemotePort; transmitter.UseBundle = transmitterConfig.UseBundle; transmitter.LocalHostMode = transmitterConfig.LocalHostMode; transmitter.LocalHost = transmitterConfig.LocalHost; transmitter.LocalPortMode = transmitterConfig.LocalPortMode; transmitter.LocalPort = transmitterConfig.LocalPort; if (transmitterConfig.AutoConnect) { transmitter.Connect(); } _transmitters.Add(transmitter); } foreach (var componentConfig in configs.Components) { var componentType = OSCEditorUtils.GetTypeByGUID(componentConfig.Guid); if (componentType == null || !componentType.IsSubclassOf(typeof(OSCEditorComponent))) { componentType = typeof(OSCEditorManager).Assembly.GetType(componentConfig.Type); if (componentType == null) { continue; } } var component = GetComponent(componentType); if (component == null) { continue; } if (component is OSCEditorReceiverComponent receiverComponent) { receiverComponent.Receiver = GetEditorReceiver(componentConfig.Index); } else { if (component is OSCEditorTransmitterComponent transmitterComponent) { transmitterComponent.Transmitter = GetEditorTransmitter(componentConfig.Index); } } component.Active = componentConfig.Active; } }