00001 /* 00002 * Copyright (C) 2004 Ivo Danihelka (ivo@danihelka.net) 00003 * 00004 * This program is free software; you can redistribute it and/or modify 00005 * it under the terms of the GNU General Public License as published by 00006 * the Free Software Foundation; either version 2 of the License, or 00007 * (at your option) any later version. 00008 */ 00009 #include "BaseException.h" 00010 00011 #include <string> 00012 00013 //----------------------------------------------------------------- 00014 /** 00015 * Mother of all exception. 00016 * 00017 * @param exinfo detail info about problem 00018 */ 00019 BaseException::BaseException(const ExInfo &exinfo) 00020 : std::exception(), m_info(exinfo) 00021 { 00022 /* empty */ 00023 } 00024 //----------------------------------------------------------------- 00025 /** 00026 * Return text info. 00027 * @return text info, valid with exception live 00028 */ 00029 const char * 00030 BaseException::what() const throw() 00031 { 00032 return m_info.what(); 00033 } 00034 //----------------------------------------------------------------- 00035 /** 00036 * Return detail info. 00037 * @return detail info, valid with exception live 00038 */ 00039 const ExInfo & 00040 BaseException::info() const throw() 00041 { 00042 return m_info; 00043 }