1 #ifndef _VKTSHADERBUILTINPRECISIONTESTS_HPP
2 #define _VKTSHADERBUILTINPRECISIONTESTS_HPP
3 /*------------------------------------------------------------------------
4  * Vulkan Conformance Tests
5  * ------------------------
6  *
7  * Copyright (c) 2015 The Khronos Group Inc.
8  * Copyright (c) 2015 Samsung Electronics Co., Ltd.
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 Precision and range tests for builtins and types.
25  *
26  *//*--------------------------------------------------------------------*/
27 
28 #include "tcuDefs.hpp"
29 #include "vktTestCase.hpp"
30 
31 namespace vkt
32 {
33 namespace shaderexecutor
34 {
35 
36 class BuiltinPrecisionTests : public tcu::TestCaseGroup
37 {
38 public:
39     BuiltinPrecisionTests(tcu::TestContext &testCtx);
40     virtual ~BuiltinPrecisionTests(void);
41 
42     virtual void init(void);
43 
44     BuiltinPrecisionTests(const BuiltinPrecisionTests &)            = delete;
45     BuiltinPrecisionTests &operator=(const BuiltinPrecisionTests &) = delete;
46 };
47 
48 class BuiltinPrecision16BitTests : public tcu::TestCaseGroup
49 {
50 public:
51     BuiltinPrecision16BitTests(tcu::TestContext &testCtx);
52     virtual ~BuiltinPrecision16BitTests(void);
53 
54     virtual void init(void);
55 
56     BuiltinPrecision16BitTests(const BuiltinPrecision16BitTests &)            = delete;
57     BuiltinPrecision16BitTests &operator=(const BuiltinPrecision16BitTests &) = delete;
58 };
59 
60 class BuiltinPrecision16Storage32BitTests : public tcu::TestCaseGroup
61 {
62 public:
63     BuiltinPrecision16Storage32BitTests(tcu::TestContext &testCtx);
64     virtual ~BuiltinPrecision16Storage32BitTests(void);
65 
66     virtual void init(void);
67 
68     BuiltinPrecision16Storage32BitTests(const BuiltinPrecision16Storage32BitTests &)            = delete;
69     BuiltinPrecision16Storage32BitTests &operator=(const BuiltinPrecision16Storage32BitTests &) = delete;
70 };
71 
72 class BuiltinPrecisionDoubleTests : public tcu::TestCaseGroup
73 {
74 public:
75     BuiltinPrecisionDoubleTests(tcu::TestContext &testCtx);
76     virtual ~BuiltinPrecisionDoubleTests(void);
77 
78     virtual void init(void);
79 
80     BuiltinPrecisionDoubleTests(const BuiltinPrecisionDoubleTests &)            = delete;
81     BuiltinPrecisionDoubleTests &operator=(const BuiltinPrecisionDoubleTests &) = delete;
82 };
83 
84 } // namespace shaderexecutor
85 } // namespace vkt
86 
87 #endif // _VKTSHADERBUILTINPRECISIONTESTS_HPP
88