Home | History | Annotate | Download | only in pipeline
      1 #ifndef _VKTPIPELINEMULTISAMPLEBASERESOLVE_HPP
      2 #define _VKTPIPELINEMULTISAMPLEBASERESOLVE_HPP
      3 /*------------------------------------------------------------------------
      4  * Vulkan Conformance Tests
      5  * ------------------------
      6  *
      7  * Copyright (c) 2016 The Khronos Group Inc.
      8  *
      9  * Licensed under the Apache License, Version 2.0 (the "License");
     10  * you may not use this file except in compliance with the License.
     11  * You may obtain a copy of the License at
     12  *
     13  *      http://www.apache.org/licenses/LICENSE-2.0
     14  *
     15  * Unless required by applicable law or agreed to in writing, software
     16  * distributed under the License is distributed on an "AS IS" BASIS,
     17  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     18  * See the License for the specific language governing permissions and
     19  * limitations under the License.
     20  *
     21  *//*!
     22  * \file vktPipelineMultisampleBaseResolve.hpp
     23  * \brief Base class for tests that check results of multisample resolve
     24  *//*--------------------------------------------------------------------*/
     25 
     26 #include "vktPipelineMultisampleBase.hpp"
     27 #include "vktTestCase.hpp"
     28 #include "tcuVector.hpp"
     29 
     30 namespace vkt
     31 {
     32 namespace pipeline
     33 {
     34 namespace multisample
     35 {
     36 
     37 class MSCaseBaseResolve : public MultisampleCaseBase
     38 {
     39 public:
     40 	MSCaseBaseResolve	(tcu::TestContext&		testCtx,
     41 						 const std::string&		name,
     42 						 const ImageMSParams&	imageMSParams)
     43 		: MultisampleCaseBase(testCtx, name, imageMSParams)
     44 	{}
     45 };
     46 
     47 class MSInstanceBaseResolve : public MultisampleInstanceBase
     48 {
     49 public:
     50 							MSInstanceBaseResolve	(Context&							context,
     51 													 const ImageMSParams&				imageMSParams)
     52 								: MultisampleInstanceBase(context, imageMSParams)
     53 							{}
     54 
     55 protected:
     56 
     57 	tcu::TestStatus			iterate					(void);
     58 
     59 	virtual tcu::TestStatus	verifyImageData			(const vk::VkImageCreateInfo&		imageRSInfo,
     60 													 const tcu::ConstPixelBufferAccess&	dataRS) const = 0;
     61 };
     62 
     63 } // multisample
     64 } // pipeline
     65 } // vkt
     66 
     67 #endif // _VKTPIPELINEMULTISAMPLEBASERESOLVE_HPP
     68