BALL  1.4.2
 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. More...
 
static void setMessage (const String &message)
 Set the error message. More...
 
static void setLine (int line)
 Set the line number the exception was thrown. Should be set to LINE in most cases. More...
 
static void setFile (const String &file)
 The source file name where the exception was thrown. More...
 
static void set (const String &file, int line, const String &name, const String &message)
 Set all exception attributes. More...
 

Static Protected Member Functions

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

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 493 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 549 of file COMMON/exception.h.

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

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

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

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

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

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