def genStruct(self, typeinfo, typename, alias):
        """Method override."""
        BaseGenerator.genStruct(self, typeinfo, typename, alias)

        if not alias:
            self.check_struct_member_handles(typename,
                                             self.structs_with_handles)
Ejemplo n.º 2
0
    def genStruct(self, typeinfo, typename, alias):
        """Method override."""
        BaseGenerator.genStruct(self, typeinfo, typename, alias)

        if not alias:
            self.check_struct_member_handles(typename,
                                             self.structs_with_handles,
                                             self.structs_with_handle_ptrs)

            stype = self.make_structure_type_enum(typeinfo, typename)
            if stype:
                self.stype_values[typename] = stype
Ejemplo n.º 3
0
    def genStruct(self, typeinfo, typename, alias):
        """Method override."""
        BaseGenerator.genStruct(self, typeinfo, typename, alias)

        if not alias:
            self.check_struct_member_handles(typename,
                                             self.structs_with_handles)

            # Track this struct if it can be present in a pNext chain.
            parent_structs = typeinfo.elem.get('structextends')
            if parent_structs:
                stype = self.make_structure_type_enum(typeinfo, typename)
                if stype:
                    self.pnext_structs[typename] = stype
Ejemplo n.º 4
0
    def genStruct(self, typeinfo, typename, alias):
        """Method override."""
        BaseGenerator.genStruct(self, typeinfo, typename, alias)

        if not alias:
            # Track this struct if it can be present in a pNext chain for features
            parent_structs = typeinfo.elem.get('structextends')
            if parent_structs:
                if "VkPhysicalDeviceFeatures2" in parent_structs:
                    # Build list of all boolean members which are the feature bits
                    members = []
                    for member in self.feature_struct_members[typename]:
                        if member.base_type == "VkBool32":
                            members.append(member.name)
                    self.physical_device_features2_stypes[typename] = {
                        'sType':
                        self.make_structure_type_enum(typeinfo, typename),
                        'members': members
                    }

            #  Get all core 1.0 features
            if typename == "VkPhysicalDeviceFeatures":
                for member in self.feature_struct_members[typename]:
                    self.physical_device_features.append(member.name)