1e5c31af7Sopenharmony_ci#ifndef _VKTSHADERBUILTINPRECISIONTESTS_HPP
2e5c31af7Sopenharmony_ci#define _VKTSHADERBUILTINPRECISIONTESTS_HPP
3e5c31af7Sopenharmony_ci/*------------------------------------------------------------------------
4e5c31af7Sopenharmony_ci * Vulkan Conformance Tests
5e5c31af7Sopenharmony_ci * ------------------------
6e5c31af7Sopenharmony_ci *
7e5c31af7Sopenharmony_ci * Copyright (c) 2015 The Khronos Group Inc.
8e5c31af7Sopenharmony_ci * Copyright (c) 2015 Samsung Electronics Co., Ltd.
9e5c31af7Sopenharmony_ci *
10e5c31af7Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License");
11e5c31af7Sopenharmony_ci * you may not use this file except in compliance with the License.
12e5c31af7Sopenharmony_ci * You may obtain a copy of the License at
13e5c31af7Sopenharmony_ci *
14e5c31af7Sopenharmony_ci *      http://www.apache.org/licenses/LICENSE-2.0
15e5c31af7Sopenharmony_ci *
16e5c31af7Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software
17e5c31af7Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS,
18e5c31af7Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19e5c31af7Sopenharmony_ci * See the License for the specific language governing permissions and
20e5c31af7Sopenharmony_ci * limitations under the License.
21e5c31af7Sopenharmony_ci *
22e5c31af7Sopenharmony_ci *//*!
23e5c31af7Sopenharmony_ci * \file
24e5c31af7Sopenharmony_ci * \brief Precision and range tests for builtins and types.
25e5c31af7Sopenharmony_ci *
26e5c31af7Sopenharmony_ci *//*--------------------------------------------------------------------*/
27e5c31af7Sopenharmony_ci
28e5c31af7Sopenharmony_ci#include "tcuDefs.hpp"
29e5c31af7Sopenharmony_ci#include "vktTestCase.hpp"
30e5c31af7Sopenharmony_ci
31e5c31af7Sopenharmony_cinamespace vkt
32e5c31af7Sopenharmony_ci{
33e5c31af7Sopenharmony_cinamespace shaderexecutor
34e5c31af7Sopenharmony_ci{
35e5c31af7Sopenharmony_ci
36e5c31af7Sopenharmony_ciclass BuiltinPrecisionTests : public tcu::TestCaseGroup
37e5c31af7Sopenharmony_ci{
38e5c31af7Sopenharmony_cipublic:
39e5c31af7Sopenharmony_ci									BuiltinPrecisionTests				(tcu::TestContext& testCtx);
40e5c31af7Sopenharmony_ci	virtual							~BuiltinPrecisionTests				(void);
41e5c31af7Sopenharmony_ci
42e5c31af7Sopenharmony_ci	virtual void					init								(void);
43e5c31af7Sopenharmony_ci
44e5c31af7Sopenharmony_ci									BuiltinPrecisionTests				(const BuiltinPrecisionTests&) = delete;
45e5c31af7Sopenharmony_ci	BuiltinPrecisionTests&			operator=							(const BuiltinPrecisionTests&) = delete;
46e5c31af7Sopenharmony_ci};
47e5c31af7Sopenharmony_ci
48e5c31af7Sopenharmony_ciclass BuiltinPrecision16BitTests : public tcu::TestCaseGroup
49e5c31af7Sopenharmony_ci{
50e5c31af7Sopenharmony_cipublic:
51e5c31af7Sopenharmony_ci									BuiltinPrecision16BitTests			(tcu::TestContext& testCtx);
52e5c31af7Sopenharmony_ci	virtual							~BuiltinPrecision16BitTests			(void);
53e5c31af7Sopenharmony_ci
54e5c31af7Sopenharmony_ci	virtual void					init								(void);
55e5c31af7Sopenharmony_ci
56e5c31af7Sopenharmony_ci									BuiltinPrecision16BitTests			(const BuiltinPrecision16BitTests&) = delete;
57e5c31af7Sopenharmony_ci	BuiltinPrecision16BitTests&		operator=							(const BuiltinPrecision16BitTests&) = delete;
58e5c31af7Sopenharmony_ci};
59e5c31af7Sopenharmony_ci
60e5c31af7Sopenharmony_ciclass BuiltinPrecision16Storage32BitTests : public tcu::TestCaseGroup
61e5c31af7Sopenharmony_ci{
62e5c31af7Sopenharmony_cipublic:
63e5c31af7Sopenharmony_ci												BuiltinPrecision16Storage32BitTests	(tcu::TestContext& testCtx);
64e5c31af7Sopenharmony_ci	virtual										~BuiltinPrecision16Storage32BitTests	(void);
65e5c31af7Sopenharmony_ci
66e5c31af7Sopenharmony_ci	virtual void								init(void);
67e5c31af7Sopenharmony_ci
68e5c31af7Sopenharmony_ci												BuiltinPrecision16Storage32BitTests	(const BuiltinPrecision16Storage32BitTests&) = delete;
69e5c31af7Sopenharmony_ci	BuiltinPrecision16Storage32BitTests&		operator=							(const BuiltinPrecision16Storage32BitTests&) = delete;
70e5c31af7Sopenharmony_ci};
71e5c31af7Sopenharmony_ci
72e5c31af7Sopenharmony_ciclass BuiltinPrecisionDoubleTests : public tcu::TestCaseGroup
73e5c31af7Sopenharmony_ci{
74e5c31af7Sopenharmony_cipublic:
75e5c31af7Sopenharmony_ci									BuiltinPrecisionDoubleTests			(tcu::TestContext& testCtx);
76e5c31af7Sopenharmony_ci	virtual							~BuiltinPrecisionDoubleTests		(void);
77e5c31af7Sopenharmony_ci
78e5c31af7Sopenharmony_ci	virtual void					init								(void);
79e5c31af7Sopenharmony_ci
80e5c31af7Sopenharmony_ci									BuiltinPrecisionDoubleTests			(const BuiltinPrecisionDoubleTests&) = delete;
81e5c31af7Sopenharmony_ci	BuiltinPrecisionDoubleTests&	operator=							(const BuiltinPrecisionDoubleTests&) = delete;
82e5c31af7Sopenharmony_ci};
83e5c31af7Sopenharmony_ci
84e5c31af7Sopenharmony_ci} // shaderexecutor
85e5c31af7Sopenharmony_ci} // vkt
86e5c31af7Sopenharmony_ci
87e5c31af7Sopenharmony_ci#endif // _VKTSHADERBUILTINPRECISIONTESTS_HPP
88