ILiveWatchNodeUpdateState Method
Returns the current value of the node, and also checks whether the node name, type or children have changed.
Namespace: VisualGDBExtensibility.LiveWatchAssembly: VisualGDBExtensibility (in VisualGDBExtensibility.dll) Version: 5.6.109.1 (5.6.109.4849)
LiveWatchNodeState UpdateState(
LiveWatchUpdateContext context
)
- context LiveWatchUpdateContext
- Specifies what information about the node is requested by VisualGDB. E.g.
nodes that are hidden from the list, but plotted, only need to update the raw value (UpdateScalarValueOnly)
LiveWatchNodeStateThe updated node value and optional new values for other fields.
This method is always called from a background worker thread.
If the node value depends on one or more low-level live variables, they should be created as early as possible,
and kept active until the live watch node is disposed. VisualGDB will automatically query the values of all active live variables before calling
GetChildren(LiveWatchChildrenRequestReason) for all visible live watch nodes. This ensures that updating the node state won't involve any actual target memory reads
and will not cause any noticeable delays.
If the node's children have changed in runtime, the Live Watch plugin can handle it in 2 ways:
- Immediately return a new list of children via NewChildren. They will immediately replace the old children shown in the Live Watch window.
-
Alternatively, set the ChildrenOutdated and
CanRefresh flags in the
Flags field.
VisualGDB will apply the strikethrough effect to the node's children, and
will show the refresh button next to the node name. Once the refresh button is clicked,
VisualGDB will call the GetChildren(LiveWatchChildrenRequestReason) method to load the new children.