isce3 0.25.0
Loading...
Searching...
No Matches
Error.h
1#pragma once
2
3#include <stdexcept>
4#include <string>
5
6namespace 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}}
Definition Error.h:21
The isce3::except namespace.
Definition Error.h:8
base interpolator is an abstract base class
Definition BinarySearchFunc.cpp:5
Definition Error.h:10

Generated for ISCE3.0 by doxygen 1.13.2.