#ifndef SDL_BASE_H
#define SDL_BASE_H

/*!
  \file
  \brief SDL の初期化
  
  \author Satofumi KAMIMURA
  
  $Id: sdlBase.h 286 2008-10-20 09:40:22Z satofumi $
*/

#include <exception>


/*!
  \brief SDL の初期化
*/
class SDL_Base {
  static bool initialized;
  void sdl_initialize(void);

protected:
  SDL_Base(void);
  virtual ~SDL_Base(void);
};


/*!
  \brief SDL の例外クラス
*/
class SDL_Exception : public std::exception {
public:
  SDL_Exception(void) {}
  virtual ~SDL_Exception(void) throw () {}

  /*!
    \brief 例外原因の文字列を返す
  */
  virtual const char* what(void) const throw();
};

#endif /* !SDL_BASE_H */
