Lines Matching defs:const

56 const VkTransformMatrixKHR identityMatrix3x4 = { { { 1.0f, 0.0f, 0.0f, 0.0f }, { 0.0f, 1.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 1.0f, 0.0f } } };
70 inline std::string updateRayTracingGLSL (const std::string& str)
81 bool pointInTriangle2D(const tcu::Vec3& p, const tcu::Vec3& p0, const tcu::Vec3& p1, const tcu::Vec3& p2);
85 void checkAccelerationStructureVertexBufferFormat (const vk::InstanceInterface &vki, vk::VkPhysicalDevice physicalDevice, vk::VkFormat format);
91 RaytracedGeometryBase (const RaytracedGeometryBase& geometry) = delete;
95 inline VkGeometryTypeKHR getGeometryType (void) const { return m_geometryType; }
96 inline bool isTrianglesType (void) const { return m_geometryType == VK_GEOMETRY_TYPE_TRIANGLES_KHR; }
97 inline VkFormat getVertexFormat (void) const { return m_vertexFormat; }
98 inline VkIndexType getIndexType (void) const { return m_indexType; }
99 inline bool usesIndices (void) const { return m_indexType != VK_INDEX_TYPE_NONE_KHR; }
100 inline VkGeometryFlagsKHR getGeometryFlags (void) const { return m_geometryFlags; }
101 inline void setGeometryFlags (const VkGeometryFlagsKHR geometryFlags) { m_geometryFlags = geometryFlags; }
103 inline bool getHasOpacityMicromap (void) const { return m_hasOpacityMicromap; }
104 inline void setOpacityMicromap (const VkAccelerationStructureTrianglesOpacityMicromapEXT* opacityGeometryMicromap) { m_hasOpacityMicromap = true; m_opacityGeometryMicromap = *opacityGeometryMicromap; }
105 virtual deUint32 getVertexCount (void) const = 0;
106 virtual const deUint8* getVertexPointer (void) const = 0;
107 virtual VkDeviceSize getVertexStride (void) const = 0;
108 virtual VkDeviceSize getAABBStride (void) const = 0;
109 virtual size_t getVertexByteSize (void) const = 0;
110 virtual deUint32 getIndexCount (void) const = 0;
111 virtual const deUint8* getIndexPointer (void) const = 0;
112 virtual VkDeviceSize getIndexStride (void) const = 0;
113 virtual size_t getIndexByteSize (void) const = 0;
114 virtual deUint32 getPrimitiveCount (void) const = 0;
115 virtual void addVertex (const tcu::Vec3& vertex) = 0;
116 virtual void addIndex (const deUint32& index) = 0;
160 const T range = std::numeric_limits<T>::max();
161 const T intVal = convertSatRte<T>(src * static_cast<float>(range));
198 template<typename V> V convertFloatTo (const tcu::Vec3& vertex);
199 template<> inline tcu::Vec2 convertFloatTo<tcu::Vec2> (const tcu::Vec3& vertex) { return tcu::Vec2(vertex.x(), vertex.y()); }
200 template<> inline tcu::Vec3 convertFloatTo<tcu::Vec3> (const tcu::Vec3& vertex) { return vertex; }
201 template<> inline tcu::Vec4 convertFloatTo<tcu::Vec4> (const tcu::Vec3& vertex) { return tcu::Vec4(vertex.x(), vertex.y(), vertex.z(), 0.0f); }
202 template<> inline Vec2_16 convertFloatTo<Vec2_16> (const tcu::Vec3& vertex) { return Vec2_16(deFloat32To16(vertex.x()), deFloat32To16(vertex.y())); }
203 template<> inline Vec3_16 convertFloatTo<Vec3_16> (const tcu::Vec3& vertex) { return Vec3_16(deFloat32To16(vertex.x()), deFloat32To16(vertex.y()), deFloat32To16(vertex.z())); }
204 template<> inline Vec4_16 convertFloatTo<Vec4_16> (const tcu::Vec3& vertex) { return Vec4_16(deFloat32To16(vertex.x()), deFloat32To16(vertex.y()), deFloat32To16(vertex.z()), deFloat32To16(0.0f)); }
205 template<> inline Vec2_16SNorm convertFloatTo<Vec2_16SNorm> (const tcu::Vec3& vertex) { return Vec2_16SNorm(deFloat32ToSNorm<deInt16>(vertex.x()), deFloat32ToSNorm<deInt16>(vertex.y())); }
206 template<> inline Vec3_16SNorm convertFloatTo<Vec3_16SNorm> (const tcu::Vec3& vertex) { return Vec3_16SNorm(deFloat32ToSNorm<deInt16>(vertex.x()), deFloat32ToSNorm<deInt16>(vertex.y()), deFloat32ToSNorm<deInt16>(vertex.z())); }
207 template<> inline Vec4_16SNorm convertFloatTo<Vec4_16SNorm> (const tcu::Vec3& vertex) { return Vec4_16SNorm(deFloat32ToSNorm<deInt16>(vertex.x()), deFloat32ToSNorm<deInt16>(vertex.y()), deFloat32ToSNorm<deInt16>(vertex.z()), deFloat32ToSNorm<deInt16>(0.0f)); }
208 template<> inline tcu::DVec2 convertFloatTo<tcu::DVec2> (const tcu::Vec3& vertex) { return tcu::DVec2(static_cast<double>(vertex.x()), static_cast<double>(vertex.y())); }
209 template<> inline tcu::DVec3 convertFloatTo<tcu::DVec3> (const tcu::Vec3& vertex) { return tcu::DVec3(static_cast<double>(vertex.x()), static_cast<double>(vertex.y()), static_cast<double>(vertex.z())); }
210 template<> inline tcu::DVec4 convertFloatTo<tcu::DVec4> (const tcu::Vec3& vertex) { return tcu::DVec4(static_cast<double>(vertex.x()), static_cast<double>(vertex.y()), static_cast<double>(vertex.z()), 0.0); }
211 template<> inline Vec2_8SNorm convertFloatTo<Vec2_8SNorm> (const tcu::Vec3& vertex) { return Vec2_8SNorm(deFloat32ToSNorm<deInt8>(vertex.x()), deFloat32ToSNorm<deInt8>(vertex.y())); }
212 template<> inline Vec3_8SNorm convertFloatTo<Vec3_8SNorm> (const tcu::Vec3& vertex) { return Vec3_8SNorm(deFloat32ToSNorm<deInt8>(vertex.x()), deFloat32ToSNorm<deInt8>(vertex.y()), deFloat32ToSNorm<deInt8>(vertex.z())); }
213 template<> inline Vec4_8SNorm convertFloatTo<Vec4_8SNorm> (const tcu::Vec3& vertex) { return Vec4_8SNorm(deFloat32ToSNorm<deInt8>(vertex.x()), deFloat32ToSNorm<deInt8>(vertex.y()), deFloat32ToSNorm<deInt8>(vertex.z()), deFloat32ToSNorm<deInt8>(0.0f)); }
225 RaytracedGeometry (const RaytracedGeometry& geometry) = delete;
227 RaytracedGeometry (VkGeometryTypeKHR geometryType, const std::vector<V>& vertices, const std::vector<I>& indices = std::vector<I>(), deUint32 paddingBlocks = 0u);
229 deUint32 getVertexCount (void) const override;
230 const deUint8* getVertexPointer (void) const override;
231 VkDeviceSize getVertexStride (void) const override;
232 VkDeviceSize getAABBStride (void) const override;
233 size_t getVertexByteSize (void) const override;
234 deUint32 getIndexCount (void) const override;
235 const deUint8* getIndexPointer (void) const override;
236 VkDeviceSize getIndexStride (void) const override;
237 size_t getIndexByteSize (void) const override;
238 deUint32 getPrimitiveCount (void) const override;
240 void addVertex (const tcu::Vec3& vertex) override;
241 void addIndex (const deUint32& index) override;
245 void checkGeometryType () const; // Checks geometry type is valid.
247 size_t getBlockSize () const; // Return stored vertex buffer block size.
248 void addNativeVertex (const V& vertex); // Adds new vertex in native format.
278 const deUint32 m_paddingBlocks;
300 RaytracedGeometry<V,I>::RaytracedGeometry (VkGeometryTypeKHR geometryType, const std::vector<V>& vertices, const std::vector<I>& indices, deUint32 paddingBlocks)
308 for (const auto& vertex : vertices)
313 deUint32 RaytracedGeometry<V,I>::getVertexCount (void) const
319 const deUint8* RaytracedGeometry<V, I>::getVertexPointer (void) const
322 return reinterpret_cast<const deUint8*>(m_vertices.data());
326 VkDeviceSize RaytracedGeometry<V,I>::getVertexStride (void) const
332 VkDeviceSize RaytracedGeometry<V, I>::getAABBStride (void) const
338 size_t RaytracedGeometry<V, I>::getVertexByteSize (void) const
344 deUint32 RaytracedGeometry<V, I>::getIndexCount (void) const
350 const deUint8* RaytracedGeometry<V, I>::getIndexPointer (void) const
352 const auto indexCount = getIndexCount();
356 return reinterpret_cast<const deUint8*>(m_indices.data());
360 VkDeviceSize RaytracedGeometry<V, I>::getIndexStride (void) const
366 size_t RaytracedGeometry<V, I>::getIndexByteSize (void) const
368 const auto indexCount = getIndexCount();
375 deUint32 RaytracedGeometry<V,I>::getPrimitiveCount (void) const
381 void RaytracedGeometry<V, I>::addVertex (const tcu::Vec3& vertex)
387 void RaytracedGeometry<V, I>::addNativeVertex (const V& vertex)
389 const auto oldSize = m_vertices.size();
390 const auto blockSize = getBlockSize();
428 void RaytracedGeometry<V, I>::addIndex (const deUint32& index)
441 void RaytracedGeometry<V, I>::checkGeometryType () const
443 const auto geometryType = getGeometryType();
458 size_t RaytracedGeometry<V, I>::getBlockSize () const
465 VkDeviceAddress getBufferDeviceAddress ( const DeviceInterface& vkd,
466 const VkDevice device,
467 const VkBuffer buffer,
481 SerialInfo(const std::vector<deUint64>& addresses, const std::vector<VkDeviceSize>& sizes)
487 const std::vector<deUint64>& addresses () const { return m_addresses; }
488 const std::vector<VkDeviceSize>& sizes () const { return m_sizes; }
521 SerialStorage (const DeviceInterface& vk,
522 const VkDevice device,
524 const VkAccelerationStructureBuildTypeKHR buildType,
525 const VkDeviceSize storageSize);
527 SerialStorage (const DeviceInterface& vk,
528 const VkDevice device,
530 const VkAccelerationStructureBuildTypeKHR buildType,
531 const SerialInfo& SerialInfo);
534 VkDeviceOrHostAddressKHR getAddress (const DeviceInterface& vk,
535 const VkDevice device,
536 const VkAccelerationStructureBuildTypeKHR buildType);
537 VkDeviceOrHostAddressConstKHR getAddressConst (const DeviceInterface& vk,
538 const VkDevice device,
539 const VkAccelerationStructureBuildTypeKHR buildType);
547 bool hasDeepFormat () const;
548 de::SharedPtr<SerialStorage> getBottomStorage (deUint32 index) const;
550 VkDeviceSize getStorageSize () const;
551 const SerialInfo& getSerialInfo () const;
555 const VkAccelerationStructureBuildTypeKHR m_buildType;
556 const VkDeviceSize m_storageSize;
557 const SerialInfo m_serialInfo;
568 BottomLevelAccelerationStructure (const BottomLevelAccelerationStructure& other) = delete;
571 virtual void setGeometryData (const std::vector<tcu::Vec3>& geometryData,
572 const bool triangles,
573 const VkGeometryFlagsKHR geometryFlags = 0u );
574 virtual void setDefaultGeometryData (const VkShaderStageFlagBits testStage,
575 const VkGeometryFlagsKHR geometryFlags = 0u );
576 virtual void setGeometryCount (const size_t geometryCount);
578 virtual void addGeometry (const std::vector<tcu::Vec3>& geometryData,
579 const bool triangles,
580 const VkGeometryFlagsKHR geometryFlags = 0u,
581 const VkAccelerationStructureTrianglesOpacityMicromapEXT *opacityGeometryMicromap = DE_NULL );
583 virtual void setBuildType (const VkAccelerationStructureBuildTypeKHR buildType) = DE_NULL;
584 virtual VkAccelerationStructureBuildTypeKHR getBuildType () const = 0;
585 virtual void setCreateFlags (const VkAccelerationStructureCreateFlagsKHR createFlags) = DE_NULL;
588 virtual void setBuildFlags (const VkBuildAccelerationStructureFlagsKHR buildFlags) = DE_NULL;
591 virtual void setDeferredOperation (const bool deferredOperation,
592 const deUint32 workerThreadCount = 0u ) = DE_NULL;
593 virtual void setUseArrayOfPointers (const bool useArrayOfPointers) = DE_NULL;
594 virtual void setUseMaintenance5 (const bool useMaintenance5) = DE_NULL;
595 virtual void setIndirectBuildParameters (const VkBuffer indirectBuffer,
596 const VkDeviceSize indirectBufferOffset,
597 const deUint32 indirectBufferStride) = DE_NULL;
598 virtual VkBuildAccelerationStructureFlagsKHR getBuildFlags () const = DE_NULL;
599 VkAccelerationStructureBuildSizesInfoKHR getStructureBuildSizes () const;
602 virtual void create (const DeviceInterface& vk,
603 const VkDevice device,
607 const void* pNext = DE_NULL,
608 const MemoryRequirement& addMemoryRequirement = MemoryRequirement::Any,
609 const VkBuffer creationBuffer = VK_NULL_HANDLE,
610 const VkDeviceSize creationBufferSize = 0u) = DE_NULL;
611 virtual void build (const DeviceInterface& vk,
612 const VkDevice device,
613 const VkCommandBuffer cmdBuffer,
615 virtual void copyFrom (const DeviceInterface& vk,
616 const VkDevice device,
617 const VkCommandBuffer cmdBuffer,
621 virtual void serialize (const DeviceInterface& vk,
622 const VkDevice device,
623 const VkCommandBuffer cmdBuffer,
625 virtual void deserialize (const DeviceInterface& vk,
626 const VkDevice device,
627 const VkCommandBuffer cmdBuffer,
631 void createAndBuild (const DeviceInterface& vk,
632 const VkDevice device,
633 const VkCommandBuffer cmdBuffer,
636 void createAndCopyFrom (const DeviceInterface& vk,
637 const VkDevice device,
638 const VkCommandBuffer cmdBuffer,
643 void createAndDeserializeFrom (const DeviceInterface& vk,
644 const VkDevice device,
645 const VkCommandBuffer cmdBuffer,
649 virtual const VkAccelerationStructureKHR* getPtr (void) const = DE_NULL;
677 BlasPtr at (deUint32 index) const { return m_structs[index]; }
678 BlasPtr operator[] (deUint32 index) const { return m_structs[index]; }
679 auto structures () const -> const std::vector<BlasPtr>& { return m_structs; }
680 deUint32 structCount () const { return static_cast<deUint32>(m_structs.size()); }
683 deUint32 batchStructCount () const {return m_batchStructCount; }
684 void batchStructCount (const deUint32& value);
687 deUint32 batchGeomCount () const {return m_batchGeomCount; }
688 void batchGeomCount (const deUint32& value) { m_batchGeomCount = value; }
690 bool tryCachedMemory () const { return m_tryCachedMemory; }
691 void tryCachedMemory (const bool cachedMemory) { m_tryCachedMemory = cachedMemory; }
699 void batchCreate (const DeviceInterface& vkd,
700 const VkDevice device,
702 void batchCreateAdjust (const DeviceInterface& vkd,
703 const VkDevice device,
705 const VkDeviceSize maxBufferSize);
706 void batchBuild (const DeviceInterface& vk,
707 const VkDevice device,
709 void batchBuild (const DeviceInterface& vk,
710 const VkDevice device,
714 size_t getAllocationCount () const;
715 size_t getAllocationCount (const DeviceInterface& vk,
716 const VkDevice device,
717 const VkDeviceSize maxBufferSize) const;
718 auto getAllocationSizes (const DeviceInterface& vk, // (strBuff, scratchBuff, vertBuff, indexBuff)
719 const VkDevice device) const -> tcu::Vector<VkDeviceSize, 4>;
765 VkDeviceSize sum () const;
771 TopLevelAccelerationStructure (const TopLevelAccelerationStructure& other) = delete;
774 virtual void setInstanceCount (const size_t instanceCount);
776 const VkTransformMatrixKHR& matrix = identityMatrix3x4,
782 virtual void setBuildType (const VkAccelerationStructureBuildTypeKHR buildType) = DE_NULL;
783 virtual void setCreateFlags (const VkAccelerationStructureCreateFlagsKHR createFlags) = DE_NULL;
786 virtual void setBuildFlags (const VkBuildAccelerationStructureFlagsKHR buildFlags) = DE_NULL;
789 virtual void setDeferredOperation (const bool deferredOperation,
790 const deUint32 workerThreadCount = 0u) = DE_NULL;
791 virtual void setUseArrayOfPointers (const bool useArrayOfPointers) = DE_NULL;
792 virtual void setIndirectBuildParameters (const VkBuffer indirectBuffer,
793 const VkDeviceSize indirectBufferOffset,
794 const deUint32 indirectBufferStride) = DE_NULL;
795 virtual void setUsePPGeometries (const bool usePPGeometries) = 0;
796 virtual void setTryCachedMemory (const bool tryCachedMemory) = 0;
797 virtual VkBuildAccelerationStructureFlagsKHR getBuildFlags () const = DE_NULL;
798 VkAccelerationStructureBuildSizesInfoKHR getStructureBuildSizes () const;
801 virtual void getCreationSizes (const DeviceInterface& vk,
802 const VkDevice device,
803 const VkDeviceSize structureSize,
805 virtual void create (const DeviceInterface& vk,
806 const VkDevice device,
810 const void* pNext = DE_NULL,
811 const MemoryRequirement& addMemoryRequirement = MemoryRequirement::Any,
812 const VkBuffer creationBuffer = VK_NULL_HANDLE,
813 const VkDeviceSize creationBufferSize = 0u) = DE_NULL;
814 virtual void build (const DeviceInterface& vk,
815 const VkDevice device,
816 const VkCommandBuffer cmdBuffer,
818 virtual void copyFrom (const DeviceInterface& vk,
819 const VkDevice device,
820 const VkCommandBuffer cmdBuffer,
824 virtual void serialize (const DeviceInterface& vk,
825 const VkDevice device,
826 const VkCommandBuffer cmdBuffer,
828 virtual void deserialize (const DeviceInterface& vk,
829 const VkDevice device,
830 const VkCommandBuffer cmdBuffer,
833 virtual std::vector<VkDeviceSize> getSerializingSizes (const DeviceInterface& vk,
834 const VkDevice device,
835 const VkQueue queue,
836 const deUint32 queueFamilyIndex) = DE_NULL;
838 virtual std::vector<deUint64> getSerializingAddresses (const DeviceInterface& vk,
839 const VkDevice device) const = DE_NULL;
842 void createAndBuild (const DeviceInterface& vk,
843 const VkDevice device,
844 const VkCommandBuffer cmdBuffer,
847 void createAndCopyFrom (const DeviceInterface& vk,
848 const VkDevice device,
849 const VkCommandBuffer cmdBuffer,
854 void createAndDeserializeFrom (const DeviceInterface& vk,
855 const VkDevice device,
856 const VkCommandBuffer cmdBuffer,
861 virtual const VkAccelerationStructureKHR* getPtr (void) const = DE_NULL;
863 virtual void updateInstanceMatrix (const DeviceInterface& vk,
864 const VkDevice device,
866 const VkTransformMatrixKHR& matrix) = 0;
875 virtual void createAndDeserializeBottoms (const DeviceInterface& vk,
876 const VkDevice device,
877 const VkCommandBuffer cmdBuffer,
888 bool queryAccelerationStructureSize (const DeviceInterface& vk,
889 const VkDevice device,
890 const VkCommandBuffer cmdBuffer,
891 const std::vector<VkAccelerationStructureKHR>& accelerationStructureHandles,
893 const VkQueryPool queryPool,
904 CompileRequiredError (const std::string& error)
915 const VkSpecializationInfo* specializationInfo = nullptr,
916 const VkPipelineShaderStageCreateFlags pipelineShaderStageCreateFlags = static_cast<VkPipelineShaderStageCreateFlags>(0),
917 const void* pipelineShaderStageCreateInfopNext = nullptr);
921 const VkSpecializationInfo* specializationInfoPtr = nullptr,
922 const VkPipelineShaderStageCreateFlags pipelineShaderStageCreateFlags = static_cast<VkPipelineShaderStageCreateFlags>(0),
923 const void* pipelineShaderStageCreateInfopNext = nullptr);
927 const VkSpecializationInfo* specializationInfo = nullptr,
928 const VkPipelineShaderStageCreateFlags pipelineShaderStageCreateFlags = static_cast<VkPipelineShaderStageCreateFlags>(0),
929 const void* pipelineShaderStageCreateInfopNext = nullptr);
931 const void*pShaderGroupCaptureReplayHandle);
935 Move<VkPipeline> createPipeline (const DeviceInterface& vk,
936 const VkDevice device,
937 const VkPipelineLayout pipelineLayout,
938 const std::vector<de::SharedPtr<Move<VkPipeline>>>& pipelineLibraries = std::vector<de::SharedPtr<Move<VkPipeline>>>());
939 Move<VkPipeline> createPipeline (const DeviceInterface& vk,
940 const VkDevice device,
941 const VkPipelineLayout pipelineLayout,
942 const std::vector<VkPipeline>& pipelineLibraries,
943 const VkPipelineCache pipelineCache);
944 std::vector<de::SharedPtr<Move<VkPipeline>>> createPipelineWithLibraries (const DeviceInterface& vk,
945 const VkDevice device,
946 const VkPipelineLayout pipelineLayout);
947 std::vector<uint8_t> getShaderGroupHandles (const DeviceInterface& vk,
948 const VkDevice device,
949 const VkPipeline pipeline,
950 const deUint32 shaderGroupHandleSize,
951 const deUint32 firstGroup,
952 const deUint32 groupCount) const;
953 std::vector<uint8_t> getShaderGroupReplayHandles (const DeviceInterface& vk,
954 const VkDevice device,
955 const VkPipeline pipeline,
956 const deUint32 shaderGroupHandleReplaySize,
957 const deUint32 firstGroup,
958 const deUint32 groupCount) const;
959 de::MovePtr<BufferWithMemory> createShaderBindingTable (const DeviceInterface& vk,
960 const VkDevice device,
961 const VkPipeline pipeline,
963 const deUint32& shaderGroupHandleSize,
964 const deUint32 shaderGroupBaseAlignment,
965 const deUint32& firstGroup,
966 const deUint32& groupCount,
967 const VkBufferCreateFlags& additionalBufferCreateFlags = VkBufferCreateFlags(0u),
968 const VkBufferUsageFlags& additionalBufferUsageFlags = VkBufferUsageFlags(0u),
969 const MemoryRequirement& additionalMemoryRequirement = MemoryRequirement::Any,
970 const VkDeviceAddress& opaqueCaptureAddress = 0u,
971 const deUint32 shaderBindingTableOffset = 0u,
972 const deUint32 shaderRecordSize = 0u,
973 const void** shaderGroupDataPtrPerGroup = nullptr,
974 const bool autoAlignRecords = true);
975 de::MovePtr<BufferWithMemory> createShaderBindingTable (const DeviceInterface& vk,
976 const VkDevice device,
978 const deUint32 shaderGroupHandleSize,
979 const deUint32 shaderGroupBaseAlignment,
980 const std::vector<uint8_t>& shaderHandles,
981 const VkBufferCreateFlags additionalBufferCreateFlags = VkBufferCreateFlags(0u),
982 const VkBufferUsageFlags additionalBufferUsageFlags = VkBufferUsageFlags(0u),
983 const MemoryRequirement& additionalMemoryRequirement = MemoryRequirement::Any,
984 const VkDeviceAddress opaqueCaptureAddress = 0u,
985 const deUint32 shaderBindingTableOffset = 0u,
986 const deUint32 shaderRecordSize = 0u,
987 const void** shaderGroupDataPtrPerGroup = nullptr,
988 const bool autoAlignRecords = true);
989 void setCreateFlags (const VkPipelineCreateFlags& pipelineCreateFlags);
990 void setCreateFlags2 (const VkPipelineCreateFlags2KHR& pipelineCreateFlags2);
991 void setMaxRecursionDepth (const deUint32& maxRecursionDepth);
992 void setMaxPayloadSize (const deUint32& maxPayloadSize);
993 void setMaxAttributeSize (const deUint32& maxAttributeSize);
994 void setDeferredOperation (const bool deferredOperation,
995 const deUint32 workerThreadCount = 0);
996 void addDynamicState (const VkDynamicState& dynamicState);
1000 Move<VkPipeline> createPipelineKHR (const DeviceInterface& vk,
1001 const VkDevice device,
1002 const VkPipelineLayout pipelineLayout,
1003 const std::vector<VkPipeline>& pipelineLibraries,
1004 const VkPipelineCache pipelineCache = DE_NULL);
1026 RayTracingProperties (const InstanceInterface& vki,
1027 const VkPhysicalDevice physicalDevice) { DE_UNREF(vki); DE_UNREF(physicalDevice); }
1045 de::MovePtr<RayTracingProperties> makeRayTracingProperties (const InstanceInterface& vki,
1046 const VkPhysicalDevice physicalDevice);
1048 void cmdTraceRays (const DeviceInterface& vk,
1050 const VkStridedDeviceAddressRegionKHR* raygenShaderBindingTableRegion,
1051 const VkStridedDeviceAddressRegionKHR* missShaderBindingTableRegion,
1052 const VkStridedDeviceAddressRegionKHR* hitShaderBindingTableRegion,
1053 const VkStridedDeviceAddressRegionKHR* callableShaderBindingTableRegion,
1058 void cmdTraceRaysIndirect (const DeviceInterface& vk,
1060 const VkStridedDeviceAddressRegionKHR* raygenShaderBindingTableRegion,
1061 const VkStridedDeviceAddressRegionKHR* missShaderBindingTableRegion,
1062 const VkStridedDeviceAddressRegionKHR* hitShaderBindingTableRegion,
1063 const VkStridedDeviceAddressRegionKHR* callableShaderBindingTableRegion,
1066 void cmdTraceRaysIndirect2 (const DeviceInterface& vk,
1071 static inline VkDeviceOrHostAddressConstKHR makeDeviceOrHostAddressConstKHR(const void* hostAddress)
1073 // VS2015: Cannot create as a const due to cannot assign hostAddress due to it is a second field. Only assigning of first field supported.
1085 // VS2015: Cannot create as a const due to cannot assign hostAddress due to it is a second field. Only assigning of first field supported.
1095 static inline VkDeviceOrHostAddressConstKHR makeDeviceOrHostAddressConstKHR(const DeviceInterface& vk,
1096 const VkDevice device,
1100 // VS2015: Cannot create as a const due to cannot assign hostAddress due to it is a second field. Only assigning of first field supported.
1108 DE_NULL, // const void* pNext;
1116 static inline VkDeviceOrHostAddressKHR makeDeviceOrHostAddressKHR(const DeviceInterface& vk,
1117 const VkDevice device,
1121 // VS2015: Cannot create as a const due to cannot assign hostAddress due to it is a second field. Only assigning of first field supported.
1129 DE_NULL, // const void* pNext;