diff options
| author | Mark Lobodzinski <mark@lunarg.com> | 2018-03-08 14:25:05 -0700 |
|---|---|---|
| committer | Mark Lobodzinski <mark@lunarg.com> | 2018-03-16 10:34:02 -0600 |
| commit | 7ffa65f0e77f4c14fa5c2bed9858d04ce3422269 (patch) | |
| tree | e4a835de8dfc47e0120e9f45b0048b5d8abc22f2 /scripts | |
| parent | a9bef604a7267e7176d11018114b1ddf91c7e216 (diff) | |
| download | usermoji-7ffa65f0e77f4c14fa5c2bed9858d04ce3422269.tar.xz | |
scripts: Remove helper-generator struct_size source
This was unused in this repository.
Change-Id: I3e3375139cf2718e4aff4ee2237bc1d756cd0205
Diffstat (limited to 'scripts')
| -rw-r--r-- | scripts/helper_file_generator.py | 153 |
1 files changed, 0 insertions, 153 deletions
diff --git a/scripts/helper_file_generator.py b/scripts/helper_file_generator.py index 1468b150..8f10a75c 100644 --- a/scripts/helper_file_generator.py +++ b/scripts/helper_file_generator.py @@ -76,8 +76,6 @@ class HelperFileOutputGenerator(OutputGenerator): OutputGenerator.__init__(self, errFile, warnFile, diagFile) # Internal state - accumulators for different inner block text self.enum_output = '' # string built up of enum string routines - self.struct_size_h_output = '' # string built up of struct size header output - self.struct_size_c_output = '' # string built up of struct size source output # Internal state - accumulators for different inner block text self.structNames = [] # List of Vulkan struct typenames self.structTypes = dict() # Map of Vulkan struct typename to required VkStructureType @@ -404,38 +402,6 @@ class HelperFileOutputGenerator(OutputGenerator): enum_string_helper_header += self.DeIndexPhysDevFeatures() return enum_string_helper_header # - # struct_size_header: build function prototypes for header file - def GenerateStructSizeHeader(self): - outstring = '' - outstring += 'size_t get_struct_chain_size(const void* struct_ptr);\n' - outstring += 'size_t get_struct_size(const void* struct_ptr);\n' - for item in self.structMembers: - lower_case_name = item.name.lower() - if item.ifdef_protect != None: - outstring += '#ifdef %s\n' % item.ifdef_protect - outstring += 'size_t vk_size_%s(const %s* struct_ptr);\n' % (item.name.lower(), item.name) - if item.ifdef_protect != None: - outstring += '#endif // %s\n' % item.ifdef_protect - outstring += '#ifdef __cplusplus\n' - outstring += '}\n' - outstring += '#endif' - return outstring - # - # Combine struct size helper header file preamble with body text and return - def GenerateStructSizeHelperHeader(self): - struct_size_helper_header = '\n' - struct_size_helper_header += '#ifdef __cplusplus\n' - struct_size_helper_header += 'extern "C" {\n' - struct_size_helper_header += '#endif\n' - struct_size_helper_header += '\n' - struct_size_helper_header += '#include <stdio.h>\n' - struct_size_helper_header += '#include <stdlib.h>\n' - struct_size_helper_header += '#include <vulkan/vulkan.h>\n' - struct_size_helper_header += '\n' - struct_size_helper_header += '// Function Prototypes\n' - struct_size_helper_header += self.GenerateStructSizeHeader() - return struct_size_helper_header - # # Helper function for declaring a counter variable only once def DeclareCounter(self, string_var, declare_flag): if declare_flag == False: @@ -443,121 +409,6 @@ class HelperFileOutputGenerator(OutputGenerator): declare_flag = True return string_var, declare_flag # - # Build the header of the get_struct_chain_size function - def GenerateChainSizePreamble(self): - preamble = '\nsize_t get_struct_chain_size(const void* struct_ptr) {\n' - preamble += ' // Use VkApplicationInfo as struct until actual type is resolved\n' - preamble += ' VkApplicationInfo* pNext = (VkApplicationInfo*)struct_ptr;\n' - preamble += ' size_t struct_size = 0;\n' - preamble += ' while (pNext) {\n' - preamble += ' switch (pNext->sType) {\n' - return preamble - # - # Build the footer of the get_struct_chain_size function - def GenerateChainSizePostamble(self): - postamble = ' default:\n' - postamble += ' struct_size += 0;\n' - postamble += ' break;' - postamble += ' }\n' - postamble += ' pNext = (VkApplicationInfo*)pNext->pNext;\n' - postamble += ' }\n' - postamble += ' return struct_size;\n' - postamble += '}\n' - return postamble - # - # Build the header of the get_struct_size function - def GenerateStructSizePreamble(self): - preamble = '\nsize_t get_struct_size(const void* struct_ptr) {\n' - preamble += ' switch (((VkApplicationInfo*)struct_ptr)->sType) {\n' - return preamble - # - # Build the footer of the get_struct_size function - def GenerateStructSizePostamble(self): - postamble = ' default:\n' - postamble += ' return(0);\n' - postamble += ' }\n' - postamble += '}' - return postamble - # - # struct_size_helper source -- create bodies of struct size helper functions - def GenerateStructSizeSource(self): - # Construct the bodies of the struct size functions, get_struct_chain_size(), - # and get_struct_size() simultaneously - struct_size_funcs = '' - chain_size = self.GenerateChainSizePreamble() - struct_size = self.GenerateStructSizePreamble() - for item in self.structMembers: - struct_size_funcs += '\n' - lower_case_name = item.name.lower() - if item.ifdef_protect != None: - struct_size_funcs += '#ifdef %s\n' % item.ifdef_protect - struct_size += '#ifdef %s\n' % item.ifdef_protect - chain_size += '#ifdef %s\n' % item.ifdef_protect - if item.name in self.structTypes: - chain_size += ' case %s: {\n' % self.structTypes[item.name].value - chain_size += ' struct_size += vk_size_%s((%s*)pNext);\n' % (item.name.lower(), item.name) - chain_size += ' break;\n' - chain_size += ' }\n' - struct_size += ' case %s: \n' % self.structTypes[item.name].value - struct_size += ' return vk_size_%s((%s*)struct_ptr);\n' % (item.name.lower(), item.name) - struct_size_funcs += 'size_t vk_size_%s(const %s* struct_ptr) { \n' % (item.name.lower(), item.name) - struct_size_funcs += ' size_t struct_size = 0;\n' - struct_size_funcs += ' if (struct_ptr) {\n' - struct_size_funcs += ' struct_size = sizeof(%s);\n' % item.name - counter_declared = False - for member in item.members: - vulkan_type = next((i for i, v in enumerate(self.structMembers) if v[0] == member.type), None) - if member.ispointer == True: - if vulkan_type is not None: - # If this is another Vulkan structure call generated size function - if member.len is not None: - struct_size_funcs, counter_declared = self.DeclareCounter(struct_size_funcs, counter_declared) - struct_size_funcs += ' for (i = 0; i < struct_ptr->%s; i++) {\n' % member.len - struct_size_funcs += ' struct_size += vk_size_%s(&struct_ptr->%s[i]);\n' % (member.type.lower(), member.name) - struct_size_funcs += ' }\n' - else: - struct_size_funcs += ' struct_size += vk_size_%s(struct_ptr->%s);\n' % (member.type.lower(), member.name) - else: - if member.type == 'char': - # Deal with sizes of character strings - if member.len is not None: - struct_size_funcs, counter_declared = self.DeclareCounter(struct_size_funcs, counter_declared) - struct_size_funcs += ' for (i = 0; i < struct_ptr->%s; i++) {\n' % member.len - struct_size_funcs += ' struct_size += (sizeof(char*) + ROUNDUP_TO_4((sizeof(char) * (1 + strlen(struct_ptr->%s[i])))));\n' % (member.name) - struct_size_funcs += ' }\n' - else: - struct_size_funcs += ' struct_size += (struct_ptr->%s != NULL) ? ROUNDUP_TO_4(sizeof(char)*(1+strlen(struct_ptr->%s))) : 0;\n' % (member.name, member.name) - else: - if member.len is not None: - # Avoid using 'sizeof(void)', which generates compile-time warnings/errors - checked_type = member.type - if checked_type == 'void': - checked_type = 'void*' - struct_size_funcs += ' struct_size += (struct_ptr->%s ) * sizeof(%s);\n' % (member.len, checked_type) - struct_size_funcs += ' }\n' - struct_size_funcs += ' return struct_size;\n' - struct_size_funcs += '}\n' - if item.ifdef_protect != None: - struct_size_funcs += '#endif // %s\n' % item.ifdef_protect - struct_size += '#endif // %s\n' % item.ifdef_protect - chain_size += '#endif // %s\n' % item.ifdef_protect - chain_size += self.GenerateChainSizePostamble() - struct_size += self.GenerateStructSizePostamble() - return_value = struct_size_funcs + chain_size + struct_size; - return return_value - # - # Combine struct size helper source file preamble with body text and return - def GenerateStructSizeHelperSource(self): - struct_size_helper_source = '\n' - struct_size_helper_source += '#include "vk_struct_size_helper.h"\n' - struct_size_helper_source += '#include <string.h>\n' - struct_size_helper_source += '#include <assert.h>\n' - struct_size_helper_source += '\n' - struct_size_helper_source += '#define ROUNDUP_TO_4(_len) ((((_len) + 3) >> 2) << 2)\n\n' - struct_size_helper_source += '// Function Definitions\n' - struct_size_helper_source += self.GenerateStructSizeSource() - return struct_size_helper_source - # # Combine safe struct helper header file preamble with body text and return def GenerateSafeStructHelperHeader(self): safe_struct_helper_header = '\n' @@ -1304,10 +1155,6 @@ class HelperFileOutputGenerator(OutputGenerator): def OutputDestFile(self): if self.helper_file_type == 'enum_string_header': return self.GenerateEnumStringHelperHeader() - elif self.helper_file_type == 'struct_size_header': - return self.GenerateStructSizeHelperHeader() - elif self.helper_file_type == 'struct_size_source': - return self.GenerateStructSizeHelperSource() elif self.helper_file_type == 'safe_struct_header': return self.GenerateSafeStructHelperHeader() elif self.helper_file_type == 'safe_struct_source': |
