Lines Matching defs:context
116 virtual void recordCommands (OperationContext& context, const VkCommandBuffer cmdBuffer, const VkDescriptorSet descriptorSet) = 0;
123 VertexGrid (OperationContext& context)
127 const DeviceInterface& vk = context.getDeviceInterface();
128 const VkDevice device = context.getDevice();
129 Allocator& allocator = context.getAllocator();
214 void requireFeaturesForSSBOAccess (OperationContext& context, const VkShaderStageFlags usedStages)
216 const InstanceInterface& vki = context.getInstanceInterface();
217 const VkPhysicalDevice physDevice = context.getPhysicalDevice();
235 Data getHostBufferData (const OperationContext& context, const Buffer& hostBuffer, const VkDeviceSize size)
237 const DeviceInterface& vk = context.getDeviceInterface();
238 const VkDevice device = context.getDevice();
251 void setHostBufferData (const OperationContext& context, const Buffer& hostBuffer, const Data& data)
253 const DeviceInterface& vk = context.getDeviceInterface();
254 const VkDevice device = context.getDevice();
488 Implementation (OperationContext& context, Resource& resource, const BufferOp bufferOp)
489 : m_context (context)
603 VkQueueFlags getQueueFlags (const OperationContext& context) const
605 if (m_bufferOp == BUFFER_OP_FILL && !context.isDeviceFunctionalitySupported("VK_KHR_maintenance1"))
613 de::MovePtr<Operation> build (OperationContext& context, Resource& resource) const
615 return de::MovePtr<Operation>(new Implementation(context, resource, m_bufferOp));
637 Implementation (OperationContext& context, Resource& resource, const AccessMode mode)
638 : m_context (context)
763 VkQueueFlags getQueueFlags (const OperationContext& context) const
765 DE_UNREF(context);
769 de::MovePtr<Operation> build (OperationContext& context, Resource& resource) const
771 return de::MovePtr<Operation>(new Implementation(context, resource, m_mode));
787 CopyImplementation (OperationContext& context, Resource& inResource, Resource& outResource)
788 : m_context (context)
861 VkQueueFlags getQueueFlags (const OperationContext& context) const
863 DE_UNREF(context);
873 de::MovePtr<Operation> build (OperationContext& context, Resource& inResource, Resource& outResource) const
875 return de::MovePtr<Operation>(new CopyImplementation(context, inResource, outResource));
893 ImplementationBase (OperationContext& context, Resource& resource, const AccessMode mode)
894 : m_context (context)
1099 BlitImplementation (OperationContext& context, Resource& resource, const AccessMode mode)
1100 : ImplementationBase (context, resource, mode)
1159 CopyImplementation (OperationContext& context, Resource& resource, const AccessMode mode)
1160 : ImplementationBase (context, resource, mode)
1193 ResolveImplementation(OperationContext& context, Resource& resource, const AccessMode mode)
1194 : ImplementationBase (context, resource, mode)
1250 VkQueueFlags getQueueFlags (const OperationContext& context) const
1252 DE_UNREF(context);
1256 de::MovePtr<Operation> build (OperationContext& context, Resource& resource) const
1259 return de::MovePtr<Operation>(new CopyImplementation(context, resource, m_mode));
1261 return de::MovePtr<Operation>(new BlitImplementation(context, resource, m_mode));
1263 return de::MovePtr<Operation>(new ResolveImplementation(context, resource, m_mode));
1281 BlitCopyImplementation (OperationContext& context, Resource& inResource, Resource& outResource)
1282 : m_context (context)
1371 CopyCopyImplementation (OperationContext& context, Resource& inResource, Resource& outResource)
1372 : m_context (context)
1472 VkQueueFlags getQueueFlags (const OperationContext& context) const
1474 DE_UNREF(context);
1484 de::MovePtr<Operation> build (OperationContext& context, Resource& inResource, Resource& outResource) const
1487 return de::MovePtr<Operation>(new CopyCopyImplementation(context, inResource, outResource));
1489 return de::MovePtr<Operation>(new BlitCopyImplementation(context, inResource, outResource));
1511 GraphicsPipeline (OperationContext& context, const VkShaderStageFlagBits stage, const std::string& shaderPrefix, const VkDescriptorSetLayout descriptorSetLayout)
1512 : m_vertices (context)
1514 const DeviceInterface& vk = context.getDeviceInterface();
1515 const VkDevice device = context.getDevice();
1516 Allocator& allocator = context.getAllocator();
1540 .setShader (vk, device, VK_SHADER_STAGE_VERTEX_BIT, context.getBinaryCollection().get(shaderPrefix + "vert"), DE_NULL)
1541 .setShader (vk, device, VK_SHADER_STAGE_FRAGMENT_BIT, context.getBinaryCollection().get(shaderPrefix + "frag"), DE_NULL);
1546 .setShader (vk, device, VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT, context.getBinaryCollection().get(shaderPrefix + "tesc"), DE_NULL)
1547 .setShader (vk, device, VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT, context.getBinaryCollection().get(shaderPrefix + "tese"), DE_NULL);
1551 .setShader (vk, device, VK_SHADER_STAGE_GEOMETRY_BIT, context.getBinaryCollection().get(shaderPrefix + "geom"), DE_NULL);
1553 m_pipeline = pipelineBuilder.build(vk, device, *m_pipelineLayout, *m_renderPass, context.getPipelineCacheData(), context.getResourceInterface());
1556 void recordCommands (OperationContext& context, const VkCommandBuffer cmdBuffer, const VkDescriptorSet descriptorSet)
1558 const DeviceInterface& vk = context.getDeviceInterface();
1559 SynchronizationWrapperPtr synchronizationWrapper = getSynchronizationWrapper(context.getSynchronizationType(), vk, DE_FALSE);
1612 ComputePipeline (OperationContext& context, const DispatchCall dispatchCall, const std::string& shaderPrefix, const VkDescriptorSetLayout descriptorSetLayout)
1615 const DeviceInterface& vk = context.getDeviceInterface();
1616 const VkDevice device = context.getDevice();
1617 Allocator& allocator = context.getAllocator();
1634 const Unique<VkShaderModule> shaderModule(createShaderModule(vk, device, context.getBinaryCollection().get(shaderPrefix + "comp"), (VkShaderModuleCreateFlags)0));
1637 m_pipeline = makeComputePipeline(vk, device, *m_pipelineLayout, *shaderModule, DE_NULL, context.getPipelineCacheData(), context.getResourceInterface());
1640 void recordCommands (OperationContext& context, const VkCommandBuffer cmdBuffer, const VkDescriptorSet descriptorSet)
1642 const DeviceInterface& vk = context.getDeviceInterface();
1664 BufferImplementation (OperationContext& context,
1674 , m_context (context)
1754 m_pipeline = (pipelineType == PIPELINE_TYPE_GRAPHICS ? de::MovePtr<Pipeline>(new GraphicsPipeline(context, stage, shaderPrefix, *m_descriptorSetLayout))
1755 : de::MovePtr<Pipeline>(new ComputePipeline(context, m_dispatchCall, shaderPrefix, *m_descriptorSetLayout)));
1878 ImageImplementation (OperationContext& context,
1887 , m_context (context)
1971 m_pipeline = (pipelineType == PIPELINE_TYPE_GRAPHICS ? de::MovePtr<Pipeline>(new GraphicsPipeline(context, stage, shaderPrefix, *m_descriptorSetLayout))
1972 : de::MovePtr<Pipeline>(new ComputePipeline(context, m_dispatchCall, shaderPrefix, *m_descriptorSetLayout)));
2400 VkQueueFlags getQueueFlags (const OperationContext& context) const
2402 DE_UNREF(context);
2406 de::MovePtr<Operation> build (OperationContext& context, Resource& resource) const
2409 return de::MovePtr<Operation>(new BufferImplementation(context, resource, m_stage, m_bufferType, m_shaderPrefix, m_mode, m_specializedAccess, PIPELINE_TYPE_COMPUTE, m_dispatchCall));
2411 return de::MovePtr<Operation>(new BufferImplementation(context, resource, m_stage, m_bufferType, m_shaderPrefix, m_mode, m_specializedAccess, PIPELINE_TYPE_GRAPHICS, m_dispatchCall));
2491 VkQueueFlags getQueueFlags (const OperationContext& context) const
2493 DE_UNREF(context);
2497 de::MovePtr<Operation> build (OperationContext& context, Resource& resource) const
2500 return de::MovePtr<Operation>(new ImageImplementation(context, resource, m_stage, m_shaderPrefix, m_mode, m_specializedAccess, PIPELINE_TYPE_COMPUTE, m_dispatchCall));
2502 return de::MovePtr<Operation>(new ImageImplementation(context, resource, m_stage, m_shaderPrefix, m_mode, m_specializedAccess, PIPELINE_TYPE_GRAPHICS, m_dispatchCall));
2525 BufferCopyImplementation (OperationContext& context,
2535 , m_context (context)
2574 m_pipeline = (pipelineType == PIPELINE_TYPE_GRAPHICS ? de::MovePtr<Pipeline>(new GraphicsPipeline(context, stage, shaderPrefix, *m_descriptorSetLayout))
2575 : de::MovePtr<Pipeline>(new ComputePipeline(context, m_dispatchCall, shaderPrefix, *m_descriptorSetLayout)));
2691 VkQueueFlags getQueueFlags (const OperationContext& context) const
2693 DE_UNREF(context);
2703 de::MovePtr<Operation> build (OperationContext& context, Resource& inResource, Resource& outResource) const
2706 return de::MovePtr<Operation>(new BufferCopyImplementation(context, inResource, outResource, m_stage, m_bufferType, m_shaderPrefix, m_specializedAccess, PIPELINE_TYPE_COMPUTE, m_dispatchCall));
2708 return de::MovePtr<Operation>(new BufferCopyImplementation(context, inResource, outResource, m_stage, m_bufferType, m_shaderPrefix, m_specializedAccess, PIPELINE_TYPE_GRAPHICS, m_dispatchCall));
2724 CopyImageImplementation (OperationContext& context,
2733 , m_context (context)
2784 m_pipeline = (pipelineType == PIPELINE_TYPE_GRAPHICS ? de::MovePtr<Pipeline>(new GraphicsPipeline(context, stage, shaderPrefix, *m_descriptorSetLayout))
2785 : de::MovePtr<Pipeline>(new ComputePipeline(context, m_dispatchCall, shaderPrefix, *m_descriptorSetLayout)));
2932 VkQueueFlags getQueueFlags (const OperationContext& context) const
2934 DE_UNREF(context);
2944 de::MovePtr<Operation> build (OperationContext& context, Resource& inResource, Resource& outResource) const
2947 return de::MovePtr<Operation>(new CopyImageImplementation(context, inResource, outResource, m_stage, m_shaderPrefix, m_specializedAccess, PIPELINE_TYPE_COMPUTE, m_dispatchCall));
2949 return de::MovePtr<Operation>(new CopyImageImplementation(context, inResource, outResource, m_stage, m_shaderPrefix, m_specializedAccess, PIPELINE_TYPE_GRAPHICS, m_dispatchCall));
2964 MSImageImplementation(OperationContext& context,
2966 : m_context (context)
3016 const Unique<VkShaderModule> shaderModule(createShaderModule(vk, device, context.getBinaryCollection().get("comp"), (VkShaderModuleCreateFlags)0));
3018 m_pipeline = makeComputePipeline(vk, device, *m_pipelineLayout, *shaderModule, DE_NULL, context.getPipelineCacheData(), context.getResourceInterface());
3136 de::MovePtr<Operation> build (OperationContext& context, Resource& resource) const
3138 return de::MovePtr<Operation>(new MSImageImplementation(context, resource));
3159 WriteImplementation (OperationContext& context, Resource& resource)
3160 : m_context (context)
3236 ReadImplementation (OperationContext& context, Resource& resource)
3237 : m_context (context)
3389 VkQueueFlags getQueueFlags (const OperationContext& context) const
3391 DE_UNREF(context);
3395 de::MovePtr<Operation> build (OperationContext& context, Resource& resource) const
3398 return de::MovePtr<Operation>(new ReadImplementation(context, resource));
3400 return de::MovePtr<Operation>(new WriteImplementation(context, resource));
3418 CopyImplementation (OperationContext& context, Resource& inResource, Resource& outResource)
3419 : m_context (context)
3522 VkQueueFlags getQueueFlags (const OperationContext& context) const
3524 DE_UNREF(context);
3534 de::MovePtr<Operation> build (OperationContext& context, Resource& inResource, Resource& outResource) const
3536 return de::MovePtr<Operation>(new CopyImplementation(context, inResource, outResource));
3552 WriteImplementation (OperationContext& context, Resource& resource)
3553 : m_context (context)
3666 ReadImplementation (OperationContext& context, Resource& resource)
3667 : m_context (context)
3745 CopyImplementation (OperationContext& context, Resource& inResource, Resource& outResource)
3746 : m_context (context)
3852 VkQueueFlags getQueueFlags (const OperationContext& context) const
3854 DE_UNREF(context);
3858 de::MovePtr<Operation> build (OperationContext& context, Resource& resource) const
3861 return de::MovePtr<Operation>(new ReadImplementation(context, resource));
3863 return de::MovePtr<Operation>(new WriteImplementation(context, resource));
3891 Implementation (OperationContext& context, Resource& resource, const ClearMode mode)
3892 : m_context (context)
4000 VkQueueFlags getQueueFlags (const OperationContext& context) const
4002 DE_UNREF(context);
4009 de::MovePtr<Operation> build (OperationContext& context, Resource& resource) const
4011 return de::MovePtr<Operation>(new Implementation(context, resource, m_mode));
4043 Implementation (OperationContext& context, Resource& resource, const DrawCall drawCall)
4044 : m_context (context)
4047 , m_vertices (context)
4049 const DeviceInterface& vk = context.getDeviceInterface();
4050 const VkDevice device = context.getDevice();
4051 Allocator& allocator = context.getAllocator();
4105 .setShader (vk, device, VK_SHADER_STAGE_VERTEX_BIT, context.getBinaryCollection().get("draw_vert"), DE_NULL)
4106 .setShader (vk, device, VK_SHADER_STAGE_FRAGMENT_BIT, context.getBinaryCollection().get("draw_frag"), DE_NULL);
4108 m_pipeline = pipelineBuilder.build(vk, device, *m_pipelineLayout, *m_renderPass, context.getPipelineCacheData(), context.getResourceInterface() );
4296 VkQueueFlags getQueueFlags (const OperationContext& context) const
4298 DE_UNREF(context);
4302 de::MovePtr<Operation> build (OperationContext& context, Resource& resource) const
4304 return de::MovePtr<Operation>(new Implementation(context, resource, m_drawCall));
4326 Implementation (OperationContext& context, Resource& resource)
4327 : m_context (context)
4331 const DeviceInterface& vk = context.getDeviceInterface();
4332 const VkDevice device = context.getDevice();
4489 VkQueueFlags getQueueFlags (const OperationContext& context) const
4491 DE_UNREF(context);
4495 de::MovePtr<Operation> build (OperationContext& context, Resource& resource) const
4497 return de::MovePtr<Operation>(new Implementation(context, resource));
4518 GraphicsPipeline (OperationContext& context,
4525 , m_vertices (context)
4527 const DeviceInterface& vk = context.getDeviceInterface();
4528 const VkDevice device = context.getDevice();
4529 Allocator& allocator = context.getAllocator();
4552 .setShader (vk, device, VK_SHADER_STAGE_VERTEX_BIT, context.getBinaryCollection().get(shaderPrefix + "vert"), DE_NULL)
4553 .setShader (vk, device, VK_SHADER_STAGE_FRAGMENT_BIT, context.getBinaryCollection().get(shaderPrefix + "frag"), DE_NULL);
4555 m_pipeline = pipelineBuilder.build(vk, device, *m_pipelineLayout, *m_renderPass, context.getPipelineCacheData(), context.getResourceInterface());
4558 void recordCommands (OperationContext& context, const VkCommandBuffer cmdBuffer, const VkDescriptorSet descriptorSet)
4560 const DeviceInterface& vk = context.getDeviceInterface();
4561 SynchronizationWrapperPtr synchronizationWrapper = getSynchronizationWrapper(context.getSynchronizationType(), vk, DE_FALSE);
4630 ComputePipeline (OperationContext& context,
4636 const DeviceInterface& vk = context.getDeviceInterface();
4637 const VkDevice device = context.getDevice();
4639 const Unique<VkShaderModule> shaderModule(createShaderModule(vk, device, context.getBinaryCollection().get(shaderPrefix + "comp"), (VkShaderModuleCreateFlags)0));
4642 m_pipeline = makeComputePipeline(vk, device, *m_pipelineLayout, *shaderModule, DE_NULL, context.getPipelineCacheData(), context.getResourceInterface());
4645 void recordCommands (OperationContext& context, const VkCommandBuffer cmdBuffer, const VkDescriptorSet descriptorSet)
4647 const DeviceInterface& vk = context.getDeviceInterface();
4664 ReadImplementation (OperationContext& context, Resource& resource)
4665 : m_context (context)
4708 ? de::MovePtr<Pipeline>(new ComputePipeline(context, m_resource.getBuffer().handle, "read_ib_", *m_descriptorSetLayout))
4709 : de::MovePtr<Pipeline>(new GraphicsPipeline(context, m_resource.getType(), m_resource.getBuffer().handle, "read_ib_", *m_descriptorSetLayout)));
4778 WriteImplementation (OperationContext& context, Resource& resource)
4779 : m_context (context)
4956 VkQueueFlags getQueueFlags (const OperationContext& context) const
4958 DE_UNREF(context);
4962 de::MovePtr<Operation> build (OperationContext& context, Resource& resource) const
4964 return de::MovePtr<Operation>(new ReadImplementation(context, resource));
4997 VkQueueFlags getQueueFlags (const OperationContext& context) const
4999 DE_UNREF(context);
5003 de::MovePtr<Operation> build (OperationContext& context, Resource& resource) const
5005 return de::MovePtr<Operation>(new WriteImplementation(context, resource));
5029 Implementation (OperationContext& context, Resource& resource, DrawMode drawMode)
5030 : m_context (context)
5036 const DeviceInterface& vk = context.getDeviceInterface();
5037 const VkDevice device = context.getDevice();
5038 Allocator& allocator = context.getAllocator();
5099 .setShader (vk, device, VK_SHADER_STAGE_VERTEX_BIT, context.getBinaryCollection().get("input_vert"), DE_NULL)
5100 .setShader (vk, device, VK_SHADER_STAGE_FRAGMENT_BIT, context.getBinaryCollection().get("input_frag"), DE_NULL)
5101 .build (vk, device, *m_pipelineLayout, *m_renderPass, context.getPipelineCacheData(), context.getResourceInterface());
5301 de::MovePtr<Operation> build (OperationContext& context, Resource& resource) const
5303 return de::MovePtr<Operation>(new Implementation(context, resource, m_drawMode));
5321 OperationContext::OperationContext (Context& context, SynchronizationType syncType, PipelineCacheData& pipelineCacheData)
5322 : m_context (context)
5324 , m_vki (context.getInstanceInterface())
5325 , m_vk (context.getDeviceInterface())
5326 , m_physicalDevice (context.getPhysicalDevice())
5327 , m_device (context.getDevice())
5328 , m_allocator (context.getDefaultAllocator())
5329 , m_progCollection (context.getBinaryCollection())
5334 OperationContext::OperationContext (Context& context,
5340 : m_context (context)
5342 , m_vki (context.getInstanceInterface())
5344 , m_physicalDevice (context.getPhysicalDevice())
5347 , m_progCollection (context.getBinaryCollection())
5352 OperationContext::OperationContext (Context& context,
5361 : m_context (context)
5373 Resource::Resource (OperationContext& context, const ResourceDescription& desc, const deUint32 usage, const vk::VkSharingMode sharingMode, const std::vector<deUint32>& queueFamilyIndex)
5376 const DeviceInterface& vk = context.getDeviceInterface();
5377 const InstanceInterface& vki = context.getInstanceInterface();
5378 const VkDevice device = context.getDevice();
5379 const VkPhysicalDevice physDevice = context.getPhysicalDevice();
5380 Allocator& allocator = context.getAllocator();