Error Module

Classes

class  common::Error
 Klasa bazowa błędów. More...
class  common::ErrnoError
 Wyjątek utworzony z systemowego błędu errno. More...
class  common::SDLError
 Wyjątek z błędem pobranym z biblioteki SDL za pomocą SDLError. More...
class  common::OpenGLError
 Wyjątek z błędem pobranym z biblioteki OpenGL za pomocą OpenGLError. More...
class  common::FmodError
 Wyjątek z błędem pobranym z biblioteki dźwiękowej FMOD. More...
class  common::Win32Error
 Tworzy wyjątek na podstawie błędu WinAPI pobieranego za pomocą GetLastError. More...
class  common::DirectXError
 Tworzy wyjątek na podstawie błędu biblioteki Direct3D. More...
class  common::WinSockError
 Tworzy wyjątek na podstawie błędu biblioteki WinSock. More...
class  common::DevILError
 Tworzy wyjątek na podstawie błędu biblioteki graficznej DevIL. More...
class  common::AVIFileError
 Tworzy wyjątek na podstawie błędu biblioteki AviFile (część WinAPI). More...

Defines

#define ERR_ADD_FUNC(exception)   { (exception).Push(__TFUNCSIG__, __TFILE__, __LINE__); }
 Użyj aby dodać komunikat do stosu wyjątku.
#define ERR_TRY   { try {
#define ERR_CATCH(msg)   } catch(common::Error &e) { e.Push((msg), __TFILE__, __LINE__); throw; } }
#define ERR_CATCH_FUNC   } catch(common::Error &e) { ERR_ADD_FUNC(e); throw; } }
#define ERR_GUARD_BOOL(Expr)   { if ((Expr) == false) throw common::Error(_T(#Expr), __TFILE__, __LINE__); }
#define ERR_GUARD_DIRECTX(Expr)   { HRESULT hr; if (FAILED(hr = (Expr))) throw common::DirectXError(hr, _T(#Expr), __TFILE__, __LINE__); }
#define ERR_GUARD_DEVIL(Code)   { { Code ; } ILenum c = ilGetError(); if (c != IL_NO_ERROR) throw common::DevILError(c, _T(#Code), __TFILE__, __LINE__); }
#define ERR_GUARD_BOOL_D(Expr)   (Expr);
#define ERR_GUARD_DIRECTX_D(Expr)   (Expr);
#define ALL_EXCEPTIONS_TRY   try {
 Makra, które przerabiają każdy rodzaj wyjątku na wyjątek common::Error.
#define ALL_EXCEPTIONS_CATCH
 Makra, które przerabiają każdy rodzaj wyjątku na wyjątek common::Error.

Functions

template<typename T >
void MustStrToSth (T *Sth, const tstring &Str)
 Rozszerzenie modułu bazowego o wsparcie dla błędów.

Detailed Description

Dokumentacja: Module_Error
Nagłówek: Error.hpp


Define Documentation

#define ALL_EXCEPTIONS_CATCH
Value:
} \
  catch (const common::Error&) \
  { \
    throw; \
  } \
  catch (const std::exception &stde) \
  { \
    throw common::Error(string("std::exception: ") + common::StringToTstringR(stde.what()), __TFILE__, __LINE__); \
  } \
  catch (...) \
  { \
    throw common::Error("Unknown exception.", __TFILE__, __LINE__); \
  }

Makra, które przerabiają każdy rodzaj wyjątku na wyjątek common::Error.

#define ALL_EXCEPTIONS_TRY   try {

Makra, które przerabiają każdy rodzaj wyjątku na wyjątek common::Error.

#define ERR_ADD_FUNC ( exception   )     { (exception).Push(__TFUNCSIG__, __TFILE__, __LINE__); }

Użyj aby dodać komunikat do stosu wyjątku.

#define ERR_CATCH ( msg   )     } catch(common::Error &e) { e.Push((msg), __TFILE__, __LINE__); throw; } }
#define ERR_CATCH_FUNC   } catch(common::Error &e) { ERR_ADD_FUNC(e); throw; } }
#define ERR_GUARD_BOOL ( Expr   )     { if ((Expr) == false) throw common::Error(_T(#Expr), __TFILE__, __LINE__); }
#define ERR_GUARD_BOOL_D ( Expr   )     (Expr);
#define ERR_GUARD_DEVIL ( Code   )     { { Code ; } ILenum c = ilGetError(); if (c != IL_NO_ERROR) throw common::DevILError(c, _T(#Code), __TFILE__, __LINE__); }
#define ERR_GUARD_DIRECTX ( Expr   )     { HRESULT hr; if (FAILED(hr = (Expr))) throw common::DirectXError(hr, _T(#Expr), __TFILE__, __LINE__); }
#define ERR_GUARD_DIRECTX_D ( Expr   )     (Expr);
#define ERR_TRY   { try {

Function Documentation

template<typename T >
void MustStrToSth ( T *  Sth,
const tstring Str 
) [inline]

Rozszerzenie modułu bazowego o wsparcie dla błędów.


Generated on Wed Dec 16 20:44:53 2009 for CommonLib by  doxygen 1.6.1