13#if !defined(Magick_Exception_header)
14#define Magick_Exception_header
16#include "Magick++/Include.h"
22 class MagickPPExport Exception:
public std::exception
27 Exception(
const std::string& what_);
30 Exception(
const std::string& what_, Exception* nested_);
33 Exception(
const Exception& original_);
36 virtual ~Exception()
throw();
39 Exception& operator=(
const Exception& original_);
42 virtual const char* what()
const throw();
45 const Exception* nested()
const throw();
53 void nested(Exception* nested_)
throw();
64 class MagickPPExport Error:
public Exception
67 explicit Error(
const std::string& what_);
68 explicit Error(
const std::string& what_,Exception *nested_);
72 class MagickPPExport ErrorBlob:
public Error
75 explicit ErrorBlob(
const std::string& what_);
76 explicit ErrorBlob(
const std::string& what_,
Exception *nested_);
80 class MagickPPExport ErrorCache:
public Error
83 explicit ErrorCache(
const std::string& what_);
84 explicit ErrorCache(
const std::string& what_,
Exception *nested_);
85 ~ErrorCache()
throw();
88 class MagickPPExport ErrorCoder:
public Error
91 explicit ErrorCoder(
const std::string& what_);
92 explicit ErrorCoder(
const std::string& what_,
Exception *nested_);
93 ~ErrorCoder()
throw();
96 class MagickPPExport ErrorConfigure:
public Error
99 explicit ErrorConfigure(
const std::string& what_);
100 explicit ErrorConfigure(
const std::string& what_,
Exception *nested_);
101 ~ErrorConfigure()
throw();
104 class MagickPPExport ErrorCorruptImage:
public Error
107 explicit ErrorCorruptImage(
const std::string& what_);
108 explicit ErrorCorruptImage(
const std::string& what_,
Exception *nested_);
109 ~ErrorCorruptImage()
throw();
112 class MagickPPExport ErrorDelegate:
public Error
115 explicit ErrorDelegate(
const std::string& what_);
116 explicit ErrorDelegate(
const std::string& what_,
Exception *nested_);
117 ~ErrorDelegate()
throw();
120 class MagickPPExport ErrorDraw:
public Error
123 explicit ErrorDraw(
const std::string& what_);
124 explicit ErrorDraw(
const std::string& what_,
Exception *nested_);
125 ~ErrorDraw()
throw();
128 class MagickPPExport ErrorFileOpen:
public Error
131 explicit ErrorFileOpen(
const std::string& what_);
132 explicit ErrorFileOpen(
const std::string& what_,
Exception *nested_);
133 ~ErrorFileOpen()
throw();
136 class MagickPPExport ErrorImage:
public Error
139 explicit ErrorImage(
const std::string& what_);
140 explicit ErrorImage(
const std::string& what_,
Exception *nested_);
141 ~ErrorImage()
throw();
144 class MagickPPExport ErrorMissingDelegate:
public Error
147 explicit ErrorMissingDelegate(
const std::string& what_);
148 explicit ErrorMissingDelegate(
const std::string& what_,
Exception *nested_);
149 ~ErrorMissingDelegate()
throw();
152 class MagickPPExport ErrorModule:
public Error
155 explicit ErrorModule(
const std::string& what_);
156 explicit ErrorModule(
const std::string& what_,
Exception *nested_);
157 ~ErrorModule()
throw();
160 class MagickPPExport ErrorMonitor:
public Error
163 explicit ErrorMonitor(
const std::string& what_);
164 explicit ErrorMonitor(
const std::string& what_,
Exception *nested_);
165 ~ErrorMonitor()
throw();
168 class MagickPPExport ErrorOption:
public Error
171 explicit ErrorOption(
const std::string& what_);
172 explicit ErrorOption(
const std::string& what_,
Exception *nested_);
173 ~ErrorOption()
throw();
176 class MagickPPExport ErrorPolicy:
public Error
179 explicit ErrorPolicy(
const std::string& what_);
180 explicit ErrorPolicy(
const std::string& what_,
Exception *nested_);
181 ~ErrorPolicy()
throw();
184 class MagickPPExport ErrorRegistry:
public Error
187 explicit ErrorRegistry(
const std::string& what_);
188 explicit ErrorRegistry(
const std::string& what_,
Exception *nested_);
189 ~ErrorRegistry()
throw();
192 class MagickPPExport ErrorResourceLimit:
public Error
195 explicit ErrorResourceLimit(
const std::string& what_);
196 explicit ErrorResourceLimit(
const std::string& what_,
Exception *nested_);
197 ~ErrorResourceLimit()
throw();
200 class MagickPPExport ErrorStream:
public Error
203 explicit ErrorStream(
const std::string& what_);
204 explicit ErrorStream(
const std::string& what_,
Exception *nested_);
205 ~ErrorStream()
throw();
208 class MagickPPExport ErrorType:
public Error
211 explicit ErrorType(
const std::string& what_);
212 explicit ErrorType(
const std::string& what_,
Exception *nested_);
213 ~ErrorType()
throw();
216 class MagickPPExport ErrorUndefined:
public Error
219 explicit ErrorUndefined(
const std::string& what_);
220 explicit ErrorUndefined(
const std::string& what_,
Exception *nested_);
221 ~ErrorUndefined()
throw();
224 class MagickPPExport ErrorXServer:
public Error
227 explicit ErrorXServer(
const std::string& what_);
228 explicit ErrorXServer(
const std::string& what_,
Exception *nested_);
229 ~ErrorXServer()
throw();
236 class MagickPPExport Warning:
public Exception
239 explicit Warning(
const std::string& what_);
240 explicit Warning(
const std::string& what_,Exception *nested_);
244 class MagickPPExport WarningBlob:
public Warning
247 explicit WarningBlob(
const std::string& what_);
248 explicit WarningBlob(
const std::string& what_,
Exception *nested_);
249 ~WarningBlob()
throw();
252 class MagickPPExport WarningCache:
public Warning
255 explicit WarningCache(
const std::string& what_);
256 explicit WarningCache(
const std::string& what_,
Exception *nested_);
257 ~WarningCache()
throw();
260 class MagickPPExport WarningCoder:
public Warning
263 explicit WarningCoder(
const std::string& what_);
264 explicit WarningCoder(
const std::string& what_,
Exception *nested_);
265 ~WarningCoder()
throw();
268 class MagickPPExport WarningConfigure:
public Warning
271 explicit WarningConfigure(
const std::string& what_);
272 explicit WarningConfigure(
const std::string& what_,
Exception *nested_);
273 ~WarningConfigure()
throw();
276 class MagickPPExport WarningCorruptImage:
public Warning
279 explicit WarningCorruptImage(
const std::string& what_);
280 explicit WarningCorruptImage(
const std::string& what_,
Exception *nested_);
281 ~WarningCorruptImage()
throw();
284 class MagickPPExport WarningDelegate:
public Warning
287 explicit WarningDelegate(
const std::string& what_);
288 explicit WarningDelegate(
const std::string& what_,
Exception *nested_);
289 ~WarningDelegate()
throw();
292 class MagickPPExport WarningDraw :
public Warning
295 explicit WarningDraw(
const std::string& what_);
296 explicit WarningDraw(
const std::string& what_,
Exception *nested_);
297 ~WarningDraw()
throw();
300 class MagickPPExport WarningFileOpen:
public Warning
303 explicit WarningFileOpen(
const std::string& what_);
304 explicit WarningFileOpen(
const std::string& what_,
Exception *nested_);
305 ~WarningFileOpen()
throw();
308 class MagickPPExport WarningImage:
public Warning
311 explicit WarningImage(
const std::string& what_);
312 explicit WarningImage(
const std::string& what_,
Exception *nested_);
313 ~WarningImage()
throw();
316 class MagickPPExport WarningMissingDelegate:
public Warning
319 explicit WarningMissingDelegate(
const std::string& what_);
320 explicit WarningMissingDelegate(
const std::string& what_,
322 ~WarningMissingDelegate()
throw();
325 class MagickPPExport WarningModule:
public Warning
328 explicit WarningModule(
const std::string& what_);
329 explicit WarningModule(
const std::string& what_,
Exception *nested_);
330 ~WarningModule()
throw();
333 class MagickPPExport WarningMonitor:
public Warning
336 explicit WarningMonitor(
const std::string& what_);
337 explicit WarningMonitor(
const std::string& what_,
Exception *nested_);
338 ~WarningMonitor()
throw();
341 class MagickPPExport WarningOption:
public Warning
344 explicit WarningOption(
const std::string& what_);
345 explicit WarningOption(
const std::string& what_,
Exception *nested_);
346 ~WarningOption()
throw();
349 class MagickPPExport WarningPolicy:
public Warning
352 explicit WarningPolicy(
const std::string& what_);
353 explicit WarningPolicy(
const std::string& what_,
Exception *nested_);
354 ~WarningPolicy()
throw();
357 class MagickPPExport WarningRegistry:
public Warning
360 explicit WarningRegistry(
const std::string& what_);
361 explicit WarningRegistry(
const std::string& what_,
Exception *nested_);
362 ~WarningRegistry()
throw();
365 class MagickPPExport WarningResourceLimit:
public Warning
368 explicit WarningResourceLimit(
const std::string& what_);
369 explicit WarningResourceLimit(
const std::string& what_,
Exception *nested_);
370 ~WarningResourceLimit()
throw();
373 class MagickPPExport WarningStream:
public Warning
376 explicit WarningStream(
const std::string& what_);
377 explicit WarningStream(
const std::string& what_,
Exception *nested_);
378 ~WarningStream()
throw();
381 class MagickPPExport WarningType:
public Warning
384 explicit WarningType(
const std::string& what_);
385 explicit WarningType(
const std::string& what_,
Exception *nested_);
386 ~WarningType()
throw();
389 class MagickPPExport WarningUndefined:
public Warning
392 explicit WarningUndefined(
const std::string& what_);
393 explicit WarningUndefined(
const std::string& what_,
Exception *nested_);
394 ~WarningUndefined()
throw();
397 class MagickPPExport WarningXServer:
public Warning
400 explicit WarningXServer(
const std::string& what_);
401 explicit WarningXServer(
const std::string& what_,
Exception *nested_);
402 ~WarningXServer()
throw();
409 std::string formatExceptionMessage(
410 const MagickCore::ExceptionInfo *exception_);
412 Exception* createException(
const MagickCore::ExceptionInfo *exception_);
415 extern MagickPPExport
void throwExceptionExplicit(
416 const MagickCore::ExceptionType severity_,
const char* reason_,
417 const char* description_=(
char *) NULL);
420 extern MagickPPExport
void throwException(
421 MagickCore::ExceptionInfo *exception_,
const bool quiet_=
false);