using Microsoft.VisualStudio.DebuggerVisualizers; using NamedPipes; using System; using System.Collections.Generic; using System.Diagnostics; using System.IO; using System.Linq; using System.Numerics; namespace Vector3VisualizerSource; public class Vector3ObjectSource : VisualizerObjectSource { public Vector3ObjectSource() { Debug.WriteLine("new Vector3ObjectSource"); } public override void GetData(object target, Stream outgoingData) { Debug.WriteLine("GetData: objectType is: " + target.GetType().FullName); Vector3Model vector3Model = new(); switch (target) { case Vector3 vector3: vector3Model.Vector3 = vector3; break; case IEnumerable vector3List: vector3Model.Vector3 = vector3List.Last(); break; case Quaternion quaternion: vector3Model.Quaternion = quaternion; break; } SerializeAsJson(outgoingData, vector3Model); } }