Exception provides wrappers of HDF5 error handling functions.
More...
#include <H5Exception.h>
|
static void | setAutoPrint (H5E_auto2_t &func, void *client_data) |
| Turns on the automatic error printing. More...
|
|
static void | dontPrint () |
| Turns off the automatic error printing from the C library. More...
|
|
static void | getAutoPrint (H5E_auto2_t &func, void **client_data) |
| Retrieves the current settings for the automatic error stack traversal function and its data. More...
|
|
static void | clearErrorStack () |
| Clears the error stack for the current thread. More...
|
|
static void | walkErrorStack (H5E_direction_t direction, H5E_walk2_t func, void *client_data) |
| Walks the error stack for the current thread, calling the specified function. More...
|
|
|
static const char | DEFAULT_MSG [] = "No detailed information provided" |
|
Exception provides wrappers of HDF5 error handling functions.
Many classes are derived from Exception for specific HDF5 C interfaces.
Creates an exception with the name of the function, in which the failure occurs, and an optional detailed message.
- Parameters
-
func_name | - IN: Name of the function where failure occurs |
message | - IN: Message on the failure |
H5::Exception::Exception |
( |
| ) |
|
H5::Exception::Exception |
( |
const Exception & |
orig | ) |
|
Copy constructor: makes a copy of the original Exception object.
- Parameters
-
H5::Exception::~Exception |
( |
| ) |
|
|
virtual |
void H5::Exception::clearErrorStack |
( |
| ) |
|
|
static |
Clears the error stack for the current thread.
- Description
- The stack is also cleared whenever a C API function is called, with certain exceptions (for instance,
H5Eprint
).
void H5::Exception::dontPrint |
( |
| ) |
|
|
static |
void H5::Exception::getAutoPrint |
( |
H5E_auto2_t & |
func, |
|
|
void ** |
client_data |
|
) |
| |
|
static |
Retrieves the current settings for the automatic error stack traversal function and its data.
- Parameters
-
func | - OUT: Current setting for the function to be called upon an error condition |
client_data | - OUT: Current setting for the data passed to the error function |
const char * H5::Exception::getCDetailMsg |
( |
| ) |
const |
Returns the detailed message set at the time the exception is thrown.
- Returns
- Text message -
char
pointer
const char * H5::Exception::getCFuncName |
( |
| ) |
const |
Returns the name of the function, where the exception is thrown.
- Returns
- Text message -
char
pointer
Returns the detailed message set at the time the exception is thrown.
- Returns
- Text message -
H5std_string
Returns the name of the function, where the exception is thrown.
- Returns
- Text message -
H5std_string
H5std_string H5::Exception::getMajorString |
( |
hid_t |
err_major | ) |
const |
Returns a text string that describes the error specified by a major error number.
- Parameters
-
err_major | - IN: Major error number |
- Returns
- Major error string
- Description
- In the failure case, the string "Invalid major error number" will be returned.
H5std_string H5::Exception::getMinorString |
( |
hid_t |
err_minor | ) |
const |
Returns a text string that describes the error specified by a minor error number.
- Parameters
-
err_minor | - IN: Minor error number |
- Returns
- Minor error string
- Description
- In the failure case, the string "Invalid minor error number" will be returned.
void H5::Exception::printError |
( |
FILE * |
stream = NULL | ) |
const |
|
virtual |
void H5::Exception::setAutoPrint |
( |
H5E_auto2_t & |
func, |
|
|
void * |
client_data |
|
) |
| |
|
static |
Turns on the automatic error printing.
- Parameters
-
func | - IN: Function to be called upon an error condition |
client_data | - IN: Data passed to the error function |
- Description
- When the library is first initialized the auto printing function, func, is set to the C API
H5Eprint
and client_data is the standard error stream pointer, stderr
. Automatic stack traversal is always in the H5E_WALK_DOWNWARD
direction.
- Users are encouraged to write their own more specific error handlers
void H5::Exception::walkErrorStack |
( |
H5E_direction_t |
direction, |
|
|
H5E_walk2_t |
func, |
|
|
void * |
client_data |
|
) |
| |
|
static |
Walks the error stack for the current thread, calling the specified function.
- Parameters
-
direction | - IN: Direction in which the error stack is to be walked |
func | - IN: Function to be called for each error encountered |
client_data | - IN: Data passed to the error function |
- Description
- Valid values for direction include:
H5E_WALK_UPWARD
- begin with the most specific error and end at the API
H5E_WALK_DOWNWARD
- begin at the API and end at the inner-most function where the error was first detected
- The function specified by func will be called for each error in the error stack. The
H5E_walk_t
prototype is as follows: * typedef herr_t (*H5E_walk_t)(int n, H5E_error_t *err_desc, void *client_data)
* int n - Indexed position of the error in the stack; it begins at zero
* regardless of stack traversal direction
* H5E_error_t *err_desc - Pointer to a data structure describing the
* error. This structure is listed below.
* void *client_data - Pointer to client data in the format expected by
* the user-defined function.
*
- Data structure to describe the error:
* typedef struct H5E_error2_t {
* hid_t cls_id;
* hid_t maj_num;
* hid_t min_num;
* const char *func_name;
* const char *file_name;
* unsigned line;
* const char *desc;
* } H5E_error2_t;
*
const char H5::Exception::DEFAULT_MSG = "No detailed information provided" |
|
staticprotected |
The documentation for this class was generated from the following files: