9171b3f661fe87a3bc4f3e02c0593699510cc152 markd Wed Jun 24 05:49:12 2015 -0700 add option to gtfToGenePred to include gene and transcript version number that now part of their GTF files in the gene/transcripts ids (no redmine) diff --git src/lib/gff.c src/lib/gff.c index 6058e01..5cae55c 100644 --- src/lib/gff.c +++ src/lib/gff.c @@ -222,30 +222,36 @@ { if (!isdigit(val[0])) errAbort("Expecting number after exon_number, got %s line %d of %s", val, lineIx, fileName); gl->exonNumber = atoi(val); } else if (sameString("intron_id", type)) gl->intronId = gffFileGetStr(gff, val); else if (sameString("intron_status", type)) gl->intronStatus = gffFileGetStr(gff, val); else if (sameString("protein_id", type)) gl->proteinId = gffFileGetStr(gff, val); else if (sameString("gene_name", type)) gl->geneName = gffFileGetStr(gff, val); else if (sameString("transcript_name", type)) gl->transcriptName = gffFileGetStr(gff, val); + else if (sameString("gene_version", type)) + gl->geneVersion = gffFileGetStr(gff, val); + else if (sameString("transcript_version", type)) + gl->transcriptVersion = gffFileGetStr(gff, val); + else if (sameString("protein_version", type)) + gl->proteinVersion = gffFileGetStr(gff, val); } } void gffFileAddRow(struct gffFile *gff, int baseOffset, char *words[], int wordCount, char *fileName, int lineIx) /* Process one row of GFF file (a non-comment line parsed by tabs normally). */ { struct hashEl *hel; struct gffLine *gl; if (wordCount < 8) gffSyntaxError(fileName, lineIx, "Word count less than 8 "); AllocVar(gl); if ((hel = hashLookup(gff->seqHash, words[0])) == NULL)