00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifndef _SK_UTIL_SYSTEMEXIT_
00010 #define _SK_UTIL_SYSTEMEXIT_
00011
00012 #include <string>
00013 #include <exception>
00014
00015 namespace sk {
00016 namespace util {
00017 class SystemExit
00018 {
00019 public:
00020 SystemExit(int code);
00021 SystemExit(int code, const std::string& message);
00022 SystemExit(const std::string& message);
00023 SystemExit(int code, const std::exception& exception);
00024 SystemExit(const std::exception& exception);
00025
00026 int getCode() const;
00027 const std::string getMessage() const;
00028
00029 private:
00030 int _code;
00031 const std::string _message;
00032 };
00033 }
00034 }
00035
00036 #endif