1 # -*- coding: utf-8 -*-
3 #-------------------------------------------------------------------------
4 # drawElements Quality Program utilities
5 # --------------------------------------
7 # Copyright 2015 The Android Open Source Project
9 # Licensed under the Apache License, Version 2.0 (the "License");
10 # you may not use this file except in compliance with the License.
11 # You may obtain a copy of the License at
13 # http://www.apache.org/licenses/LICENSE-2.0
15 # Unless required by applicable law or agreed to in writing, software
16 # distributed under the License is distributed on an "AS IS" BASIS,
17 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18 # See the License for the specific language governing permissions and
19 # limitations under the License.
21 #-------------------------------------------------------------------------
23 from src_util import *
24 from khr_util.gen_str_util import genSetEnumUtilImpls, genQueryEnumUtilImpls
26 QUERY_NUM_OUT_ARGUMENTS = [
32 ("COLOR_WRITEMASK", 4),
33 ("ALIASED_POINT_SIZE_RANGE", 2),
34 ("ALIASED_LINE_WIDTH_RANGE", 2),
35 ("MAX_VIEWPORT_DIMS", 2),
36 ("MAX_COMPUTE_WORK_GROUP_COUNT", 3),
37 ("MAX_COMPUTE_WORK_GROUP_SIZE", 3),
38 ("PRIMITIVE_BOUNDING_BOX_EXT", 8),
42 ("COLOR_WRITEMASK", 4),
46 ("CURRENT_VERTEX_ATTRIB", 4),
50 ("COMPUTE_WORK_GROUP_SIZE", 3),
54 ("TEXTURE_BORDER_COLOR", 4),
58 SET_NUM_IN_ARGUMENTS = [
60 ("TEXTURE_BORDER_COLOR", 4),
65 def addNamePrefix (prefix, groups):
66 return [(groupName, [(prefix + queryName, querySize) for queryName, querySize in groupQueries]) for groupName, groupQueries in groups]
68 def genQueryUtil (iface):
69 queryNumOutArgs = addNamePrefix("GL_", QUERY_NUM_OUT_ARGUMENTS);
70 setNumInArgs = addNamePrefix("GL_", SET_NUM_IN_ARGUMENTS);
72 utilFile = os.path.join(OPENGL_DIR, "gluQueryUtil.inl")
73 writeInlFile(utilFile, genQueryEnumUtilImpls(iface, queryNumOutArgs))
75 utilFile = os.path.join(OPENGL_DIR, "gluCallLogUtil.inl")
76 writeInlFile(utilFile, genSetEnumUtilImpls(iface, setNumInArgs))
78 if __name__ == "__main__":
79 genQueryUtil(getHybridInterface())