public static void BuildComplexTypeDefinitionsAndHeaders_FillInner(CodeProcessor cs, UPnPService service, UPnPComplexType.ContentData[] Items) { string varType = ""; foreach (UPnPComplexType.ContentData cd in Items) { switch (cd.TypeNS) { case "http://www.w3.org/2001/XMLSchema": // XSD Simple Types switch (cd.Type) { case "unsignedByte": varType = "unsigned byte"; break; case "byte": varType = "byte"; break; case "unsignedInt": varType = "unsigned int"; break; case "unsignedShort": varType = "unsigned short"; break; case "unsignedLong": varType = "unsigned long"; break; case "boolean": case "int": case "integer": case "positiveInteger": case "negativeInteger": case "nonNegativeInteger": case "nonPositiveInteger": varType = "int"; break; case "long": varType = "long"; break; case "short": varType = "short"; break; case "decimal": case "float": varType = "single"; break; case "double": varType = "double"; break; default: varType = "char*"; break; } if (varType != "char*" && cd.MinOccurs == "0") { varType = varType + "*"; } break; default: // User Defined Types UPnPComplexType temp = service.GetComplexType(cd.TypeNS, cd.Type); if (temp != null) { varType = "struct " + cd.Type + "*"; } else { // Unknown type varType = "char*"; } break; } if (varType != "") { cs.Append(" " + varType + " " + cd.Name + ";" + cl); } } }