C# Class VSNDK.DebugEngine.EngineCallback

Exibir arquivo Open project: blackberry/VSPlugin Class Usage Examples

Public Methods

Method Description
EngineCallback ( AD7Engine engine, IDebugEventCallback2 ad7Callback ) : System

Constructor.

OnAsyncBreakComplete ( AD7Thread thread ) : void

This will get called when the engine receives the breakpoint event that is created when the user hits the pause button in VS.

OnBreakpoint ( AD7Thread thread, IList clients ) : void

Send an event to SDM with the breakpoint that was hit.

OnBreakpointBound ( object objBoundBreakpoint, uint address ) : void

Engines notify the debugger that a breakpoint has bound through the breakpoint bound event.

OnError ( int hrErr ) : void

IDebugErrorEvent2 is used to report error messages to the user when something goes wrong in the debug engine. The VSNDK debug engine doesn't take advantage of this. Not implemented.

OnException ( ) : void

Exception events are sent when an exception occurs in the debugged that the debugger was not expecting. The VSNDK debug engine does not support these. Not implemented.

OnModuleLoad ( AD7Module debuggedModule ) : void

The VSNDK debug engine does not support binding breakpoints as modules load since the primary exe is the only module symbols are loaded for. A production debugger will need to bind breakpoints when a new module is loaded.

OnOutputString ( string outputString ) : void

Send to the session debug manager (SDM) an event to output a string. Not used.

OnStepComplete ( ) : void

Step complete is sent when a step has finished. Not implemented.

OnSymbolSearch ( AD7Module module, string status, uint dwStatusFlags ) : void

Engines notify the debugger about the results of a symbol search by sending an instance of IDebugSymbolSearchEvent2. Not used.

OnThreadStart ( AD7Thread debuggedThread ) : void

Send an event to notify the SDM that this thread was created.

Send ( IDebugEvent2 eventObject, string iidEvent, IDebugProgram2 program, IDebugThread2 thread ) : void

Send events to the debugger.

Send ( IDebugEvent2 eventObject, string iidEvent, IDebugThread2 thread ) : void

Call the method that will send the event to the debugger with all the arguments.

Method Details

EngineCallback() public method

Constructor.
public EngineCallback ( AD7Engine engine, IDebugEventCallback2 ad7Callback ) : System
engine AD7Engine The AD7Engine object that represents the DE.
ad7Callback IDebugEventCallback2 The IDebugEventCallback2 object that receives debugger events.
return System

OnAsyncBreakComplete() public method

This will get called when the engine receives the breakpoint event that is created when the user hits the pause button in VS.
public OnAsyncBreakComplete ( AD7Thread thread ) : void
thread AD7Thread The thread running in a program.
return void

OnBreakpoint() public method

Send an event to SDM with the breakpoint that was hit.
public OnBreakpoint ( AD7Thread thread, IList clients ) : void
thread AD7Thread The thread running in a program.
clients IList List of bound breakpoints. At this moment, this list has only one element.
return void

OnBreakpointBound() public method

Engines notify the debugger that a breakpoint has bound through the breakpoint bound event.
public OnBreakpointBound ( object objBoundBreakpoint, uint address ) : void
objBoundBreakpoint object The bounded breakpoint.
address uint 0.
return void

OnError() public method

IDebugErrorEvent2 is used to report error messages to the user when something goes wrong in the debug engine. The VSNDK debug engine doesn't take advantage of this. Not implemented.
public OnError ( int hrErr ) : void
hrErr int
return void

OnException() public method

Exception events are sent when an exception occurs in the debugged that the debugger was not expecting. The VSNDK debug engine does not support these. Not implemented.
public OnException ( ) : void
return void

OnModuleLoad() public method

The VSNDK debug engine does not support binding breakpoints as modules load since the primary exe is the only module symbols are loaded for. A production debugger will need to bind breakpoints when a new module is loaded.
public OnModuleLoad ( AD7Module debuggedModule ) : void
debuggedModule AD7Module A module loaded in the debugged process.
return void

OnOutputString() public method

Send to the session debug manager (SDM) an event to output a string. Not used.
public OnOutputString ( string outputString ) : void
outputString string The output string.
return void

OnStepComplete() public method

Step complete is sent when a step has finished. Not implemented.
public OnStepComplete ( ) : void
return void

OnSymbolSearch() public method

Engines notify the debugger about the results of a symbol search by sending an instance of IDebugSymbolSearchEvent2. Not used.
public OnSymbolSearch ( AD7Module module, string status, uint dwStatusFlags ) : void
module AD7Module
status string
dwStatusFlags uint
return void

OnThreadStart() public method

Send an event to notify the SDM that this thread was created.
public OnThreadStart ( AD7Thread debuggedThread ) : void
debuggedThread AD7Thread The new thread running in a program.
return void

Send() public method

Send events to the debugger.
public Send ( IDebugEvent2 eventObject, string iidEvent, IDebugProgram2 program, IDebugThread2 thread ) : void
eventObject IDebugEvent2 Event object to be sent to the debugger.
iidEvent string ID of the event.
program IDebugProgram2 A program that is running in a process.
thread IDebugThread2 A thread running in a program.
return void

Send() public method

Call the method that will send the event to the debugger with all the arguments.
public Send ( IDebugEvent2 eventObject, string iidEvent, IDebugThread2 thread ) : void
eventObject IDebugEvent2 Event object to be sent to the debugger.
iidEvent string ID of the event.
thread IDebugThread2 A thread running in a program.
return void