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 #-------------------------------------------------------------------------
27 from khr_util.format import indentLines, normalizeConstant
34 "EGL_DEFAULT_DISPLAY",
42 def enumValue (enum, typePrefix = ""):
43 if enum.name in TYPED_VALUES:
44 # incoming is EGL_CAST(<type>, <value>)
45 n,v = enum.value.split(",", 1)
46 # output is ((<typePrefix>::<type>)<value>)
47 return "((%s%s)%s" % (typePrefix, n.replace("EGL_CAST(", ""), v)
50 return normalizeConstant(enum.value)
52 def enumDefinition (enum):
53 return "#define %s\t%s" % (enum.name, enumValue(enum, "eglw::"))
56 writeInlFile(os.path.join(EGL_WRAPPER_DIR, "eglwEnums.inl"), indentLines(map(enumDefinition, iface.enums)))