53 lines
1.1 KiB
C++
53 lines
1.1 KiB
C++
#ifndef GLOBALS_HPP
|
|
#define GLOBALS_HPP
|
|
|
|
namespace cAudio
|
|
{
|
|
class IAudioManager;
|
|
}
|
|
|
|
namespace irr
|
|
{
|
|
class IrrlichtDevice;
|
|
|
|
namespace scene
|
|
{
|
|
class ISceneManager;
|
|
}
|
|
namespace video
|
|
{
|
|
class IVideoDriver;
|
|
}
|
|
namespace gui
|
|
{
|
|
class IGUIFont;
|
|
}
|
|
}
|
|
|
|
//! Globally used stuff (mostly irrlicht-related) packed in a singleton
|
|
class Globals
|
|
{
|
|
public:
|
|
static class irr::IrrlichtDevice* getDevice();
|
|
static class irr::scene::ISceneManager* getSceneManager();
|
|
static class irr::video::IVideoDriver* getVideoDriver();
|
|
static cAudio::IAudioManager* getAudioManager();
|
|
static class Dispatcher* getDispatcher();
|
|
static class irr::gui::IGUIFont *getFont();
|
|
|
|
static void shutdown();
|
|
|
|
private:
|
|
Globals();
|
|
~Globals();
|
|
static Globals* instance;
|
|
|
|
class irr::IrrlichtDevice* dev;
|
|
class irr::scene::ISceneManager* sman;
|
|
class irr::video::IVideoDriver* drv;
|
|
class cAudio::IAudioManager *audioManager;
|
|
class Dispatcher *dispatcher;
|
|
class irr::gui::IGUIFont *font;
|
|
};
|
|
#endif // GLOBALS_HPP
|