ErrorHandler.cpp

00001 /*
00002  *  Copyright (C) 2010  Regents of the University of Michigan
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 3 of the License, or
00007  *   (at your option) any later version.
00008  *
00009  *   This program is distributed in the hope that it will be useful,
00010  *   but WITHOUT ANY WARRANTY; without even the implied warranty of
00011  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00012  *   GNU General Public License for more details.
00013  *
00014  *   You should have received a copy of the GNU General Public License
00015  *   along with this program.  If not, see <http://www.gnu.org/licenses/>.
00016  */
00017 
00018 #include "ErrorHandler.h"
00019 
00020 #include <stdexcept>
00021 #include <stdlib.h>
00022 
00023 // Constructor
00024 ErrorHandler::ErrorHandler()
00025 {
00026 }
00027 
00028    
00029 // Destructor
00030 ErrorHandler::~ErrorHandler()
00031 {
00032 }
00033 
00034 
00035 void ErrorHandler::handleError(const char* message, 
00036                                HandlingType handlingType)
00037 {
00038     // Check the handling type.
00039     switch(handlingType)
00040     {
00041         case(EXCEPTION):
00042             throw(std::runtime_error(message));
00043             break;
00044         case(ABORT):
00045             std::cerr << message << "\nExiting" << std::endl;
00046             exit(-1);
00047             break;
00048         case(RETURN):
00049             return;
00050             break;
00051         default:
00052             std::cerr << message << "\nUnknown Handle Type: Exiting" 
00053                       << std::endl;
00054             exit(-1);
00055             break;
00056     }
00057 }
00058 
Generated on Wed Nov 17 15:38:27 2010 for StatGen Software by  doxygen 1.6.3