IEEVisualizerDataProvider
This interface provides the ability to change an object's value through a type visualizer.
IEEVisualizerDataProvider : IUnknown
Notes for Implementers
The expression evaluator implements this interface to support modifying data on a property object through a type visualizer.
Notes for Callers
This interface is used in creating the IEEVisualizerService object through a call to IEEVisualizerServiceProvider::CreateVisualizerService. See Visualizing and Viewing Data for more details.
Methods in Vtable order
Method |
Description |
---|---|
Determines if it is possible to update the object (and subsequently, its value) that this visualizer is representing. |
|
Forces a re-evaluation of the object for this visualizer. |
|
Gets an existing object for this visualizer (no evaluation is done). |
|
Updates the object for this visualizer, thereby changing the value the visualizer presents. |
Remarks
The visualizer service (as represented by the IEEVisualizerService interface and returned by IEEVisualizerServiceProvider::CreateVisualizerService) keeps a reference to the object implementing the IEEVisualizerDataProvider interface. As a result, the IEEVisualizerDataProvider interface should not be implemented on the same object that implements the IDebugProperty2 if that object maintains a reference to the IEEVisualizerService object: a circular reference results and a deadlock occurs when the objects are destroyed. The recommended approach is to implement IEEVisualizerDataProvider on a separate object to which the IDebugProperty2 object delegates without calling IUnknown::AddRef on it.
Requirements
Header: ee.h
Namespace: Microsoft.VisualStudio.Debugger.Interop
Assembly: Microsoft.VisualStudio.Debugger.Interop.dll