PDFxTMDLib  1.0.0
Exception.h
Go to the documentation of this file.
1 #pragma once
2 #include <exception>
3 #include <string>
4 
5 namespace PDFxTMD
6 {
7 class PDFxTMDException : public std::exception
8 {
9  public:
10  explicit PDFxTMDException(const std::string &message) : m_message(message)
11  {
12  }
13  virtual const char *what() const noexcept override
14  {
15  return m_message.c_str();
16  }
17 
18  private:
19  std::string m_message;
20 };
21 
23 {
24  public:
25  explicit FileLoadException(const std::string &fileName)
26  : PDFxTMDException("Failed to load file: " + fileName)
27  {
28  }
29 };
30 
32 {
33  public:
34  explicit OutOfRangeExcecption(const std::string &message)
35  : PDFxTMDException("Out of range exception: " + message)
36  {
37  }
38 };
40 {
41  public:
42  explicit PolicyExeption(const std::string &message)
43  : PDFxTMDException("Policy Exception: " + message)
44  {
45  }
46 };
48 {
49  public:
50  explicit InvalidFormatException(const std::string &message)
51  : PDFxTMDException("Invalid Format Exception: " + message)
52  {
53  }
54 };
56 {
57  public:
58  explicit InvalidInfoFile(const std::string &message)
59  : PDFxTMDException("Invalid Info File: " + message)
60  {
61  }
62 };
64 {
65  public:
66  explicit InitializationError(const std::string &message)
67  : PDFxTMDException("InitializationError: " + message)
68  {
69  }
70 };
72 {
73  public:
74  explicit InvalidInputError(const std::string &message)
75  : PDFxTMDException("Invalid input error: " + message)
76  {
77  }
78 };
80 {
81  public:
82  explicit NotSupportError(const std::string &message)
83  : PDFxTMDException("Not supported error: " + message)
84  {
85  }
86 };
88 {
89  public:
90  explicit NotImplementedError(const std::string &message)
91  : PDFxTMDException("Not implemented error: " + message)
92  {
93  }
94 };
95 
97 {
98  public:
99  explicit MetadataError(const std::string &message)
100  : PDFxTMDException("MetadataError error: " + message)
101  {
102  }
103 };
104 
106 {
107  public:
108  explicit AlphaQCDError(const std::string &message)
109  : PDFxTMDException("AlphaQCD error: " + message)
110  {
111  }
112 };
113 } // namespace PDFxTMD
Definition: Exception.h:106
AlphaQCDError(const std::string &message)
Definition: Exception.h:108
Definition: Exception.h:23
FileLoadException(const std::string &fileName)
Definition: Exception.h:25
Definition: Exception.h:64
InitializationError(const std::string &message)
Definition: Exception.h:66
Definition: Exception.h:48
InvalidFormatException(const std::string &message)
Definition: Exception.h:50
Definition: Exception.h:56
InvalidInfoFile(const std::string &message)
Definition: Exception.h:58
Definition: Exception.h:72
InvalidInputError(const std::string &message)
Definition: Exception.h:74
Definition: Exception.h:97
MetadataError(const std::string &message)
Definition: Exception.h:99
Definition: Exception.h:88
NotImplementedError(const std::string &message)
Definition: Exception.h:90
Definition: Exception.h:80
NotSupportError(const std::string &message)
Definition: Exception.h:82
Definition: Exception.h:32
OutOfRangeExcecption(const std::string &message)
Definition: Exception.h:34
Definition: Exception.h:8
PDFxTMDException(const std::string &message)
Definition: Exception.h:10
virtual const char * what() const noexcept override
Definition: Exception.h:13
Definition: Exception.h:40
PolicyExeption(const std::string &message)
Definition: Exception.h:42
Definition: AllFlavorsShape.h:14