00001 #ifndef _Q_DIANA_GSL_HH_ 00002 #define _Q_DIANA_GSL_HH_ 00003 00004 #include <setjmp.h> 00005 #include "QError.hh" 00013 class QGSL 00014 { 00015 public: 00016 static QGSL& GetInstance(); 00017 void InitErrorHandler(); 00018 void TurnOffErrorHandler(); 00019 void TurnOnErrorHandler(); 00020 virtual ~QGSL(); 00021 00022 private: 00023 static void ErrorHandler(const char * reason, const char * file, int line, int gsl_errno); 00024 QGSL(); 00025 static jmp_buf fMark; 00026 static QError* fError; 00027 }; 00028 00029 00030 #endif