Testing environment: Added class StagingBufferCollection, functions UploadGpuData, ValidateGpuData, TestGpuData, in preparation for testing defragmentation of GPU memory.

# Conflicts:
#	src/Tests.cpp
#	src/VulkanSample.cpp
diff --git a/src/VulkanSample.cpp b/src/VulkanSample.cpp
index 0da5be2..0e5cae6 100644
--- a/src/VulkanSample.cpp
+++ b/src/VulkanSample.cpp
@@ -91,7 +91,7 @@
 

 static VkQueue g_hGraphicsQueue;

 VkQueue g_hSparseBindingQueue;

-static VkCommandBuffer g_hTemporaryCommandBuffer;

+VkCommandBuffer g_hTemporaryCommandBuffer;

 

 static VkPipelineLayout g_hPipelineLayout;

 static VkRenderPass g_hRenderPass;

@@ -130,14 +130,14 @@
     _aligned_free(pMemory);

 }

 

-static void BeginSingleTimeCommands()

+void BeginSingleTimeCommands()

 {

     VkCommandBufferBeginInfo cmdBufBeginInfo = { VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO };

     cmdBufBeginInfo.flags = VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT;

     ERR_GUARD_VULKAN( vkBeginCommandBuffer(g_hTemporaryCommandBuffer, &cmdBufBeginInfo) );

 }

 

-static void EndSingleTimeCommands()

+void EndSingleTimeCommands()

 {

     ERR_GUARD_VULKAN( vkEndCommandBuffer(g_hTemporaryCommandBuffer) );

 

@@ -1785,16 +1785,6 @@
                 printf("ERROR: %s\n", ex.what());

             }

             break;

-        case 'S':

-            try

-            {

-                TestSparseBinding();

-            }

-            catch(const std::exception& ex)

-            {

-                printf("ERROR: %s\n", ex.what());

-            }

-            break;

         }

         return 0;