1 #ifndef _VKTFRAGMENTSHADINGRATEGROUPPARAMS_HPP 2 #define _VKTFRAGMENTSHADINGRATEGROUPPARAMS_HPP 3 /*------------------------------------------------------------------------- 4 * Vulkan Conformance Tests 5 * ------------------------ 6 * 7 * Copyright (c) 2018 Google Inc. 8 * Copyright (c) 2019-2020 NVIDIA Corporation 9 * 10 * Licensed under the Apache License, Version 2.0 (the "License"); 11 * you may not use this file except in compliance with the License. 12 * You may obtain a copy of the License at 13 * 14 * http://www.apache.org/licenses/LICENSE-2.0 15 * 16 * Unless required by applicable law or agreed to in writing, software 17 * distributed under the License is distributed on an "AS IS" BASIS, 18 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 19 * See the License for the specific language governing permissions and 20 * limitations under the License. 21 * 22 *//*! 23 * \file 24 * \brief Structure with parameters shared by all tests in FSR group. 25 *//*--------------------------------------------------------------------*/ 26 27 #include "vkPipelineConstructionUtil.hpp" 28 29 namespace vkt 30 { 31 namespace FragmentShadingRate 32 { 33 34 // Structure containing parameters for all tests in fragment_shading_rate group 35 struct GroupParams 36 { 37 // When this flag is set tests use dynamic rendering, otherwise renderpass object is used. 38 bool useDynamicRendering; 39 40 // When this flag is true then secondary command buffer is created in test 41 bool useSecondaryCmdBuffer; 42 43 // When true begin/endRendering is in secondary command buffer, when false those 44 // commands are recorded to primary command buffer. This flag is checked only when 45 // useSecondaryCmdBuffer is true. 46 bool secondaryCmdBufferCompletelyContainsDynamicRenderpass; 47 48 // Specifies if monolithic pipeline is used or if VK_EXT_graphics_pipeline_library is used. 49 vk::PipelineConstructionType pipelineConstructionType; 50 }; 51 52 typedef de::SharedPtr<GroupParams> SharedGroupParams; 53 54 } // namespace FragmentShadingRate 55 } // namespace vkt 56 57 #endif // _VKTFRAGMENTSHADINGRATEGROUPPARAMS_HPP 58