isce3
0.1.0
Main Page
Related Pages
Namespaces
Classes
Files
Python classes
Issue Tracker
File List
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Pages
isce
cxx
isce3
except
Error.h
1
#pragma once
2
3
#include <stdexcept>
4
#include <string>
5
6
namespace
isce3 {
8
namespace
except {
9
10
struct
SrcInfo
{
11
const
char
* file;
12
const
int
line;
13
const
char
* func;
14
};
15
16
// macro-expanded pseudo-constructors
17
#define ISCE_SRCINFO() { __FILE__, __LINE__, __PRETTY_FUNCTION__ }
18
#define ISCE_ERROR(T, str) isce3::except::Error<T>(ISCE_SRCINFO(), str)
19
20
template
<
typename
T>
21
class
Error
:
public
T {
22
public
:
23
const
SrcInfo
info;
24
25
Error
(
const
SrcInfo
& info);
26
Error
(
const
SrcInfo
& info, std::string msg);
27
};
28
29
// STL exception types
30
using
DomainError
=
Error<std::domain_error>
;
31
using
InvalidArgument
=
Error<std::invalid_argument>
;
32
using
LengthError
=
Error<std::length_error>
;
33
using
OutOfRange
=
Error<std::out_of_range>
;
34
using
OverflowError
=
Error<std::overflow_error>
;
35
using
RuntimeError
=
Error<std::runtime_error>
;
36
37
// special exception type for errors returned from GDAL API functions
38
using
GDALError
=
Error<std::runtime_error>
;
39
}}
isce3::except::Error
Definition:
Error.h:21
isce3::except::SrcInfo
Definition:
Error.h:10
Generated for ISCE3.0 by
1.8.5.