Mercurial > hg > minc-tools
annotate ezminc/minc_io_exceptions.h @ 2631:4cba3cbb796d
fixed mincpic kompilation for CMake
author | Vladimir S. FONOV <vladimir.fonov@gmail.com> |
---|---|
date | Mon, 12 Mar 2012 16:28:43 -0400 |
parents | 345f8c960657 |
children | c09787b85240 |
rev | line source |
---|---|
2552
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
1 /* ----------------------------- MNI Header ----------------------------------- |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
2 @NAME : |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
3 @DESCRIPTION: |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
4 @COPYRIGHT : |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
5 Copyright 2006 Vladimir Fonov, McConnell Brain Imaging Centre, |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
6 Montreal Neurological Institute, McGill University. |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
7 Permission to use, copy, modify, and distribute this |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
8 software and its documentation for any purpose and without |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
9 fee is hereby granted, provided that the above copyright |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
10 notice appear in all copies. The author and McGill University |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
11 make no representations about the suitability of this |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
12 software for any purpose. It is provided "as is" without |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
13 express or implied warranty. |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
14 ---------------------------------------------------------------------------- */ |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
15 #ifndef __EXCPETIONS_H__ |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
16 #define __EXCPETIONS_H__ |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
17 |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
18 #define REPORT_ERROR(MSG) throw minc::generic_error(__FILE__,__LINE__,MSG) |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
19 |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
20 namespace minc |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
21 { |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
22 class generic_error |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
23 { |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
24 public: |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
25 const char *_file; |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
26 int _line; |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
27 const char *_msg; |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
28 int _code; |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
29 public: |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
30 |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
31 generic_error (const char *file, int line, const char *msg = "Error", int code = 0): |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
32 _file (file), _line (line), _msg (msg), _code (code) |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
33 { |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
34 // std::cerr<<"Exception created: "<<_file<<":"<<_line<<" "<<_msg<<std::endl; |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
35 } |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
36 |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
37 const char *file (void) const |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
38 { |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
39 return _file; |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
40 } |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
41 |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
42 const char *msg (void) const |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
43 { |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
44 return _msg; |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
45 } |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
46 |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
47 int line (void) const |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
48 { |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
49 return _line; |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
50 } |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
51 |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
52 int code (void) const |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
53 { |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
54 return _code; |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
55 } |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
56 }; |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
57 }; //minc |
345f8c960657
added ezminc library
Vladimir S. FONOV <vladimir.fonov@gmail.com>
parents:
diff
changeset
|
58 #endif //__EXCPETIONS_H__ |