From 1d218cbed29bffb2102b5f195c77171206bc4047 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20Vondru=C5=A1?= Date: Thu, 23 Jan 2014 19:10:00 +0100 Subject: [PATCH] Enable Buffer::invalidate*Data() on ES. This smells fishy. The function _does have_ a no-op fallback implementation to remove the need to wrap everything with an #ifdef and/or extension check, so why I did exactly that everywhere? --- src/Magnum/Buffer.cpp | 2 -- src/Magnum/Buffer.h | 2 -- src/Magnum/Test/BufferGLTest.cpp | 12 +----------- 3 files changed, 1 insertion(+), 15 deletions(-) diff --git a/src/Magnum/Buffer.cpp b/src/Magnum/Buffer.cpp index 9dd2a23b9..d37f253ae 100644 --- a/src/Magnum/Buffer.cpp +++ b/src/Magnum/Buffer.cpp @@ -195,7 +195,6 @@ Buffer& Buffer::setSubData(const GLintptr offset, const Containers::ArrayReferen return *this; } -#ifndef MAGNUM_TARGET_GLES Buffer& Buffer::invalidateData() { (this->*Context::current()->state().buffer->invalidateImplementation)(); return *this; @@ -205,7 +204,6 @@ Buffer& Buffer::invalidateSubData(const GLintptr offset, const GLsizeiptr length (this->*Context::current()->state().buffer->invalidateSubImplementation)(offset, length); return *this; } -#endif void* Buffer::map(const MapAccess access) { return (this->*Context::current()->state().buffer->mapImplementation)(access); diff --git a/src/Magnum/Buffer.h b/src/Magnum/Buffer.h index 0da729a9c..386f682bf 100644 --- a/src/Magnum/Buffer.h +++ b/src/Magnum/Buffer.h @@ -722,7 +722,6 @@ class MAGNUM_EXPORT Buffer: public AbstractObject { return *this; } - #ifndef MAGNUM_TARGET_GLES /** * @brief Invalidate buffer data * @return Reference to self (for method chaining) @@ -744,7 +743,6 @@ class MAGNUM_EXPORT Buffer: public AbstractObject { * @see @ref MapFlag::InvalidateRange, @fn_gl{InvalidateBufferData} */ Buffer& invalidateSubData(GLintptr offset, GLsizeiptr length); - #endif /** * @brief Map buffer to client memory diff --git a/src/Magnum/Test/BufferGLTest.cpp b/src/Magnum/Test/BufferGLTest.cpp index a5b629d81..e7e04c8de 100644 --- a/src/Magnum/Test/BufferGLTest.cpp +++ b/src/Magnum/Test/BufferGLTest.cpp @@ -53,9 +53,7 @@ class BufferGLTest: public AbstractOpenGLTester { #ifndef MAGNUM_TARGET_GLES2 void copy(); #endif - #ifndef MAGNUM_TARGET_GLES2 void invalidate(); - #endif }; BufferGLTest::BufferGLTest() { @@ -71,10 +69,7 @@ BufferGLTest::BufferGLTest() { #ifndef MAGNUM_TARGET_GLES2 &BufferGLTest::copy, #endif - #ifndef MAGNUM_TARGET_GLES - &BufferGLTest::invalidate - #endif - }); + &BufferGLTest::invalidate}); } void BufferGLTest::construct() { @@ -348,11 +343,7 @@ void BufferGLTest::copy() { } #endif -#ifndef MAGNUM_TARGET_GLES void BufferGLTest::invalidate() { - if(!Context::current()->isExtensionSupported()) - CORRADE_SKIP(Extensions::GL::ARB::invalidate_subdata::string() + std::string(" is not supported")); - Buffer buffer; constexpr char data[] = {2, 7, 5, 13, 25}; buffer.setData(data, BufferUsage::StaticDraw); @@ -365,7 +356,6 @@ void BufferGLTest::invalidate() { buffer.invalidateData(); MAGNUM_VERIFY_NO_ERROR(); } -#endif }}