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

#include <BALL/COMMON/exception.h>

Inheritance diagram for BALL::Exception::GeneralException:
BALL::Bit::IllegalOperation BALL::Bond::NotBound BALL::Client::InvalidClient BALL::Client::NoPersistentObject BALL::EnumeratorIndex::IncompatibleIndex BALL::Exception::BufferOverflow BALL::Exception::CUDAError BALL::Exception::DivisionByZero BALL::Exception::FileNotFound BALL::Exception::FormatUnsupported BALL::Exception::IllegalPosition BALL::Exception::IllegalSelfOperation BALL::Exception::IllegalTreeOperation BALL::Exception::IncompatibleIterators BALL::Exception::IndexOverflow BALL::Exception::IndexUnderflow BALL::Exception::InvalidArgument BALL::Exception::InvalidFormat BALL::Exception::InvalidIterator BALL::Exception::InvalidOption BALL::Exception::InvalidRange BALL::Exception::InvalidSize BALL::Exception::NoBufferAvailable BALL::Exception::NotImplemented BALL::Exception::NotInitialized BALL::Exception::NullPointer BALL::Exception::OutOfGrid BALL::Exception::OutOfMemory BALL::Exception::OutOfRange BALL::Exception::ParseError BALL::Exception::Postcondition BALL::Exception::Precondition BALL::Exception::SizeUnderflow BALL::Exception::TooManyBonds BALL::Exception::TooManyErrors BALL::File::CannotWrite BALL::FragmentDB::NoFragmentNode BALL::GRAPH::IllegalStateException BALL::GRAPH::UnconnectedGraphException BALL::HashMap< Key, T >::IllegalKey BALL::HashSet< Key >::IllegalKey BALL::QSAR::Exception::ConfigurationReadingError BALL::QSAR::Exception::FeatureSelectionParameterError BALL::QSAR::Exception::InconsistentUsage BALL::QSAR::Exception::InvalidActivityID BALL::QSAR::Exception::KernelParameterError BALL::QSAR::Exception::ModelParameterError BALL::QSAR::Exception::NoPCAVariance BALL::QSAR::Exception::PropertyError BALL::QSAR::Exception::SingularMatrixError BALL::QSAR::Exception::TooManyPLSComponents BALL::QSAR::Exception::WrongDataType BALL::QSAR::Exception::WrongFileFormat BALL::RMSDMinimizer::IncompatibleCoordinateSets BALL::RMSDMinimizer::TooFewCoordinates BALL::Substring::InvalidSubstring BALL::Substring::UnboundSubstring BALL::VIEW::ColorUnit::NotInHexFormat BALL::VIEW::GLDisplayList::DisplayListRedeclaration BALL::VIEW::GLDisplayList::NestedDisplayList BALL::VIEW::GLDisplayList::NoDisplayListAvailable BALL::VIEW::GLRenderer::WrongModes BALL::VIEW::ServerWidget::NotCompositeObject

Public Member Functions

Constructors and Destructors
 GeneralException ()
 Default constructor. More...
 
 GeneralException (const char *file, int line)
 Constructor. More...
 
 GeneralException (const char *file, int line, const String &name, const String &message)
 Constructor. More...
 
 GeneralException (const GeneralException &exception)
 Copy constructor. More...
 
virtual ~GeneralException () throw ()
 Destructor. More...
 
Accessors
const char * getName () const
 Returns the name of the exception. More...
 
const char * getMessage () const
 Returns the error message of the exception. More...
 
void setMessage (const std::string &message)
 Modify the exception's error message. More...
 
int getLine () const
 Returns the line number where it occured. More...
 
const char * getFile () const
 Returns the file where it occured. More...
 

Protected Attributes

const char * file_
 
int line_
 
std::string name_
 
std::string message_
 

Detailed Description

General exception class. This class is intended as a base class for all other exceptions. Each exception class should define a constructor taking a string and an int as parameters. These two values are interpreted as the current filename and line number and is usually printed in case of an uncaught exception. To support this feature, each throw directive should look as follows:

throw Exception::GeneralException(FILE, LINE);
__FILE__ and __LINE__ are built-in preprocessor macros that hold the desired information.
BALL provides its own terminate handler. This handler extracts as much information as possible from the exception, prints it to cerr and Log , and finally calls exits the program cleanly (with exit code 1). This can be rather inconvenient for debugging, since you are told where the exception was thrown, but in general you do not know anything about the context. Therefore terminate can also create a core dump. Using a debugger (e.g. dbx or gdb) you can then create a stack traceback. To create a core dump, you should set the environment variable BALL_DUMP_CORE to any (non empty) value.

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

Constructor & Destructor Documentation

BALL::Exception::GeneralException::GeneralException ( )

Default constructor.

BALL::Exception::GeneralException::GeneralException ( const char *  file,
int  line 
)

Constructor.

BALL::Exception::GeneralException::GeneralException ( const char *  file,
int  line,
const String name,
const String message 
)

Constructor.

BALL::Exception::GeneralException::GeneralException ( const GeneralException exception)

Copy constructor.

virtual BALL::Exception::GeneralException::~GeneralException ( )
throw (
)
virtual

Destructor.

Member Function Documentation

const char* BALL::Exception::GeneralException::getFile ( ) const

Returns the file where it occured.

int BALL::Exception::GeneralException::getLine ( ) const

Returns the line number where it occured.

const char* BALL::Exception::GeneralException::getMessage ( ) const

Returns the error message of the exception.

const char* BALL::Exception::GeneralException::getName ( ) const

Returns the name of the exception.

void BALL::Exception::GeneralException::setMessage ( const std::string &  message)

Modify the exception's error message.

Member Data Documentation

const char* BALL::Exception::GeneralException::file_
protected

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

int BALL::Exception::GeneralException::line_
protected

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

std::string BALL::Exception::GeneralException::message_
protected

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

std::string BALL::Exception::GeneralException::name_
protected

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