BALL  1.4.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Static Protected Member Functions | Static Protected Attributes | List of all members
BALL::Exception::GlobalExceptionHandler Class Reference

#include <BALL/COMMON/exception.h>

Public Member Functions

Constructors
 GlobalExceptionHandler ()

Static Public Member Functions

Accessors
static void setName (const String &name)
 Assign the name of the exception. This should agree with the class name.
static void setMessage (const String &message)
 Set the error message.
static void setLine (int line)
 Set the line number the exception was thrown. Should be set to LINE in most cases.
static void setFile (const String &file)
 The source file name where the exception was thrown.
static void set (const String &file, int line, const String &name, const String &message)
 Set all exception attributes.

Static Protected Member Functions

static void terminate ()
 The BALL replacement for terminate.
static void newHandler () throw (Exception::OutOfMemory)
 The BALL new handler.

Static Protected Attributes

static std::string file_
static int line_
static std::string name_
static std::string message_

Detailed Description

Class handling uncaught exception globally.

Definition at line 482 of file COMMON/exception.h.

Constructor & Destructor Documentation

BALL::Exception::GlobalExceptionHandler::GlobalExceptionHandler ( )

Default constructor. This constructor installs the BALL specific handlers for terminate, unexpected, and new_handler. terminate or unexpected are called to abort a program if an exception was not caught or a function exits via an exception that is not allowed by its exception specification. Both functions are replaced by a function of GlobalExceptionHandler that tries to determine the last exception thrown. This mechanism only works, if all exceptions are defrived from GeneralException .

The default new_handler is replaced by newHandler and throws an exception of type OutOfMemory instead of bad_alloc (the default behaviour defined in the ANSI C++ standard).

Member Function Documentation

static void BALL::Exception::GlobalExceptionHandler::newHandler ( ) throw (Exception::OutOfMemory)
staticprotected

The BALL new handler.

static void BALL::Exception::GlobalExceptionHandler::set ( const String file,
int  line,
const String name,
const String message 
)
static

Set all exception attributes.

static void BALL::Exception::GlobalExceptionHandler::setFile ( const String file)
static

The source file name where the exception was thrown.

static void BALL::Exception::GlobalExceptionHandler::setLine ( int  line)
static

Set the line number the exception was thrown. Should be set to LINE in most cases.

static void BALL::Exception::GlobalExceptionHandler::setMessage ( const String message)
static

Set the error message.

static void BALL::Exception::GlobalExceptionHandler::setName ( const String name)
static

Assign the name of the exception. This should agree with the class name.

static void BALL::Exception::GlobalExceptionHandler::terminate ( )
staticprotected

The BALL replacement for terminate.

Member Data Documentation

std::string BALL::Exception::GlobalExceptionHandler::file_
staticprotected

Definition at line 538 of file COMMON/exception.h.

int BALL::Exception::GlobalExceptionHandler::line_
staticprotected

Definition at line 539 of file COMMON/exception.h.

std::string BALL::Exception::GlobalExceptionHandler::message_
staticprotected

Definition at line 541 of file COMMON/exception.h.

std::string BALL::Exception::GlobalExceptionHandler::name_
staticprotected

Definition at line 540 of file COMMON/exception.h.