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
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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__