TPIE

2362a60
exception.h
1 // -*- mode: c++; tab-width: 4; indent-tabs-mode: t; eval: (progn (c-set-style "stroustrup") (c-set-offset 'innamespace 0)); -*-
2 // vi:set ts=4 sts=4 sw=4 noet :
3 // Copyright 2012, The TPIE development team
4 //
5 // This file is part of TPIE.
6 //
7 // TPIE is free software: you can redistribute it and/or modify it under
8 // the terms of the GNU Lesser General Public License as published by the
9 // Free Software Foundation, either version 3 of the License, or (at your
10 // option) any later version.
11 //
12 // TPIE is distributed in the hope that it will be useful, but WITHOUT ANY
13 // WARRANTY; without even the implied warranty of MERCHANTABILITY or
14 // FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
15 // License for more details.
16 //
17 // You should have received a copy of the GNU Lesser General Public License
18 // along with TPIE. If not, see <http://www.gnu.org/licenses/>
19 
20 #ifndef __TPIE_PIPELINING_EXCEPTION_H__
21 #define __TPIE_PIPELINING_EXCEPTION_H__
22 
23 #include <tpie/exception.h>
24 
25 namespace tpie {
26 
28 public:
29  inline merge_sort_not_ready() : tpie::exception("Merge sort did not have memory assigned") {}
30 };
31 
32 namespace pipelining {
33 
35 public:
36  inline not_initiator_node() : tpie::exception("Not an initiator node") {}
37 };
38 
40 public:
41  no_initiator_node() : tpie::exception("Phase has no initiator node") {}
42 };
43 
45 public:
46  inline virtual_chunk_not_ready() : tpie::exception("Virtual receiver is missing a destination") {}
47 };
48 
50 public:
51  inline virtual_chunk_missing_begin() : tpie::exception("Virtual begin chunk contains no pipes") {}
52 };
53 
55 public:
56  inline virtual_chunk_missing_middle() : tpie::exception("Virtual middle chunk contains no pipes, and input type is not output type") {}
57 };
58 
60 public:
61  inline virtual_chunk_missing_end() : tpie::exception("Virtual end chunk contains no pipes") {}
62 };
63 
65 public:
66  non_authoritative_node_map() : tpie::exception("Non-authoritative node map") {}
67 };
68 
70 public:
71  call_order_exception(std::string msg): tpie::exception(msg) {}
72 };
73 
74 } // namespace pipelining
75 
76 } // namespace tpie
77 
78 #endif // __TPIE_PIPELINING_EXCEPTION_H__
Exception classes.