void emit_xml() { FILE *in; int c; char **p, **models, *xml_data_filename = (char *) calloc((strlen(process_table_filename) + strlen(".xml") + 1), sizeof(char)); strcpy(xml_data_filename, process_table_filename); strcat(xml_data_filename, ".xml"); printf("Content-type: text/xml; charset=UTF-8\r\n\r\n"); printf("<peos>\n"); printf("<models>\n"); if ((models = peos_list_models())) { for (p = models; *p; p++) { printf("<model>%s</model>\n", *p); } } printf("</models>\n"); if ((in = fopen(xml_data_filename, "r"))) { while ((c = getc(in)) != EOF) { putchar(c); } fclose(in); } else { printf("<process_table/>\r\n"); } printf("</peos>\n"); }
void list_models() { int i; char **result = (char **) peos_list_models(); for (i = 0; result && result[i]; i++) { printf("\t%s\n", result[i]); } }