- NAME
- SYNOPSIS
- FUNCTION DESCRIPTIONS

- CatchException
- CopyException
- DestroyExceptionInfo
- GetExceptionInfo
- GetLocaleExceptionMessage
- MagickError
- MagickFatalError
- MagickWarning
- SetErrorHandler
- SetExceptionInfo
- SetFatalErrorHandler
- SetWarningHandler
- ThrowException
- ThrowLoggedException

# NAME

error - Error reporting methods

# SYNOPSIS

CatchException( const ExceptionInfo *exception );

void CopyException( ExceptionInfo *copy, const ExceptionInfo *original );

void DestroyExceptionInfo( ExceptionInfo *exception );

GetExceptionInfo( ExceptionInfo *exception );

const char * GetLocaleExceptionMessage( const ExceptionType severity, const char *tag );

void MagickError( const ExceptionType error, const char *reason, const char *description );

void MagickFatalError( const ExceptionType error, const char *reason, const char *description );

void MagickWarning( const ExceptionType warning, const char *reason, const char *description );

ErrorHandler SetErrorHandler( ErrorHandler handler );

SetExceptionInfo( ExceptionInfo *exception, ExceptionType severity );

ErrorHandler SetWarningHandler( ErrorHandler handler );

void ThrowException( ExceptionInfo *exception, const ExceptionType severity, const char *reason, const char *description );

void ThrowLoggedException( ExceptionInfo *exception, const ExceptionType severity, const char *reason, const char *description, const char *module, const char *function, const unsigned long line;

# FUNCTION DESCRIPTIONS

## CatchException

> CatchException() returns if no exceptions is found otherwise it reports the exception as a warning, error, or fatal depending on the severity.

The format of the CatchException method is:

> CatchException ( const ExceptionInfo *exception );

A description of each parameter follows:

exception:
  The exception info.

## CopyException

> CopyException() copies exception data from one ExceptionInfo structure to another.

The format of the CopyException method is:

> void CopyException ( ExceptionInfo *copy, const ExceptionInfo *original );

A description of each parameter follows:

copy:
  The exception to copy to.

original:
  The exception to copy from.

## DestroyExceptionInfo

> DestroyExceptionInfo() deallocates memory associated with exception.

The format of the DestroyExceptionInfo method is:

> void DestroyExceptionInfo ( ExceptionInfo *exception );

A description of each parameter follows:

exception:
  The exception info.

## GetExceptionInfo

> GetExceptionInfo() initializes an exception to default values.

The format of the GetExceptionInfo method is:

> GetExceptionInfo ( ExceptionInfo *exception );

A description of each parameter follows:

exception:
  The exception info.

## GetLocaleExceptionMessage

> GetLocaleExceptionMessage() converts a enumerated exception severity and tag to a message in the current locale.

The format of the GetLocaleExceptionMessage method is:

> const char *GetLocaleExceptionMessage ( const ExceptionType severity, const char *tag );

A description of each parameter follows:

severity:
  the severity of the exception.

tag:
  the message tag.

## MagickError

Method MagickError calls the error handler methods with an error reason.

The format of the MagickError method is:

> void MagickError ( const ExceptionType error, const char *reason, const char *description );

A description of each parameter follows:

exception:
  Specifies the numeric error category.

reason:
  Specifies the reason to display before terminating the program.

description:
  Specifies any description to the reason.

## MagickFatalError

> MagickFatalError() calls the fatal error handler methods with an error reason.

The format of the MagickError method is:

> void MagickFatalError ( const ExceptionType error, const char *reason, const char *description );

A description of each parameter follows:

exception:
  Specifies the numeric error category.

reason:
  Specifies the reason to display before terminating the program.

description:
  Specifies any description to the reason.

## MagickWarning

Method MagickWarning calls the warning handler methods with a warning reason.

The format of the MagickWarning method is:

> void MagickWarning ( const ExceptionType warning, const char *reason, const char *description );

A description of each parameter follows:

warning:
  The warning severity.

reason:
  Define the reason for the warning.

description:
  Describe the warning.

## SetErrorHandler

> SetErrorHandler() sets the error handler to the specified method and returns the previous error handler.

The format of the SetErrorHandler method is:

> ErrorHandler SetErrorHandler ( ErrorHandler handler );

A description of each parameter follows:

handler:
  The method to handle errors.

## SetExceptionInfo

> SetExceptionInfo() set the exception severity.

The format of the SetExceptionInfo method is:

> SetExceptionInfo ( ExceptionInfo *exception, ExceptionType severity );

A description of each parameter follows:

exception:
  The exception info.

severity:
  The exception severity.

## SetFatalErrorHandler

> SetFatalErrorHandler() sets the fatal error handler to the specified method and returns the previous fatal error handler.

The format of the SetErrorHandler method is:

        ErrorHandler SetErrorHandler(ErrorHandler handler)

A description of each parameter follows:

handler:
  The method to handle errors.

## SetWarningHandler

> SetWarningHandler() sets the warning handler to the specified method and returns the previous warning handler.

The format of the SetWarningHandler method is:

> ErrorHandler SetWarningHandler ( ErrorHandler handler );

A description of each parameter follows:

handler:
  The method to handle warnings.

## ThrowException

> ThrowException() throws an exception with the specified severity code, reason, and optional description.

The format of the ThrowException method is:

> void ThrowException ( ExceptionInfo *exception, const ExceptionType severity, const char *reason, const char *description );

A description of each parameter follows:

exception:
  The exception.

severity:
  The severity of the exception.

reason:
  The reason of the exception.

description:
  The exception description.

## ThrowLoggedException

> ThrowLoggedException() throws an exception with the specified severity code, reason, optional description, source filename, function name, and line number. If logging is enabled, the exception is also logged.

The format of the ThrowLoggedException method is:

     void ThrowLoggedException( ExceptionInfo *exception, const ExceptionType severity, const char *reason, const char *description, const char *module, const char *function, const unsigned long line;

A description of each parameter follows:

exception:
  The exception.

severity:
  The severity of the exception.

reason:
  The reason of the exception.

description:
  The exception description.

filename:
  The source module filename.

function:
  The function name.

line:
  The line number of the source module.