Move getData from the D3D to the Impl.
We will need this functionality for index validation, so we likely
can assume an implemenation will need to support such a call. We
might redesign this requirement, but for now we can't call though
to BufferD3D on OSX.
BUG=angle:773
Change-Id: I16187c78ff62471fdf7221a11b9956560e617a14
Reviewed-on: https://chromium-review.googlesource.com/238450
Tested-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
diff --git a/src/libANGLE/validationES.cpp b/src/libANGLE/validationES.cpp
index b613ee9..372642d 100644
--- a/src/libANGLE/validationES.cpp
+++ b/src/libANGLE/validationES.cpp
@@ -24,9 +24,6 @@
#include "common/mathutil.h"
#include "common/utilities.h"
-// FIXME(jmadill): remove this when we support buffer data caching
-#include "libANGLE/renderer/d3d/BufferD3D.h"
-
namespace gl
{
@@ -1653,10 +1650,9 @@
uintptr_t offset = reinterpret_cast<uintptr_t>(indices);
if (!elementArrayBuffer->getIndexRangeCache()->findRange(type, offset, count, indexRangeOut, NULL))
{
- // FIXME(jmadill): Use buffer data caching instead of the D3D back-end
- rx::BufferD3D *bufferD3D = rx::BufferD3D::makeBufferD3D(elementArrayBuffer->getImplementation());
+ rx::BufferImpl *bufferImpl = elementArrayBuffer->getImplementation();
const uint8_t *dataPointer = NULL;
- Error error = bufferD3D->getData(&dataPointer);
+ Error error = bufferImpl->getData(&dataPointer);
if (error.isError())
{
context->recordError(error);