xref: /aosp_15_r20/external/deqp/scripts/opengl/gen_func_ptrs.py (revision 35238bce31c2a825756842865a792f8cf7f89930)
1*35238bceSAndroid Build Coastguard Worker# -*- coding: utf-8 -*-
2*35238bceSAndroid Build Coastguard Worker
3*35238bceSAndroid Build Coastguard Worker#-------------------------------------------------------------------------
4*35238bceSAndroid Build Coastguard Worker# drawElements Quality Program utilities
5*35238bceSAndroid Build Coastguard Worker# --------------------------------------
6*35238bceSAndroid Build Coastguard Worker#
7*35238bceSAndroid Build Coastguard Worker# Copyright 2015 The Android Open Source Project
8*35238bceSAndroid Build Coastguard Worker#
9*35238bceSAndroid Build Coastguard Worker# Licensed under the Apache License, Version 2.0 (the "License");
10*35238bceSAndroid Build Coastguard Worker# you may not use this file except in compliance with the License.
11*35238bceSAndroid Build Coastguard Worker# You may obtain a copy of the License at
12*35238bceSAndroid Build Coastguard Worker#
13*35238bceSAndroid Build Coastguard Worker#      http://www.apache.org/licenses/LICENSE-2.0
14*35238bceSAndroid Build Coastguard Worker#
15*35238bceSAndroid Build Coastguard Worker# Unless required by applicable law or agreed to in writing, software
16*35238bceSAndroid Build Coastguard Worker# distributed under the License is distributed on an "AS IS" BASIS,
17*35238bceSAndroid Build Coastguard Worker# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18*35238bceSAndroid Build Coastguard Worker# See the License for the specific language governing permissions and
19*35238bceSAndroid Build Coastguard Worker# limitations under the License.
20*35238bceSAndroid Build Coastguard Worker#
21*35238bceSAndroid Build Coastguard Worker#-------------------------------------------------------------------------
22*35238bceSAndroid Build Coastguard Worker
23*35238bceSAndroid Build Coastguard Workerfrom src_util import *
24*35238bceSAndroid Build Coastguard Worker
25*35238bceSAndroid Build Coastguard Workerdef commandTypedefDecl (command):
26*35238bceSAndroid Build Coastguard Worker    return "typedef GLW_APICALL %s\t(GLW_APIENTRY* %s)\t(%s);" % (
27*35238bceSAndroid Build Coastguard Worker        command.type,
28*35238bceSAndroid Build Coastguard Worker        getFunctionTypeName(command.name),
29*35238bceSAndroid Build Coastguard Worker        commandParams(command))
30*35238bceSAndroid Build Coastguard Worker
31*35238bceSAndroid Build Coastguard Workerdef commandMemberDecl (command):
32*35238bceSAndroid Build Coastguard Worker    return "%s\t%s;" % (getFunctionTypeName(command.name),
33*35238bceSAndroid Build Coastguard Worker                        getFunctionMemberName(command.name))
34*35238bceSAndroid Build Coastguard Worker
35*35238bceSAndroid Build Coastguard Workerdef genFunctionPointers (iface):
36*35238bceSAndroid Build Coastguard Worker    genCommandList(iface, commandTypedefDecl, OPENGL_INC_DIR, "glwFunctionTypes.inl", True)
37*35238bceSAndroid Build Coastguard Worker    genCommandList(iface, commandMemberDecl, OPENGL_INC_DIR, "glwFunctions.inl", True)
38*35238bceSAndroid Build Coastguard Worker
39*35238bceSAndroid Build Coastguard Workerif __name__ == "__main__":
40*35238bceSAndroid Build Coastguard Worker    genFunctionPointers(getHybridInterface())
41