Implement Vulkan GrBackendObject for textures.

BUG=skia:5043
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1808263002

Review URL: https://codereview.chromium.org/1808263002
diff --git a/include/gpu/vk/GrVkTypes.h b/include/gpu/vk/GrVkTypes.h
new file mode 100755
index 0000000..e671f5d
--- /dev/null
+++ b/include/gpu/vk/GrVkTypes.h
@@ -0,0 +1,42 @@
+
+/*
+ * 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 GrVkTypes_DEFINED
+#define GrVkTypes_DEFINED
+
+#include <vulkan/vulkan.h>
+
+/**
+ * KHR_debug
+ */
+/*typedef void (GR_GL_FUNCTION_TYPE* GrVkDEBUGPROC)(GrVkenum source,
+                                                  GrVkenum type,
+                                                  GrVkuint id,
+                                                  GrVkenum severity,
+                                                  GrVksizei length,
+                                                  const GrVkchar* message,
+                                                  const void* userParam);*/
+
+
+
+///////////////////////////////////////////////////////////////////////////////
+/**
+ * Types for interacting with Vulkan resources created externally to Skia. GrBackendObjects for 
+ * Vulkan textures are really const GrVkTextureInfo*
+ */
+
+struct GrVkTextureInfo {
+    VkImage        fImage;
+    VkDeviceMemory fAlloc;    // this may be null iff the texture is an RT and uses borrow semantics
+    VkImageTiling  fImageTiling;
+    VkImageLayout  fImageLayout;
+};
+
+GR_STATIC_ASSERT(sizeof(GrBackendObject) >= sizeof(const GrVkTextureInfo*));
+
+#endif