Classes | Defines | Functions
contrib/mul/mbl/mbl_exception.h File Reference

Exceptions thrown by mbl, and a mechanism for turning them off. More...

#include <vcl_string.h>
#include <vcl_cstdlib.h>
#include <vcl_iostream.h>

Go to the source code of this file.

Classes

class  mbl_exception_no_name_in_factory
 Indicates that mbl_cloneables_factory has not heard of value name. More...
class  mbl_exception_abort
 General purpose - a replacement for vcl_abort. More...
class  mbl_exception_parse_error
 Indicates a problem whilst parsing text configuration data. More...
class  mbl_exception_parse_file_error
 Indicates a problem whilst parsing a file. More...
class  mbl_exception_inconsistent_external_data
 Data from two sources or files was inconsistent. More...
class  mbl_exception_missing_property
 Indicates that an expected property label was missing. More...
class  mbl_exception_unused_props
 Indicates that mbl_exception_look_for_unused_props found some unused properties. More...
class  mbl_exception_read_props_parse_error
 Indicates a problem whilst parsing text configuration data into an mbl_read_props object. More...
class  mbl_exception_parse_block_parse_error
 Indicates a problem whilst parsing a block of text configuration data. More...
class  mbl_exception_os_error
 Indicates a problem reported during an OS call. More...

Defines

#define MACRO(E)

Functions

template<class T >
void mbl_exception_error (T exception)
 Throw an exception indicating a real problem.
template<class T >
void mbl_exception_warning (T exception)
 Throw an exception indicating a potential problem.
void mbl_exception_throw_os_error (const vcl_string &filename, const vcl_string &additional_comment="")
 Throw mbl_exception_os_error or one of its derivatives, based on errno.
 MACRO (mbl_exception_os_no_such_file_or_directory)
 MACRO (mbl_exception_os_permission_denied)
 MACRO (mbl_exception_os_file_exists)
 MACRO (mbl_exception_os_not_a_directory)
 MACRO (mbl_exception_os_is_a_directory)
 MACRO (mbl_exception_os_no_space_left_on_device)
 MACRO (mbl_exception_os_invalid_value)

Detailed Description

Exceptions thrown by mbl, and a mechanism for turning them off.

Author:
Ian Scott.

Definition in file mbl_exception.h.


Define Documentation

#define MACRO (   E)
Value:
class E : public mbl_exception_os_error{ public: \
  E (int err_no, const vcl_string &file_name, const vcl_string &comment=""): \
    mbl_exception_os_error(err_no, file_name, comment) {} }

Definition at line 361 of file mbl_exception.h.


Function Documentation

MACRO ( mbl_exception_os_no_such_file_or_directory  )
MACRO ( mbl_exception_os_permission_denied  )
MACRO ( mbl_exception_os_file_exists  )
MACRO ( mbl_exception_os_not_a_directory  )
MACRO ( mbl_exception_os_is_a_directory  )
MACRO ( mbl_exception_os_no_space_left_on_device  )
MACRO ( mbl_exception_os_invalid_value  )
template<class T >
void mbl_exception_error ( exception)

Throw an exception indicating a real problem.

If exceptions have been disabled, this function may abort.

Definition at line 20 of file mbl_exception.h.

void mbl_exception_throw_os_error ( const vcl_string &  filename,
const vcl_string &  additional_comment = "" 
)

Throw mbl_exception_os_error or one of its derivatives, based on errno.

If exceptions are disabled, this behaves like mbl_exception_warning() above.

Definition at line 90 of file mbl_exception.cxx.

template<class T >
void mbl_exception_warning ( exception)

Throw an exception indicating a potential problem.

If exceptions have been disabled, this function may return.

Definition at line 34 of file mbl_exception.h.