int app_main(int argc, char **argv) { app_data_t app_data; ui_cmd_t cmd; BOOL exit = FALSE; UNUSED(argc); UNUSED(argv); app_data.tasks = NULL; app_data.initialized = FALSE; app_data.loaded = FALSE; do{ cmd = get_command(); if (!strcmp("exit", cmd.command)) { exit = TRUE; } else if (!strcmp("load", cmd.command)) { if (!do_load(&cmd, &app_data)) continue; } else if (!strcmp("run", cmd.command)) { if (!do_run(&cmd, &app_data)) continue; } else if (!strcmp("SW", cmd.command)) { if (!do_sw(&cmd, &app_data)) continue; } else if (!strcmp("MSW", cmd.command)) { if (!do_msw(&cmd, &app_data)) continue; } else if (!strcmp("ASW", cmd.command)) { if (!do_asw(&cmd, &app_data)) continue; } else if (!strcmp("switches", cmd.command)) { if (!do_switches(&cmd, &app_data)) continue; } else if (!strcmp("JW", cmd.command)) { if (!do_jw(&cmd, &app_data)) continue; } else if (!strcmp("MJW", cmd.command)) { if (!do_mjw(&cmd, &app_data)) continue; } else if (!strcmp("AJW", cmd.command)) { if (!do_ajw(&cmd, &app_data)) continue; } else if (!strcmp("tasks", cmd.command)) { if (!do_tasks(&cmd, &app_data)) continue; } else { printf("Unknown command %s.\n", cmd.command); } }while (!exit); if (!app_data.initialized) { free_app_data(&app_data); } return 0; }
/*15. inpdb_file */ void do_file(char * fname, char * inpdbfn) { char outfn[128]="\0", pdbhfn[128]="\0", basename[128]="\0"; printf("\n"); /* printf("DEBUG: About to parse fname\n");*/ parsefn(fname,basename); /* printf("DEBUG: Parsed fname\n");*/ if ( inpdb_file(fname,inpdbfn) ) { find_h(); if( asaflg) { /*parsefn(fname, pdbhfn); -> 3.01*/ strcpy(pdbhfn, basename); /* <- 3.01 */ strcat(pdbhfn, "asa"); inasa_file(pdbhfn); } /*parsefn(fname, pdbhfn); -> 3.01*/ strcpy(pdbhfn, basename); /* <- 3.01 */ strcat(pdbhfn, "h\0"); if (pdboutflg) { /* printf("Calling pdbout with %s and %s\n",pdbhfn,fname);*/ pdbout(pdbhfn,fname,0,(short int *)NULL); } strcpy(outfn, hbdn); strcat(outfn, basename); /* <- 3.01 */ /*newparsefn(fname, outfn+strlen(hbdn), 128); /* -> 3.01 */ /*I think this puts the 4 letter code into outfn*/ if (longoutflg) if (nnbflg) strcat(outfn,"nnb"); else strcat(outfn,"hhb"); else if (nnbflg) strcat(outfn,"nb2"); else strcat(outfn,"hb2"); if (debug) printf("About to open output file\n"); ofp = fopen(outfn, "w"); /*ofp output file pointer - external*/ if (!ofp) { printf("^GFailed to open output file %s.\n",outfn); return; } else { printf("Opened output file \"%s\".\n",outfn); find_hb(fname); } #ifdef DOM if (domainflg) find_domains(fname); #endif #ifdef BSM if (bsmoptflg==1) { printf("DEBUG: About to do_msw\n"); do_msw(basename); } #endif if (exchangeflg==2) chkqnh(); if (ofp) /*this used to be (!hbdn[0]) for some strange reason*/ fclose(ofp); /*printf_numhb();*/ /* debugging line */ } }