ShaderRenderCase::~ShaderRenderCase (void)
{
- delete m_evaluator;
- m_evaluator = DE_NULL;
- delete m_uniformSetup;
- m_uniformSetup = DE_NULL;
}
void ShaderRenderCase::initPrograms (vk::SourceCollections& programCollection) const
uniformInfo->location = bindingLocation;
uniformInfo->buffer = VkBufferSp(new vk::Unique<VkBuffer>(buffer));
uniformInfo->bufferView = VkBufferViewSp(new vk::Unique<VkBufferView>(bufferView));
- uniformInfo->alloc = AllocationSp(new de::UniquePtr<vk::Allocation>(alloc));
+ uniformInfo->alloc = AllocationSp(alloc.release());
m_uniformInfos.push_back(UniformInfoSp(new de::UniquePtr<UniformInfo>(uniformInfo)));
}
flushMappedMemoryRange(vk, vkDevice, alloc->getMemory(), alloc->getOffset(), inputSize);
m_vertexBuffers.push_back(VkBufferSp(new vk::Unique<VkBuffer>(buffer)));
- m_vertexBufferAllocs.push_back(AllocationSp(new de::UniquePtr<vk::Allocation>(alloc)));
+ m_vertexBufferAllocs.push_back(AllocationSp(alloc.release()));
}
void ShaderRenderCaseInstance::useAttribute (deUint32 bindingLocation, BaseAttributeType type)
uniform->image = VkImageSp(new vk::Unique<VkImage>(vkTexture));
uniform->imageView = VkImageViewSp(new vk::Unique<VkImageView>(imageView));
uniform->sampler = VkSamplerSp(new vk::Unique<VkSampler>(sampler));
- uniform->alloc = AllocationSp(new de::UniquePtr<vk::Allocation>(allocation));
+ uniform->alloc = AllocationSp(allocation.release());
m_descriptorSetLayoutBuilder.addSingleSamplerBinding(VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, vk::VK_SHADER_STAGE_FRAGMENT_BIT, &uniform->descriptor.sampler);
m_descriptorPoolBuilder.addType(VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER);
class ShaderRenderCase : public vkt::TestCase
{
public:
- ShaderRenderCase (tcu::TestContext& testCtx,
- const std::string& name,
- const std::string& description,
- const bool isVertexCase,
- const ShaderEvalFunc evalFunc,
- const UniformSetup* uniformSetup,
- const AttributeSetupFunc attribFunc);
-
- ShaderRenderCase (tcu::TestContext& testCtx,
- const std::string& name,
- const std::string& description,
- const bool isVertexCase,
- const ShaderEvaluator* evaluator,
- const UniformSetup* uniformSetup,
- const AttributeSetupFunc attribFunc);
-
-
- virtual ~ShaderRenderCase (void);
- virtual void initPrograms (vk::SourceCollections& programCollection) const;
- virtual TestInstance* createInstance (Context& context) const;
+ ShaderRenderCase (tcu::TestContext& testCtx,
+ const std::string& name,
+ const std::string& description,
+ const bool isVertexCase,
+ const ShaderEvalFunc evalFunc,
+ const UniformSetup* uniformSetup,
+ const AttributeSetupFunc attribFunc);
+
+ ShaderRenderCase (tcu::TestContext& testCtx,
+ const std::string& name,
+ const std::string& description,
+ const bool isVertexCase,
+ const ShaderEvaluator* evaluator,
+ const UniformSetup* uniformSetup,
+ const AttributeSetupFunc attribFunc);
+
+
+ virtual ~ShaderRenderCase (void);
+ virtual void initPrograms (vk::SourceCollections& programCollection) const;
+ virtual TestInstance* createInstance (Context& context) const;
protected:
- std::string m_vertShaderSource;
- std::string m_fragShaderSource;
+ std::string m_vertShaderSource;
+ std::string m_fragShaderSource;
- const bool m_isVertexCase;
- const ShaderEvaluator* m_evaluator;
- const UniformSetup* m_uniformSetup;
- const AttributeSetupFunc m_attribFunc;
+ const bool m_isVertexCase;
+ const de::UniquePtr<const ShaderEvaluator> m_evaluator;
+ const de::UniquePtr<const UniformSetup> m_uniformSetup;
+ const AttributeSetupFunc m_attribFunc;
};
typedef de::SharedPtr<vk::Unique<vk::VkImage> > VkImageSp;
typedef de::SharedPtr<vk::Unique<vk::VkImageView> > VkImageViewSp;
typedef de::SharedPtr<vk::Unique<vk::VkSampler> > VkSamplerSp;
- typedef de::SharedPtr<de::UniquePtr<vk::Allocation> > AllocationSp;
+ typedef de::SharedPtr<vk::Allocation> AllocationSp;
class UniformInfo
{