static void pseudoflowPhase1 (void) { Node *strongRoot; int theparam = 0; double thetime; thetime = timer (); while ((strongRoot = getHighestStrongRoot (theparam))) { processRoot (strongRoot); } printf ("c Finished solving parameter %d\nc Flow: %d\nc Elapsed time: %.3f\n", (theparam+1), computeMinCut (), (timer () - thetime)); for (theparam=1; theparam < numParams; ++ theparam) { updateCapacities (theparam); #ifdef PROGRESS printf ("c Finished updating capacities and excesses.\n"); fflush (stdout); #endif while ((strongRoot = getHighestStrongRoot (theparam))) { processRoot (strongRoot); } printf ("c Finished parameter: %d\nc Flow: %d\nc Elapsed time: %.3f\n", (theparam+1), computeMinCut (), (timer () - thetime)); } }
static void gff3ToPsl(char *mapFile, char *inGff3File, char *outPSL) /* gff3ToPsl - convert a GFF3 file to a genePred file. */ { struct hash *chromHash = readSizes(mapFile); struct hash *processed = hashNew(12); struct gff3File *gff3File = loadGff3(inGff3File); FILE *pslF = mustOpen(outPSL, "w"); struct gff3AnnRef *root; for (root = gff3File->roots; root != NULL; root = root->next) { if (!isProcessed(processed, root->ann)) { processRoot(pslF, root->ann, processed, chromHash); if (convertErrCnt >= maxConvertErrs) break; } } carefulClose(&pslF); if (convertErrCnt > 0) errAbort("%d errors converting GFF3 file: %s", convertErrCnt, inGff3File); #if 0 // free memory for leak debugging if 1 gff3FileFree(&gff3File); hashFree(&processed); #endif }