00001 00010 #include "eleve/config.hpp" 00011 00015 00016 namespace eepgwde { namespace daemon { 00017 int watcher = 0; 00018 }} 00019 00021 #define CHECK_DOWNCAST(Derived,Description) { \ 00022 boost::shared_ptr<Derived> hd = boost::dynamic_pointer_cast<Derived>(h); \ 00023 if (hd) \ 00024 return Description; \ 00025 } 00026 00027 #ifdef HAVE___CXA_DEMANGLE 00028 00029 #include <cxxabi.h> 00030 00031 extern "C" { 00033 const char* demangle(const char* name) 00034 { 00035 static char buf[1024]; 00036 unsigned int size=1024; 00037 int status = -1; 00038 char* res = __cxxabiv1::__cxa_demangle (name, 00039 buf, 00040 &size, 00041 &status); 00042 return res; 00043 } 00044 00045 } 00046 #else 00047 extern "C" { 00048 const char* demangle(const char* name) 00049 { 00050 return name; 00051 } 00052 } 00053 #endif 00054