aboutsummaryrefslogtreecommitdiff
path: root/scripts/dispatch_table_helper_generator.py
diff options
context:
space:
mode:
authorMark Lobodzinski <mark@lunarg.com>2017-10-24 13:41:18 -0600
committerMike Schuchardt <mikes@lunarg.com>2018-03-09 13:54:31 -0700
commitf895bcc8a6896c5aa278c6549dab241e4eb649ef (patch)
tree05f70594c865463bd246d08f12496608b8dc418b /scripts/dispatch_table_helper_generator.py
parent1966df8f8754101aa27f7dab90080bffb69f2398 (diff)
downloadusermoji-f895bcc8a6896c5aa278c6549dab241e4eb649ef.tar.xz
scripts: Update generators for 1.1
Diffstat (limited to 'scripts/dispatch_table_helper_generator.py')
-rw-r--r--scripts/dispatch_table_helper_generator.py34
1 files changed, 12 insertions, 22 deletions
diff --git a/scripts/dispatch_table_helper_generator.py b/scripts/dispatch_table_helper_generator.py
index 1801d780..ad8e2b53 100644
--- a/scripts/dispatch_table_helper_generator.py
+++ b/scripts/dispatch_table_helper_generator.py
@@ -23,6 +23,7 @@ import os,re,sys
import xml.etree.ElementTree as etree
from generator import *
from collections import namedtuple
+from common_codegen import *
#
# DispatchTableHelperOutputGeneratorOptions - subclass of GeneratorOptions.
@@ -37,31 +38,24 @@ class DispatchTableHelperOutputGeneratorOptions(GeneratorOptions):
defaultExtensions = None,
addExtensions = None,
removeExtensions = None,
+ emitExtensions = None,
sortProcedure = regSortFeatures,
prefixText = "",
genFuncPointers = True,
- protectFile = True,
- protectFeature = True,
- protectProto = None,
- protectProtoStr = None,
apicall = '',
apientry = '',
apientryp = '',
- alignFuncParam = 0):
+ alignFuncParam = 0,
+ expandEnumerants = True):
GeneratorOptions.__init__(self, filename, directory, apiname, profile,
versions, emitversions, defaultExtensions,
- addExtensions, removeExtensions, sortProcedure)
+ addExtensions, removeExtensions, emitExtensions, sortProcedure)
self.prefixText = prefixText
self.genFuncPointers = genFuncPointers
self.prefixText = None
- self.protectFile = protectFile
- self.protectFeature = protectFeature
- self.protectProto = protectProto
- self.protectProtoStr = protectProtoStr
self.apicall = apicall
self.apientry = apientry
self.apientryp = apientryp
- self.alignFuncParam = alignFuncParam
#
# DispatchTableHelperOutputGenerator - subclass of OutputGenerator.
# Generates dispatch table helper header files for LVL
@@ -79,14 +73,7 @@ class DispatchTableHelperOutputGenerator(OutputGenerator):
# Called once at the beginning of each run
def beginFile(self, genOpts):
OutputGenerator.beginFile(self, genOpts)
- # Protect against multiple inclusions
- self.protect_header = False
- if (genOpts.protectFile and genOpts.filename):
- self.protect_header = True
- headerSym = '__' + re.sub('\.h', '_h_', os.path.basename(genOpts.filename))
- write('#ifndef', headerSym, file=self.outFile)
- write('#define', headerSym, '1', file=self.outFile)
- self.newline()
+ write("#pragma once", file=self.outFile)
# User-supplied prefix text, if any (list of strings)
if (genOpts.prefixText):
for s in genOpts.prefixText:
@@ -138,12 +125,15 @@ class DispatchTableHelperOutputGenerator(OutputGenerator):
write("\n", file=self.outFile)
write(instance_table, file=self.outFile);
- if self.protect_header:
- self.newline()
- write('#endif', file=self.outFile)
# Finish processing in superclass
OutputGenerator.endFile(self)
#
+ # Processing at beginning of each feature or extension
+ def beginFeature(self, interface, emit):
+ OutputGenerator.beginFeature(self, interface, emit)
+ self.featureExtraProtect = GetFeatureProtect(interface)
+
+ #
# Process commands, adding to appropriate dispatch tables
def genCmd(self, cmdinfo, name):
OutputGenerator.genCmd(self, cmdinfo, name)