|
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.
#nullable disable
#region Assembly Microsoft.VisualStudio.Debugger.Engine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
// References\Debugger\v2.0\Microsoft.VisualStudio.Debugger.Engine.dll
#endregion
using Microsoft.VisualStudio.Debugger.Clr;
namespace Microsoft.VisualStudio.Debugger.Evaluation.ClrCompilation
{
public class DkmClrDebuggerVisualizerAttribute : DkmClrEvalAttribute
{
/// <summary>
/// Constructor for mock DkmClrDebuggerVisualizerAttribute.
/// </summary>
/// <param name="targetMember">[Optional] Should be null. Not supported for the DebuggerVisualizer attribute</param>
/// <param name="uiSideVisualizerTypeName">[Required] The full name of the UI-side visualizer type</param>
/// <param name="uiSideVisualizerAssemblyName">[Required] The full name of the UI-side visualizer assembly</param>
/// <param name="uiSideVisualizerAssemblyLocation">[Required] The location of the UI-side visualizer assembly</param>
/// <param name="debuggeeSideVisualizerTypeName">[Required] The full name of the debuggee-side visualizer type</param>
/// <param name="debuggeeSideVisualizerAssemblyName">[Required] The full name of the debuggee-side visualizer assembly</param>
/// <param name="visualizerDescription">[Required] The visualizer description</param>
/// <param name="extensionPartId">[Required] This is a unique id for visualizers that are installed via the ExtensionPartManager.</param>
internal DkmClrDebuggerVisualizerAttribute(string targetMember,
string uiSideVisualizerTypeName,
string uiSideVisualizerAssemblyName,
DkmClrCustomVisualizerAssemblyLocation uiSideVisualizerAssemblyLocation,
string debuggeeSideVisualizerTypeName,
string debuggeeSideVisualizerAssemblyName,
string visualizerDescription,
System.Guid extensionPartId) :
base(null)
{
UISideVisualizerTypeName = uiSideVisualizerTypeName;
UISideVisualizerAssemblyName = uiSideVisualizerAssemblyName;
UISideVisualizerAssemblyLocation = uiSideVisualizerAssemblyLocation;
DebuggeeSideVisualizerTypeName = debuggeeSideVisualizerTypeName;
DebuggeeSideVisualizerAssemblyName = debuggeeSideVisualizerAssemblyName;
VisualizerDescription = visualizerDescription;
ExtensionPartId = extensionPartId;
}
public readonly string UISideVisualizerTypeName;
public readonly string UISideVisualizerAssemblyName;
public readonly DkmClrCustomVisualizerAssemblyLocation UISideVisualizerAssemblyLocation;
public readonly string DebuggeeSideVisualizerTypeName;
public readonly string DebuggeeSideVisualizerAssemblyName;
public readonly string VisualizerDescription;
public readonly System.Guid ExtensionPartId;
}
}
namespace Microsoft.VisualStudio.Debugger.Evaluation
{
//
// Summary:
// Enum that describes the location of the visualizer assembly. This API was introduced
// in Visual Studio 14 RTM (DkmApiVersion.VS14RTM).
public enum DkmClrCustomVisualizerAssemblyLocation
{
//
// Summary:
// Location unknown.
Unknown,
//
// Summary:
// The ...\Documents\...\Visual Studio X\Visualizers directory.
UserDirectory,
//
// Summary:
// The ...\Common7\Packages\Debugger\Visualizers directory.
SharedDirectory,
//
// Summary:
// Present on an assembly loaded by the debuggee.
Debuggee
}
}
|