Public Member Functions | Static Public Member Functions | Static Protected Attributes

H5::Exception Class Reference

List of all members.

Public Member Functions

Static Public Member Functions

Static Protected Attributes


Constructor & Destructor Documentation

H5::Exception::Exception ( const H5std_string &  func_name,
const H5std_string &  message = DEFAULT_MSG 
)

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 ( const Exception orig  ) 

Copy constructor: makes a copy of the original Exception object.

Parameters:
orig - IN: Exception instance to copy

Member Function Documentation

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).

References Exception().

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

References Exception().

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
H5std_string H5::Exception::getDetailMsg (  )  const

Returns the detailed message set at the time the exception is thrown.

Returns:
Text message - H5std_string

Referenced by H5::PropList::copy(), H5::DataType::copy(), H5::DataSpace::copy(), H5::DataSet::DataSet(), H5::DataType::DataType(), H5::H5Object::dereference(), H5::AbstractDs::getArrayType(), H5::AbstractDs::getCompType(), H5::AbstractDs::getDataType(), H5::AbstractDs::getEnumType(), H5::H5Object::getFileName(), H5::H5File::getFileName(), H5::AbstractDs::getFloatType(), H5::AbstractDs::getIntType(), H5::CompType::getMemberArrayType(), H5::CompType::getMemberCompType(), H5::CompType::getMemberDataType(), H5::CompType::getMemberEnumType(), H5::CompType::getMemberFloatType(), H5::CompType::getMemberIntType(), H5::CompType::getMemberStrType(), H5::CompType::getMemberVarLenType(), H5::Group::getObjType(), H5::H5File::getObjType(), H5::DataType::getObjType(), H5::DataSet::getObjType(), H5::Group::getRegion(), H5::H5File::getRegion(), H5::DataType::getRegion(), H5::DataSet::getRegion(), H5::AbstractDs::getStrType(), H5::AbstractDs::getTypeClass(), H5::AbstractDs::getVarLenType(), H5::Group::Group(), H5::IdComponent::operator=(), H5::PropList::p_setId(), H5::Group::p_setId(), H5::H5File::p_setId(), H5::DataType::p_setId(), H5::DataSpace::p_setId(), H5::DataSet::p_setId(), H5::Attribute::p_setId(), H5::H5Object::reference(), H5::H5File::reference(), H5::H5File::reOpen(), H5::Attribute::~Attribute(), H5::DataSet::~DataSet(), H5::DataSpace::~DataSpace(), H5::DataType::~DataType(), H5::Group::~Group(), H5::H5File::~H5File(), and H5::PropList::~PropList().

H5std_string H5::Exception::getFuncName (  )  const

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]

Prints the error stack in a default manner.

Parameters:
stream - IN: File pointer
Examples:
chunks.cpp, compound.cpp, create.cpp, extend_ds.cpp, h5group.cpp, readdata.cpp, and writedata.cpp.

References Exception().

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

References Exception().

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;         //class ID
     hid_t       maj_num;        //major error ID
     hid_t       min_num;        //minor error number
     const char  *func_name;     //function in which error occurred
     const char  *file_name;     //file in which error occurred
     unsigned    line;           //line in file where error occurs
     const char  *desc;          //optional supplied description
 } H5E_error2_t;

References Exception().