#include "IrrlichtDevice.h"
extern "C" {
- void* irr_IrrlichtDevice_getSceneManager(void* device)
+ irr_gui_ICursorControl*
+ irr_getCursorControl(irr_IrrlichtDevice* device)
+ {
+ return ((irr::IrrlichtDevice*)device)->getCursorControl();
+ }
+
+ irr_io_IFileSystem*
+ irr_getFileSystem(irr_IrrlichtDevice* device)
+ {
+ return ((irr::IrrlichtDevice*)device)->getFileSystem();
+ }
+
+ irr_gui_IGUIEnvironment*
+ irr_getGUIEnvironment(irr_IrrlichtDevice* device)
+ {
+ return ((irr::IrrlichtDevice*)device)->getGUIEnvironment();
+ }
+
+ irr_scene_ISceneManager*
+ irr_getSceneManager(irr_IrrlichtDevice* device)
{
return ((irr::IrrlichtDevice*)device)->getSceneManager();
}
- void* irr_IrrlichtDevice_getVideoDriver(void* device)
+ irr_video_IVideoDriver*
+ irr_getVideoDriver(irr_IrrlichtDevice* device)
{
return ((irr::IrrlichtDevice*)device)->getVideoDriver();
}
- void irr_IrrlichtDevice_setWindowCaption(void* device, const char* text)
+ int
+ irr_isWindowActive(irr_IrrlichtDevice* device)
+ {
+ return ((irr::IrrlichtDevice*)device)->isWindowActive() ? 1 : 0;
+ }
+
+ void
+ irr_setWindowCaption(irr_IrrlichtDevice* device,
+ const char* text)
{
- wchar_t *wtext = (wchar_t*)malloc(strlen(text) + 1);
- mbsrtowcs(wtext, &text, strlen(text) + 1, NULL);
+ wchar_t *wtext = (wchar_t*)malloc((strlen(text) + 1) * sizeof(wchar_t));
+ mbstowcs(wtext, text, strlen(text) + 1);
((irr::IrrlichtDevice*)device)->setWindowCaption(wtext);
}
+
+ int
+ irr_run(irr_IrrlichtDevice* device)
+ {
+ return ((irr::IrrlichtDevice*)device)->run() ? 1 : 0;
+ }
+
+ int
+ irr_drop(irr_IrrlichtDevice* device)
+ {
+ return ((irr::IrrlichtDevice*)device)->drop() ? 1 : 0;
+ }
+
+ void
+ irr_yield(irr_IrrlichtDevice* device)
+ {
+ ((irr::IrrlichtDevice*)device)->yield();
+ }
+
}