X-Git-Url: https://git.jsancho.org/?a=blobdiff_plain;f=src%2FIrrlichtDevice.cpp;h=98c4afb340ee644ea3be1294fbececc6b1815932;hb=ccbe283bd39927b18cf17bb8dc778b9ddb449168;hp=b78b1ecabdb5941cab89809a3dd590e27fa94e3d;hpb=636e5ec91137f36c3b1eec501ce43c0eb2abbd65;p=c-irrlicht.git diff --git a/src/IrrlichtDevice.cpp b/src/IrrlichtDevice.cpp index b78b1ec..98c4afb 100644 --- a/src/IrrlichtDevice.cpp +++ b/src/IrrlichtDevice.cpp @@ -20,11 +20,52 @@ */ #include +#include #include "IrrlichtDevice.h" extern "C" { - void* irr_IrrlichtDevice_getVideoDriver(void* device) + 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(); + } + + irr_video_IVideoDriver* + irr_getVideoDriver(irr_IrrlichtDevice* device) { return ((irr::IrrlichtDevice*)device)->getVideoDriver(); } + + void + irr_setWindowCaption(irr_IrrlichtDevice* device, + const char* text) + { + wchar_t *wtext = (wchar_t*)malloc((strlen(text) + 1) * sizeof(wchar_t)); + mbsrtowcs(wtext, &text, strlen(text) + 1, NULL); + ((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; + } }