1 /* 2 * Copyright 2008, Ingo Weinhold, ingo_weinhold@gmx.de 3 * Distributed under the terms of the MIT License. 4 */ 5 #ifndef _KERNEL_DEBUG_COMMANDS_H 6 #define _KERNEL_DEBUG_COMMANDS_H 7 8 9 #include <SupportDefs.h> 10 11 12 struct debugger_command { 13 struct debugger_command* next; 14 int (*func)(int, char **); 15 const char* name; 16 const char* description; 17 const char* usage; 18 uint32 flags; 19 }; 20 21 #ifdef __cplusplus 22 extern "C" { 23 #endif 24 25 debugger_command* next_debugger_command(debugger_command* command, 26 const char* prefix, int prefixLen); 27 debugger_command* find_debugger_command(const char* name, bool partialMatch, 28 bool& ambiguous); 29 bool in_command_invocation(void); 30 31 int invoke_debugger_command(struct debugger_command *command, int argc, 32 char** argv); 33 34 debugger_command* get_debugger_commands(); 35 void sort_debugger_commands(); 36 37 #ifdef __cplusplus 38 } // extern "C" 39 #endif 40 41 42 #endif // _KERNEL_DEBUG_COMMANDS_H 43