Fix undefined GrIORef test method on Chrome win bot
authorBrian Salomon <bsalomon@google.com>
Wed, 11 Jan 2017 20:24:47 +0000 (15:24 -0500)
committerSkia Commit-Bot <skia-commit-bot@chromium.org>
Wed, 11 Jan 2017 21:11:12 +0000 (21:11 +0000)
Change-Id: Ifc3d7e285a4b1a0b370ec79963127490bd7b1a84
Reviewed-on: https://skia-review.googlesource.com/6896
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>

include/gpu/GrGpuResource.h
tests/ProcessorTest.cpp

index 32376e524bbf325cedee3af01594665fe20a8930..cc7e7aaa20d801663a269e4b41bd575070b89da8 100644 (file)
@@ -75,8 +75,6 @@ public:
 #endif
     }
 
-    void testingOnly_getCounts(int* refCnt, int* readCnt, int* writeCnt) const;
-
 protected:
     GrIORef() : fRefCnt(1), fPendingReads(0), fPendingWrites(0) { }
 
@@ -96,6 +94,9 @@ protected:
 
 private:
     friend class GrIORefProxy; // needs to forward on wrapped IO calls
+    // This is for a unit test.
+    template <typename T>
+    friend void testingOnly_getIORefCnts(const T*, int* refCnt, int* readCnt, int* writeCnt);
 
     void addPendingRead() const {
         this->validate();
index 8b7f99b6cceefc956941f35e4bc950e1a8127108..e18a163b3024f38f17811502d70e7bd78ba2bc2f 100644 (file)
@@ -109,11 +109,11 @@ private:
 };
 }
 
-template <typename D>
-inline void GrIORef<D>::testingOnly_getCounts(int* refCnt, int* readCnt, int* writeCnt) const {
-    *refCnt = fRefCnt;
-    *readCnt = fPendingReads;
-    *writeCnt = fPendingWrites;
+template <typename T>
+inline void testingOnly_getIORefCnts(const T* resource, int* refCnt, int* readCnt, int* writeCnt) {
+    *refCnt = resource->fRefCnt;
+    *readCnt = resource->fPendingReads;
+    *writeCnt = resource->fPendingWrites;
 }
 
 DEF_GPUTEST_FOR_ALL_CONTEXTS(ProcessorRefTest, reporter, ctxInfo) {
@@ -168,30 +168,30 @@ DEF_GPUTEST_FOR_ALL_CONTEXTS(ProcessorRefTest, reporter, ctxInfo) {
             }
             int refCnt, readCnt, writeCnt;
 
-            texture1->testingOnly_getCounts(&refCnt, &readCnt, &writeCnt);
+            testingOnly_getIORefCnts(texture1.get(), &refCnt, &readCnt, &writeCnt);
             REPORTER_ASSERT(reporter, 1 == refCnt);
             REPORTER_ASSERT(reporter, 1 == readCnt);
             REPORTER_ASSERT(reporter, 0 == writeCnt);
 
             if (texelBufferSupport) {
-                buffer->testingOnly_getCounts(&refCnt, &readCnt, &writeCnt);
+                testingOnly_getIORefCnts(buffer.get(), &refCnt, &readCnt, &writeCnt);
                 REPORTER_ASSERT(reporter, 1 == refCnt);
                 REPORTER_ASSERT(reporter, 1 == readCnt);
                 REPORTER_ASSERT(reporter, 0 == writeCnt);
             }
 
             if (imageLoadStoreSupport) {
-                texture2->testingOnly_getCounts(&refCnt, &readCnt, &writeCnt);
+                testingOnly_getIORefCnts(texture2.get(), &refCnt, &readCnt, &writeCnt);
                 REPORTER_ASSERT(reporter, 1 == refCnt);
                 REPORTER_ASSERT(reporter, 1 == readCnt);
                 REPORTER_ASSERT(reporter, 0 == writeCnt);
 
-                texture3->testingOnly_getCounts(&refCnt, &readCnt, &writeCnt);
+                testingOnly_getIORefCnts(texture3.get(), &refCnt, &readCnt, &writeCnt);
                 REPORTER_ASSERT(reporter, 1 == refCnt);
                 REPORTER_ASSERT(reporter, 0 == readCnt);
                 REPORTER_ASSERT(reporter, 1 == writeCnt);
 
-                texture4->testingOnly_getCounts(&refCnt, &readCnt, &writeCnt);
+                testingOnly_getIORefCnts(texture4.get(), &refCnt, &readCnt, &writeCnt);
                 REPORTER_ASSERT(reporter, 1 == refCnt);
                 REPORTER_ASSERT(reporter, 1 == readCnt);
                 REPORTER_ASSERT(reporter, 1 == writeCnt);
@@ -199,30 +199,30 @@ DEF_GPUTEST_FOR_ALL_CONTEXTS(ProcessorRefTest, reporter, ctxInfo) {
 
             context->flush();
 
-            texture1->testingOnly_getCounts(&refCnt, &readCnt, &writeCnt);
+            testingOnly_getIORefCnts(texture1.get(), &refCnt, &readCnt, &writeCnt);
             REPORTER_ASSERT(reporter, 1 == refCnt);
             REPORTER_ASSERT(reporter, 0 == readCnt);
             REPORTER_ASSERT(reporter, 0 == writeCnt);
 
             if (texelBufferSupport) {
-                buffer->testingOnly_getCounts(&refCnt, &readCnt, &writeCnt);
+                testingOnly_getIORefCnts(buffer.get(), &refCnt, &readCnt, &writeCnt);
                 REPORTER_ASSERT(reporter, 1 == refCnt);
                 REPORTER_ASSERT(reporter, 0 == readCnt);
                 REPORTER_ASSERT(reporter, 0 == writeCnt);
             }
 
             if (texelBufferSupport) {
-                texture2->testingOnly_getCounts(&refCnt, &readCnt, &writeCnt);
+                testingOnly_getIORefCnts(texture2.get(), &refCnt, &readCnt, &writeCnt);
                 REPORTER_ASSERT(reporter, 1 == refCnt);
                 REPORTER_ASSERT(reporter, 0 == readCnt);
                 REPORTER_ASSERT(reporter, 0 == writeCnt);
 
-                texture3->testingOnly_getCounts(&refCnt, &readCnt, &writeCnt);
+                testingOnly_getIORefCnts(texture3.get(), &refCnt, &readCnt, &writeCnt);
                 REPORTER_ASSERT(reporter, 1 == refCnt);
                 REPORTER_ASSERT(reporter, 0 == readCnt);
                 REPORTER_ASSERT(reporter, 0 == writeCnt);
 
-                texture4->testingOnly_getCounts(&refCnt, &readCnt, &writeCnt);
+                testingOnly_getIORefCnts(texture4.get(), &refCnt, &readCnt, &writeCnt);
                 REPORTER_ASSERT(reporter, 1 == refCnt);
                 REPORTER_ASSERT(reporter, 0 == readCnt);
                 REPORTER_ASSERT(reporter, 0 == writeCnt);