IDataModelScriptDebug interface (dbgmodel.h)
The core interface that a script provider must provide in order to make a script debuggable. The implementation class of the IDataModelScript interface must QueryInterface for IDataModelScriptDebug if the script is debuggable.
Any script which is debuggable indicates this capability via the presence of the IDataModelScriptDebug interface on the same component which implements IDataModelScript. The query for this interface by the debug host or the debugger application hosting the data model is what indicates the presence of the debug capability.
Inheritance
IDataModelScriptDebug inherits from IUnknown.
Methods
The IDataModelScriptDebug interface has these methods.
IDataModelScriptDebug::AddRef The IDataModelScriptDebug::AddRef method increments the reference count for an interface on an object. |
IDataModelScriptDebug::EnumerateBreakpoints The IDataModelScriptDebug::EnumerateBreakpoints method returns an enumerator capable of enumerating every breakpoint when a script debugger is enabled. |
IDataModelScriptDebug::FindBreakpointById Each breakpoint which is created within the script via the SetBreakpoint method is assigned a unique identifier (a 64-bit unsigned integer) by the implementation. |
IDataModelScriptDebug::GetCurrentPosition The IDataModelScriptDebug::GetCurrentPosition method returns the current break position in a script debugger session. |
IDataModelScriptDebug::GetDebugState The GetDebugState method returns the current state of the script (whether it is executing or not). |
IDataModelScriptDebug::GetEventFilter The IDataModelScriptDebug::GetEventFilter method returns whether break-on-event is enabled for a particular event. |
IDataModelScriptDebug::GetStack The IDataModelScriptDebug::GetStack method gets the current call stack at the break position in a script debugger session. |
IDataModelScriptDebug::QueryInterface The IDataModelScriptDebug::QueryInterface method retrieves pointers to the supported interfaces on an object. |
IDataModelScriptDebug::Release The IDataModelScriptDebug::Release method decrements the reference count for an interface on an object. |
IDataModelScriptDebug::SetBreakpoint The IDataModelScriptDebug::SetBreakpoint method sets a breakpoint within a script when a script debugger is enabled. |
IDataModelScriptDebug::SetEventFilter The IDataModelScriptDebug::SetEventFilter method changes the break-on-event behavior for a particular event. |
IDataModelScriptDebug::StartDebugging The IDataModelScriptDebug::StartDebugging method turns on the debugger for a particular script but does not begin execution break or stepping. |
IDataModelScriptDebug::StopDebugging The IDataModelScriptDebug::StopDebugging method stops debugging activity after the StartDebugging method was successfully called. |
Remarks
The infrastructure for script providers in the data model also provides a concept around debugging scripts. Any script that wishes to expose debugging capabilities to the debug host and the debugger application hosting the data model can do so by having debuggable scripts implement the IDataModelScriptDebug interface in addition to the IDataModelScript interface. The presence of this interface on the script indicates to the infrastructure that it is debuggable.
While the IDataModelScriptDebug interface is the starting point to get access to the debug capabilities of a script provider, it is joined by a set of other interfaces in providing overall debug capabilities.
IDataModelScriptDebug
IDataModelScriptDebugStackFrame
IDataModelScriptDebugVariableSetEnumerator
IDataModelScriptDebugBreakpoint
IDataModelScriptDebugBreakpointEnumerator
Requirements
Requirement | Value |
---|---|
Header | dbgmodel.h |