using Microsoft.VisualStudio.DebuggerVisualizers; using NamedPipes; using System.Collections.Generic; using System.Diagnostics; using System.IO; using System.Linq; using System.Numerics; namespace Vector3VisualizerSource; public class Vector3ObjectSource : VisualizerObjectSource { public static void Send(Vector3Model vector3Model) { var pipeClient = new Sender(); pipeClient.SendMessage($"Hello from {nameof(Vector3ObjectSource)}"); } public Vector3ObjectSource():base() { Debug.WriteLine("new Vector3ObjectSource"); } public override void GetData(object target, Stream outgoingData) { Vector3Model vector3Model = new(); if (target is Vector3 vector3) { vector3Model.Vector3 = vector3.ToString(); } if (target is IEnumerable vector3List) { vector3Model.Vector3 = vector3List.Last().ToString(); } if (target is Quaternion quaternion) { vector3Model.Quaternion = quaternion.ToString(); } Send(vector3Model); SerializeAsJson(outgoingData, vector3Model); } }