00001 #ifndef _DemangleWrapper_h_ 00002 #define _DemangleWrapper_h_ 00003 00004 #include <Base.h> 00005 00006 class DemangleWrapper { 00007 private: 00008 char* demangled; 00009 char* demangle_gnu(char* ptr); 00010 char* demangle_native(char* ptr); 00011 public: 00012 DemangleWrapper() : demangled(NULL) {} 00013 ~DemangleWrapper() { if(demangled) free(demangled); } 00014 static void init(); 00015 static void dest(); 00016 char* demangle_combined(char* ptr,const char** which=NULL); 00017 }; 00018 00019 #endif