OGRE  13.6
Object-Oriented Graphics Rendering Engine
Ogre::Exception Class Reference

When thrown, provides information about an error that has occurred inside the engine. More...

#include <OgreException.h>

+ Inheritance diagram for Ogre::Exception:

Public Types

enum  ExceptionCodes {
  ERR_CANNOT_WRITE_TO_FILE , ERR_INVALID_STATE , ERR_INVALIDPARAMS , ERR_RENDERINGAPI_ERROR ,
  ERR_DUPLICATE_ITEM , ERR_ITEM_NOT_FOUND = ERR_DUPLICATE_ITEM , ERR_FILE_NOT_FOUND , ERR_INTERNAL_ERROR ,
  ERR_RT_ASSERTION_FAILED , ERR_NOT_IMPLEMENTED , ERR_INVALID_CALL
}
 Static definitions of error codes. More...
 

Public Member Functions

 Exception (const Exception &rhs)
 Copy constructor. More...
 
 Exception (int number, const String &description, const String &source)
 Default constructor. More...
 
 Exception (int number, const String &description, const String &source, const char *type, const char *file, long line)
 Advanced constructor. More...
 
 ~Exception () throw ()
 Needed for compatibility with std::exception. More...
 
const StringgetDescription (void) const
 Returns a string with only the 'description' field of this exception. More...
 
const char * getFile () const
 Gets source file name. More...
 
const StringgetFullDescription (void) const
 Returns a string with the full description of this error. More...
 
long getLine () const
 Gets line number. More...
 
const StringgetSource () const
 Gets the source function. More...
 
const char * what () const override throw ()
 

Detailed Description

When thrown, provides information about an error that has occurred inside the engine.

Remarks
OGRE never uses return values to indicate errors. Instead, if an error occurs, an exception is thrown, and this is the object that encapsulates the detail of the problem. The application using OGRE should always ensure that the exceptions are caught, so all OGRE engine functions should occur within a try{} catch(Ogre::Exception& e) {} block.
The user application should never create any instances of this object unless it wishes to unify its error handling using the same object.

Member Enumeration Documentation

◆ ExceptionCodes

Static definitions of error codes.

Enumerator
ERR_CANNOT_WRITE_TO_FILE 
ERR_INVALID_STATE 
ERR_INVALIDPARAMS 
ERR_RENDERINGAPI_ERROR 
ERR_DUPLICATE_ITEM 
ERR_ITEM_NOT_FOUND 
ERR_FILE_NOT_FOUND 
ERR_INTERNAL_ERROR 
ERR_RT_ASSERTION_FAILED 
ERR_NOT_IMPLEMENTED 
ERR_INVALID_CALL 

Constructor & Destructor Documentation

◆ Exception() [1/3]

Ogre::Exception::Exception ( int  number,
const String description,
const String source 
)

Default constructor.

◆ Exception() [2/3]

Ogre::Exception::Exception ( int  number,
const String description,
const String source,
const char *  type,
const char *  file,
long  line 
)

Advanced constructor.

◆ Exception() [3/3]

Ogre::Exception::Exception ( const Exception rhs)

Copy constructor.

◆ ~Exception()

Ogre::Exception::~Exception ( )
throw (
)
inline

Needed for compatibility with std::exception.

Member Function Documentation

◆ getFullDescription()

const String& Ogre::Exception::getFullDescription ( void  ) const
inline

Returns a string with the full description of this error.

Remarks
The description contains the error number, the description supplied by the thrower, what routine threw the exception, and will also supply extra platform-specific information where applicable. For example - in the case of a rendering library error, the description of the error will include both the place in which OGRE found the problem, and a text description from the 3D rendering library, if available.

◆ getSource()

const String& Ogre::Exception::getSource ( ) const
inline

Gets the source function.

◆ getFile()

const char* Ogre::Exception::getFile ( ) const
inline

Gets source file name.

◆ getLine()

long Ogre::Exception::getLine ( ) const
inline

Gets line number.

◆ getDescription()

const String& Ogre::Exception::getDescription ( void  ) const
inline

Returns a string with only the 'description' field of this exception.

Use getFullDescriptionto get a full description of the error including line number, error number and what function threw the exception.

◆ what()

const char* Ogre::Exception::what ( ) const
throw (
)
inlineoverride

The documentation for this class was generated from the following file: