Import dEQP.
[platform/upstream/VK-GL-CTS.git] / framework / egl / egluGLFunctionLoader.cpp
1 /*-------------------------------------------------------------------------
2  * drawElements Quality Program EGL Module
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 glw::FunctionLoader using eglGetProcAddress() and tcu::Library.
22  *//*--------------------------------------------------------------------*/
23
24 #include "egluGLFunctionLoader.hpp"
25 #include "egluHeaderWrapper.hpp"
26
27 namespace eglu
28 {
29
30 GLFunctionLoader::GLFunctionLoader (const tcu::FunctionLibrary* library)
31         : m_library(library)
32 {
33 }
34
35 glw::GenericFuncType GLFunctionLoader::get (const char* name) const
36 {
37         glw::GenericFuncType func = (glw::GenericFuncType)m_library->getFunction(name);
38
39         if (!func)
40                 return (glw::GenericFuncType)eglGetProcAddress(name);
41         else
42                 return func;
43 }
44
45 } // eglu