153446ebfSIngo Weinhold /* 253446ebfSIngo Weinhold * Copyright 2010, Ingo Weinhold, ingo_weinhold@gmx.de. 353446ebfSIngo Weinhold * Distributed under the terms of the MIT License. 453446ebfSIngo Weinhold */ 553446ebfSIngo Weinhold #ifndef _DEBUG_MESSAGE_HANDLER_H 653446ebfSIngo Weinhold #define _DEBUG_MESSAGE_HANDLER_H 753446ebfSIngo Weinhold 853446ebfSIngo Weinhold 953446ebfSIngo Weinhold #include <debugger.h> 1053446ebfSIngo Weinhold 1153446ebfSIngo Weinhold 1253446ebfSIngo Weinhold class BDebugMessageHandler { 1353446ebfSIngo Weinhold public: 1453446ebfSIngo Weinhold virtual ~BDebugMessageHandler(); 1553446ebfSIngo Weinhold 1653446ebfSIngo Weinhold virtual bool HandleDebugMessage(int32 messageCode, 1753446ebfSIngo Weinhold const debug_debugger_message_data& message); 1853446ebfSIngo Weinhold 1953446ebfSIngo Weinhold virtual bool HandleThreadDebugged( 2053446ebfSIngo Weinhold const debug_thread_debugged& message); 2153446ebfSIngo Weinhold virtual bool HandleDebuggerCall( 2253446ebfSIngo Weinhold const debug_debugger_call& message); 2353446ebfSIngo Weinhold virtual bool HandleBreakpointHit( 2453446ebfSIngo Weinhold const debug_breakpoint_hit& message); 2553446ebfSIngo Weinhold virtual bool HandleWatchpointHit( 2653446ebfSIngo Weinhold const debug_watchpoint_hit& message); 2753446ebfSIngo Weinhold virtual bool HandleSingleStep( 2853446ebfSIngo Weinhold const debug_single_step& message); 2953446ebfSIngo Weinhold virtual bool HandlePreSyscall( 3053446ebfSIngo Weinhold const debug_pre_syscall& message); 3153446ebfSIngo Weinhold virtual bool HandlePostSyscall( 3253446ebfSIngo Weinhold const debug_post_syscall& message); 3353446ebfSIngo Weinhold virtual bool HandleSignalReceived( 3453446ebfSIngo Weinhold const debug_signal_received& message); 3553446ebfSIngo Weinhold virtual bool HandleExceptionOccurred( 3653446ebfSIngo Weinhold const debug_exception_occurred& message); 3753446ebfSIngo Weinhold virtual bool HandleTeamCreated( 3853446ebfSIngo Weinhold const debug_team_created& message); 3953446ebfSIngo Weinhold virtual bool HandleTeamDeleted( 4053446ebfSIngo Weinhold const debug_team_deleted& message); 4153446ebfSIngo Weinhold virtual bool HandleTeamExec( 4253446ebfSIngo Weinhold const debug_team_exec& message); 4353446ebfSIngo Weinhold virtual bool HandleThreadCreated( 4453446ebfSIngo Weinhold const debug_thread_created& message); 4553446ebfSIngo Weinhold virtual bool HandleThreadDeleted( 4653446ebfSIngo Weinhold const debug_thread_deleted& message); 4753446ebfSIngo Weinhold virtual bool HandleImageCreated( 4853446ebfSIngo Weinhold const debug_image_created& message); 4953446ebfSIngo Weinhold virtual bool HandleImageDeleted( 5053446ebfSIngo Weinhold const debug_image_deleted& message); 5153446ebfSIngo Weinhold virtual bool HandleProfilerUpdate( 5253446ebfSIngo Weinhold const debug_profiler_update& message); 5353446ebfSIngo Weinhold virtual bool HandleHandedOver( 5453446ebfSIngo Weinhold const debug_handed_over& message); 55*64d5a0a4SIngo Weinhold 56*64d5a0a4SIngo Weinhold virtual bool UnhandledDebugMessage(int32 messageCode, 57*64d5a0a4SIngo Weinhold const debug_debugger_message_data& message); 5853446ebfSIngo Weinhold }; 5953446ebfSIngo Weinhold 6053446ebfSIngo Weinhold 6153446ebfSIngo Weinhold #endif // _DEBUG_MESSAGE_HANDLER_H 62