X-Git-Url: https://git.jsancho.org/?a=blobdiff_plain;f=src%2FIVideoDriver.cpp;h=7101961ac5e23a7d8ba2e8337fbb0bb603e6feea;hb=bf35c1c5384d6ccae7b7690ee08c511d036ffaec;hp=13a21d15998e3e4de0abc74a87b7c19b9879ca16;hpb=4881087cbf493d736995a4051e0d13ed63ad6c3a;p=c-irrlicht.git diff --git a/src/IVideoDriver.cpp b/src/IVideoDriver.cpp index 13a21d1..7101961 100644 --- a/src/IVideoDriver.cpp +++ b/src/IVideoDriver.cpp @@ -23,37 +23,53 @@ #include "IVideoDriver.h" extern "C" { - bool irr_video_IVideoDriver_beginScene(void* driver, - bool backBuffer, - bool zBuffer, - const irr_video_SColor* color, - void* videoData, // not used for now - const irr_core_rect_s32* sourceRect) + int + irr_video_beginScene(irr_video_IVideoDriver* driver, + int backBuffer, + int zBuffer, + const irr_video_SColor* color, + irr_video_SExposedVideoData* videoData, + const irr_core_rect_s32* sourceRect) { // Color irr::video::SColor col = irr::video::SColor(color->a, color->r, color->g, color->b); // Video data + // TODO irr::video::SExposedVideoData vdata = irr::video::SExposedVideoData(); // Source rect - irr::core::rect rect = \ - irr::core::rect(sourceRect->x, - sourceRect->y, - sourceRect->x2, - sourceRect->y2); + irr::core::rect rect; + if (sourceRect != NULL) + { + rect = irr::core::rect(sourceRect->x, + sourceRect->y, + sourceRect->x2, + sourceRect->y2); + } // Begin scene - return ((irr::video::IVideoDriver*)driver)->beginScene(backBuffer, - zBuffer, - col, - vdata, - &rect); + return ((irr::video::IVideoDriver*)driver) + ->beginScene(backBuffer, + zBuffer, + col, + vdata, + sourceRect != NULL ? &rect : 0); } - bool irr_videoIVideoDriver_endScene(void* driver) + int + irr_video_endScene(irr_video_IVideoDriver* driver) { return ((irr::video::IVideoDriver*)driver)->endScene(); } + + irr_video_ITexture* + irr_video_getTexture(irr_video_IVideoDriver* driver, + const char* filename) + { + return (irr_video_ITexture*) + ((irr::video::IVideoDriver*)driver)->getTexture(filename); + } + }