summaryrefslogtreecommitdiffabout
path: root/include/midillo/exception.h
Unidiff
Diffstat (limited to 'include/midillo/exception.h') (more/less context) (ignore whitespace changes)
-rw-r--r--include/midillo/exception.h55
1 files changed, 55 insertions, 0 deletions
diff --git a/include/midillo/exception.h b/include/midillo/exception.h
new file mode 100644
index 0000000..fb6da27
--- a/dev/null
+++ b/include/midillo/exception.h
@@ -0,0 +1,55 @@
1#ifndef __MIDILLO_EXCEPTION_H
2#define __MIDILLO_EXCEPTION_H
3
4#include <konforka/exception.h>
5
6/**
7 * @file
8 * @brief midillo specific exceptions
9 */
10
11namespace midillo {
12 using std::string;
13
14 /**
15 * Base midillo exception class
16 */
17 class exception : public konforka::exception {
18 public:
19 explicit exception(const string& fi,const string& fu,int l,const string& w)
20 : konforka::exception(fi,fu,l,w) { }
21 };
22
23 class exception_io_error : public exception {
24 public:
25 explicit exception_io_error(const string& fi,const string& fu,int l,const string& w)
26 : exception(fi,fu,l,w) { }
27 };
28
29 class exception_input_error : public exception_io_error {
30 public:
31 explicit exception_input_error(const string& fi,const string& fu,int l,const string& w)
32 : exception_io_error(fi,fu,l,w) { }
33 };
34
35 class exception_invalid_input : public exception_input_error {
36 public:
37 explicit exception_invalid_input(const string& fi,const string& fu,int l,const string& w)
38 : exception_input_error(fi,fu,l,w) { }
39 };
40
41 class exception_unexpected_input : public exception_invalid_input {
42 public:
43 explicit exception_unexpected_input(const string& fi,const string& fu,int l,const string& w)
44 : exception_invalid_input(fi,fu,l,w) { }
45 };
46
47 class exception_output_error : public exception_io_error {
48 public:
49 explicit exception_output_error(const string& fi,const string& fu,int l,const string& w)
50 : exception_io_error(fi,fu,l,w) { }
51 };
52
53};
54
55#endif /* __MIDILLO_EXCEPTION_H */