home *** CD-ROM | disk | FTP | other *** search
-
- #ifndef __Desk_BackTrace_h
- #define __Desk_BackTrace_h
- #include <stdio.h>
- #include "kernel.h"
- #ifdef __cplusplus
- extern "C" {
- #endif
- void Desk_BackTrace_SupportCurrentFrame(_kernel_unwindblock *frame);
- void Desk_BackTrace_OutputToStdErr(void);
- void Desk_BackTrace_OutputToStreamWithPrefix(FILE* stream, const char* prefix);
- typedef int (*Desk_backtrace_printf_fn)(void* reference, const char* format, ...);
- void Desk_BackTrace_OutputToFFunctionWithPrefix(Desk_backtrace_printf_fn fn, void* reference, const char* prefix);
- extern unsigned int Desk_BackTrace_GetPC(void);
- extern unsigned int Desk_BackTrace_GetSL(void);
- #define Desk_BackTrace_GetPC2() ((void*) (Desk_BackTrace_GetPC() & (0x3fffffc)))
- int Desk_BackTrace_GetNestingDepth(void);
- typedef struct {
- int n;
- unsigned int** functions;
- }
- Desk_BackTrace_functionlist;
- #define Desk_BackTrace_MAXFNS 256
- const Desk_BackTrace_functionlist* Desk_BackTrace_GetCurrentFunctions(void);
- const char* Desk_BackTrace_GetFunctionName(const void* ptr);
- #ifdef __cplusplus
- }
- #endif
- #endif
-