1 #ifndef _GLSSCISSORTESTS_HPP 2 #define _GLSSCISSORTESTS_HPP 3 /*------------------------------------------------------------------------- 4 * drawElements Quality Program OpenGL (ES) Module 5 * ----------------------------------------------- 6 * 7 * Copyright 2014 The Android Open Source Project 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 23 * \brief Common parts for ES2/3 scissor tests 24 *//*--------------------------------------------------------------------*/ 25 26 #include "tcuDefs.hpp" 27 #include "tcuTestCase.hpp" 28 #include "tcuVectorType.hpp" 29 #include "tcuVector.hpp" 30 #include "sglrGLContext.hpp" 31 32 namespace glu 33 { 34 class RenderContext; 35 } // glu 36 37 namespace sglr 38 { 39 class Context; 40 } // sglr 41 42 namespace deqp 43 { 44 namespace gls 45 { 46 namespace Functional 47 { 48 namespace ScissorTestInternal 49 { 50 51 using tcu::Vec4; 52 53 enum PrimitiveType 54 { 55 POINT = 0, 56 LINE, 57 TRIANGLE, 58 59 PRIMITIVETYPE_LAST 60 }; 61 62 enum ClearType 63 { 64 CLEAR_COLOR_FIXED = 0, 65 CLEAR_COLOR_FLOAT, 66 CLEAR_COLOR_INT, 67 CLEAR_COLOR_UINT, 68 CLEAR_DEPTH, 69 CLEAR_STENCIL, 70 CLEAR_DEPTH_STENCIL, 71 72 CLEAR_LAST 73 }; 74 75 // Areas are of the form (x,y,widht,height) in the range [0,1] 76 tcu::TestNode* createPrimitiveTest (tcu::TestContext& testCtx, 77 glu::RenderContext& renderCtx, 78 const char* name, 79 const char* desc, 80 const Vec4& scissorArea, 81 const Vec4& renderArea, 82 PrimitiveType type, 83 int primitiveCount); 84 tcu::TestNode* createClearTest (tcu::TestContext& testCtx, 85 glu::RenderContext& renderCtx, 86 const char* name, 87 const char* desc, 88 const Vec4& scissorArea, 89 deUint32 clearMode); 90 91 tcu::TestNode* createFramebufferClearTest (tcu::TestContext& testCtx, 92 glu::RenderContext& renderCtx, 93 const char* name, 94 const char* desc, 95 ClearType clearType); 96 97 tcu::TestNode* createFramebufferBlitTest (tcu::TestContext& testCtx, 98 glu::RenderContext& renderCtx, 99 const char* name, 100 const char* desc, 101 const Vec4& scissorArea); 102 103 } // ScissorTestInternal 104 } // Functional 105 } // gls 106 } // deqp 107 108 #endif // _GLSSCISSORTESTS_HPP 109