Flow123d  release_3.0.0-966-gb002c76
exc_common.hh
Go to the documentation of this file.
1 /*!
2  *
3  * Copyright (C) 2015 Technical University of Liberec. All rights reserved.
4  *
5  * This program is free software; you can redistribute it and/or modify it under
6  * the terms of the GNU General Public License version 3 as published by the
7  * Free Software Foundation. (http://www.gnu.org/licenses/gpl-3.0.en.html)
8  *
9  * This program is distributed in the hope that it will be useful, but WITHOUT
10  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
11  * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
12  *
13  *
14  * @file exc_common.hh
15  * @brief
16  */
17 
18 #ifndef EXC_COMMON_HH_
19 #define EXC_COMMON_HH_
20 
21 /**
22  * @file
23  *
24  * Common exceptions.
25  */
26 
27 #include <system/exceptions.hh>
28 
29 /**
30  * Assert exception with an string message.
31  */
32 TYPEDEF_ERR_INFO( EI_Message, std::string);
33 TYPEDEF_ERR_INFO( EI_MPI_Rank, int);
34 DECLARE_EXCEPTION( ExcAssertMsg, << "[" << EI_MPI_Rank::val << "] "
35  << "Violated Assert! " << EI_Message::val);
36 
37 /**
38  * General exception with message.
39  * Usage:
40  * THROW( ExcMessage() << EI_Message("Some message.") )
41  */
42 DECLARE_EXCEPTION( ExcMessage, << EI_Message::val);
43 
44 
45 
46 /**
47  * Test of ierr return codes for MPI and PETSc
48  */
49 TYPEDEF_ERR_INFO( EI_ErrCode, int);
50 DECLARE_EXCEPTION( ExcChkErr, << "[" << EI_ErrCode::val << "] ");
51 DECLARE_EXCEPTION( ExcChkErrAssert, << "[" << EI_ErrCode::val << "] ");
52 
53 
54 
55 
56 
57 
58 #endif /* EXC_COMMON_HH_ */
DECLARE_EXCEPTION(ExcAssertMsg,<< "["<< EI_MPI_Rank::val<< "] "<< "Violated Assert! "<< EI_Message::val)
TYPEDEF_ERR_INFO(EI_Message, std::string)