D3D: Pass gl::Context to many more functions.

This makes the Context more available for logging errors.

Also includes more refactoring to VertexDataManager to ensure we can
access the gl::Context.

Bug: angleproject:2738
Change-Id: Iae3d22a1403078d236bfe63a3e2d203c13678dc4
Reviewed-on: https://chromium-review.googlesource.com/1151449
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
diff --git a/src/tests/perf_tests/IndexDataManagerTest.cpp b/src/tests/perf_tests/IndexDataManagerTest.cpp
index 80e1b8f..a85d212 100644
--- a/src/tests/perf_tests/IndexDataManagerTest.cpp
+++ b/src/tests/perf_tests/IndexDataManagerTest.cpp
@@ -29,11 +29,11 @@
     {
     }
 
-    MOCK_METHOD3(initialize, gl::Error(unsigned int, GLenum, bool));
-    MOCK_METHOD3(mapBuffer, gl::Error(unsigned int, unsigned int, void **));
-    MOCK_METHOD0(unmapBuffer, gl::Error());
-    MOCK_METHOD0(discard, gl::Error());
-    MOCK_METHOD2(setSize, gl::Error(unsigned int, GLenum));
+    MOCK_METHOD4(initialize, gl::Error(const gl::Context *, unsigned int, GLenum, bool));
+    MOCK_METHOD4(mapBuffer, gl::Error(const gl::Context *, unsigned int, unsigned int, void **));
+    MOCK_METHOD1(unmapBuffer, gl::Error(const gl::Context *));
+    MOCK_METHOD1(discard, gl::Error(const gl::Context *));
+    MOCK_METHOD3(setSize, gl::Error(const gl::Context *, unsigned int, GLenum));
 
     // inlined for speed
     GLenum getIndexType() const override { return mIndexType; }
@@ -55,8 +55,9 @@
     MOCK_METHOD0(createVertexBuffer, rx::VertexBuffer *());
     MOCK_CONST_METHOD1(getVertexConversionType, rx::VertexConversionType(gl::VertexFormatType));
     MOCK_CONST_METHOD1(getVertexComponentType, GLenum(gl::VertexFormatType));
-    MOCK_CONST_METHOD4(getVertexSpaceRequired,
-                       gl::ErrorOrResult<unsigned int>(const gl::VertexAttribute &,
+    MOCK_CONST_METHOD5(getVertexSpaceRequired,
+                       gl::ErrorOrResult<unsigned int>(const gl::Context *,
+                                                       const gl::VertexAttribute &,
                                                        const gl::VertexBinding &,
                                                        size_t,
                                                        GLsizei));