OGRE  1.7
Object-Oriented Graphics Rendering Engine
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Ogre::ExceptionFactory Class Reference

Class implementing dispatch methods in order to construct by-value exceptions of a derived type based just on an exception code. More...

#include <OgreException.h>

Static Public Member Functions

static UnimplementedException create (ExceptionCodeType< Exception::ERR_NOT_IMPLEMENTED > code, const String &desc, const String &src, const char *file, long line)
 
static FileNotFoundException create (ExceptionCodeType< Exception::ERR_FILE_NOT_FOUND > code, const String &desc, const String &src, const char *file, long line)
 
static IOException create (ExceptionCodeType< Exception::ERR_CANNOT_WRITE_TO_FILE > code, const String &desc, const String &src, const char *file, long line)
 
static InvalidStateException create (ExceptionCodeType< Exception::ERR_INVALID_STATE > code, const String &desc, const String &src, const char *file, long line)
 
static InvalidParametersException create (ExceptionCodeType< Exception::ERR_INVALIDPARAMS > code, const String &desc, const String &src, const char *file, long line)
 
static ItemIdentityException create (ExceptionCodeType< Exception::ERR_ITEM_NOT_FOUND > code, const String &desc, const String &src, const char *file, long line)
 
static ItemIdentityException create (ExceptionCodeType< Exception::ERR_DUPLICATE_ITEM > code, const String &desc, const String &src, const char *file, long line)
 
static InternalErrorException create (ExceptionCodeType< Exception::ERR_INTERNAL_ERROR > code, const String &desc, const String &src, const char *file, long line)
 
static RenderingAPIException create (ExceptionCodeType< Exception::ERR_RENDERINGAPI_ERROR > code, const String &desc, const String &src, const char *file, long line)
 
static RuntimeAssertionException create (ExceptionCodeType< Exception::ERR_RT_ASSERTION_FAILED > code, const String &desc, const String &src, const char *file, long line)
 

Private Member Functions

 ExceptionFactory ()
 Private constructor, no construction. More...
 

Detailed Description

Class implementing dispatch methods in order to construct by-value exceptions of a derived type based just on an exception code.

Remarks
This nicely handles construction of derived Exceptions by value (needed for throwing) without suffering from ambiguity - each code is turned into a distinct type so that methods can be overloaded. This allows OGRE_EXCEPT to stay small in implementation (desirable since it is embedded) whilst still performing rich code-to-type mapping.

Definition at line 260 of file OgreException.h.

Constructor & Destructor Documentation

Ogre::ExceptionFactory::ExceptionFactory ( )
inlineprivate

Private constructor, no construction.

Definition at line 264 of file OgreException.h.

Member Function Documentation

static UnimplementedException Ogre::ExceptionFactory::create ( ExceptionCodeType< Exception::ERR_NOT_IMPLEMENTED code,
const String desc,
const String src,
const char *  file,
long  line 
)
inlinestatic

Definition at line 266 of file OgreException.h.

References Ogre::ExceptionCodeType< num >::number.

static FileNotFoundException Ogre::ExceptionFactory::create ( ExceptionCodeType< Exception::ERR_FILE_NOT_FOUND code,
const String desc,
const String src,
const char *  file,
long  line 
)
inlinestatic

Definition at line 273 of file OgreException.h.

References Ogre::ExceptionCodeType< num >::number.

static IOException Ogre::ExceptionFactory::create ( ExceptionCodeType< Exception::ERR_CANNOT_WRITE_TO_FILE code,
const String desc,
const String src,
const char *  file,
long  line 
)
inlinestatic

Definition at line 280 of file OgreException.h.

References Ogre::ExceptionCodeType< num >::number.

static InvalidStateException Ogre::ExceptionFactory::create ( ExceptionCodeType< Exception::ERR_INVALID_STATE code,
const String desc,
const String src,
const char *  file,
long  line 
)
inlinestatic

Definition at line 287 of file OgreException.h.

References Ogre::ExceptionCodeType< num >::number.

static InvalidParametersException Ogre::ExceptionFactory::create ( ExceptionCodeType< Exception::ERR_INVALIDPARAMS code,
const String desc,
const String src,
const char *  file,
long  line 
)
inlinestatic

Definition at line 294 of file OgreException.h.

References Ogre::ExceptionCodeType< num >::number.

static ItemIdentityException Ogre::ExceptionFactory::create ( ExceptionCodeType< Exception::ERR_ITEM_NOT_FOUND code,
const String desc,
const String src,
const char *  file,
long  line 
)
inlinestatic

Definition at line 301 of file OgreException.h.

References Ogre::ExceptionCodeType< num >::number.

static ItemIdentityException Ogre::ExceptionFactory::create ( ExceptionCodeType< Exception::ERR_DUPLICATE_ITEM code,
const String desc,
const String src,
const char *  file,
long  line 
)
inlinestatic

Definition at line 308 of file OgreException.h.

References Ogre::ExceptionCodeType< num >::number.

static InternalErrorException Ogre::ExceptionFactory::create ( ExceptionCodeType< Exception::ERR_INTERNAL_ERROR code,
const String desc,
const String src,
const char *  file,
long  line 
)
inlinestatic

Definition at line 315 of file OgreException.h.

References Ogre::ExceptionCodeType< num >::number.

static RenderingAPIException Ogre::ExceptionFactory::create ( ExceptionCodeType< Exception::ERR_RENDERINGAPI_ERROR code,
const String desc,
const String src,
const char *  file,
long  line 
)
inlinestatic

Definition at line 322 of file OgreException.h.

References Ogre::ExceptionCodeType< num >::number.

static RuntimeAssertionException Ogre::ExceptionFactory::create ( ExceptionCodeType< Exception::ERR_RT_ASSERTION_FAILED code,
const String desc,
const String src,
const char *  file,
long  line 
)
inlinestatic

Definition at line 329 of file OgreException.h.

References Ogre::ExceptionCodeType< num >::number.


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