Index: src/gpu/vk/GrVkDescriptorSet.h |
diff --git a/src/gpu/vk/GrVkDescriptorSet.h b/src/gpu/vk/GrVkDescriptorSet.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..69e2d44336ebc20fe5efa2fa592c856a459166bf |
--- /dev/null |
+++ b/src/gpu/vk/GrVkDescriptorSet.h |
@@ -0,0 +1,44 @@ |
+/* |
+* Copyright 2016 Google Inc. |
+* |
+* Use of this source code is governed by a BSD-style license that can be |
+* found in the LICENSE file. |
+*/ |
+ |
+#ifndef GrVkDescriptorSet_DEFINED |
+#define GrVkDescriptorSet_DEFINED |
+ |
+#include "GrVkDescriptorSetManager.h" |
+#include "GrVkResource.h" |
+#include "vk/GrVkDefines.h" |
+ |
+class GrVkDescriptorPool; |
+class GrVkGpu; |
+ |
+class GrVkDescriptorSet : public GrVkRecycledResource { |
+public: |
+ GrVkDescriptorSet(VkDescriptorSet descSet, |
+ GrVkDescriptorPool* pool, |
+ GrVkDescriptorSetManager::Handle handle); |
+ |
+ ~GrVkDescriptorSet() override {} |
+ |
+ VkDescriptorSet descriptorSet() const { return fDescSet; } |
+ |
+#ifdef SK_TRACE_VK_RESOURCES |
+ void dumpInfo() const override { |
+ SkDebugf("GrVkDescriptorSet: %d (%d refs)\n", fDescSet, this->getRefCnt()); |
+ } |
+#endif |
+ |
+private: |
+ void freeGPUData(const GrVkGpu* gpu) const override; |
+ void abandonSubResources() const override; |
+ void onRecycle(GrVkGpu* gpu) const override; |
+ |
+ VkDescriptorSet fDescSet; |
+ SkDEBUGCODE(mutable) GrVkDescriptorPool* fPool; |
+ GrVkDescriptorSetManager::Handle fHandle; |
+}; |
+ |
+#endif |