• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*-------------------------------------------------------------------------
2  * drawElements Quality Program Tester Core
3  * ----------------------------------------
4  *
5  * Copyright 2014 The Android Open Source Project
6  *
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  *
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  *
19  *//*!
20  * \file
21  * \brief EGL common defines and types
22  *//*--------------------------------------------------------------------*/
23 
24 #include "egluStaticESLibrary.hpp"
25 #include "tcuFunctionLibrary.hpp"
26 
27 #define STATIC_LIB_NONE	0
28 #define STATIC_LIB_ES20	1
29 #define STATIC_LIB_ES30	2
30 
31 #if defined(DEQP_SUPPORT_GLES3) && !defined(DEQP_GLES3_RUNTIME_LOAD)
32 #	if (DE_OS == DE_OS_IOS)
33 #		include <OpenGLES/ES3/gl.h>
34 #	else
35 #		include <GLES3/gl3.h>
36 #	endif
37 #	define STATIC_LIB STATIC_LIB_ES30
38 #elif defined(DEQP_SUPPORT_GLES2) && !defined(DEQP_GLES2_RUNTIME_LOAD)
39 #	if (DE_OS == DE_OS_IOS)
40 #		include <OpenGLES/ES2/gl.h>
41 #	else
42 #		include <GLES2/gl2.h>
43 #	endif
44 #	define STATIC_LIB STATIC_LIB_ES20
45 #else
46 #	define STATIC_LIB STATIC_LIB_NONE
47 #endif
48 
49 // \todo [2014-03-14 pyry] ES3.1 support
50 
51 namespace eglu
52 {
53 
createStaticESLibrary(void)54 tcu::FunctionLibrary* createStaticESLibrary (void)
55 {
56 #if (STATIC_LIB == STATIC_LIB_NONE)
57 	return new tcu::StaticFunctionLibrary(DE_NULL, 0);
58 #else
59 	static const tcu::StaticFunctionLibrary::Entry s_functions[] =
60 	{
61 #if (STATIC_LIB == STATIC_LIB_ES30)
62 #	include "egluStaticES30Library.inl"
63 #elif (STATIC_LIB == STATIC_LIB_ES20)
64 #	include "egluStaticES20Library.inl"
65 #else
66 #	error "Unknown STATIC_LIB value"
67 #endif
68 	};
69 
70 	return new tcu::StaticFunctionLibrary(&s_functions[0], DE_LENGTH_OF_ARRAY(s_functions));
71 #endif
72 }
73 
74 } // eglu
75