70d4208efa11f262ba5591198214c9ccdc6b54ae angie Mon Aug 22 22:24:05 2011 -0700 Feature #3707 (VCF+tabix support in hgTables):Basic hgTables support for VCF, modeled after BAM code. Tested all fields, selected fields, bed output; filter, intersection, schema on 3 flavors of vcfTabix: ftp://ftp-trace.ncbi.nih.gov/1000genomes/ftp/release/20101123/interim_phase1_release/ALL.chr17.phase1.projectConsensus.genotypes.vcf.gz ftp://ftp-trace.ncbi.nlm.nih.gov/1000genomes/ftp/release/20100804/AFR.dindel.20100804.sites.vcf.gz ftp://ftp.ncbi.nih.gov/snp/organisms/human_9606/VCF/v4.0/ByChromosomeNoGeno/00-All.vcf.gz diff --git src/hg/hgTables/bam.c src/hg/hgTables/bam.c index 1d0520e..8605887 100644 --- src/hg/hgTables/bam.c +++ src/hg/hgTables/bam.c @@ -39,52 +39,34 @@ } else return trackIsType(database, table, curTrack, "bam", ctLookupName); } char *bamFileName(char *table, struct sqlConnection *conn, char *seqName) /* Return file name associated with BAM. This handles differences whether it's * a custom or built-in track. Do a freeMem on returned string when done. */ { char *fileName = bigFileNameFromCtOrHub(table, conn); if (fileName == NULL) fileName = bamFileNameFromTable(conn, table, seqName); return fileName; } -char *bamAsDef = -"table samAlignment\n" -"\"The fields of a SAM short read alignment, the text version of BAM.\"\n" -" (\n" -" string qName; \"Query template name - name of a read\"\n" -" ushort flag; \"Flags. 0x10 set for reverse complement. See SAM docs for others.\"\n" -" string rName; \"Reference sequence name (often a chromosome)\"\n" -" uint pos; \"1 based position\"\n" -" ubyte mapQ; \"Mapping quality 0-255, 255 is best\"\n" -" string cigar; \"CIGAR encoded alignment string.\"\n" -" string rNext; \"Ref sequence for next (mate) read. '=' if same as rName, '*' if no mate\"\n" -" int pNext; \"Position (1-based) of next (mate) sequence. May be -1 or 0 if no mate\"\n" -" int tLen; \"Size of DNA template for mated pairs. -size for one of mate pairs\"\n" -" string seq; \"Query template sequence\"\n" -" string qual; \"ASCII of Phred-scaled base QUALity+33. Just '*' if no quality scores\"\n" -" string tagTypeVals; \"Tab-delimited list of tag:type:value optional extra fields\"\n" -" )\n"; - struct asObject *bamAsObj() /* Return asObject describing fields of BAM */ { -return asParseText(bamAsDef); +return asParseText(samAlignmentAutoSqlString); } struct hTableInfo *bamToHti(char *table) /* Get standard fields of BAM into hti structure. */ { struct hTableInfo *hti; AllocVar(hti); hti->rootName = cloneString(table); hti->isPos= TRUE; strcpy(hti->chromField, "rName"); strcpy(hti->startField, "pos"); strcpy(hti->nameField, "qName"); hti->type = cloneString("bam"); return hti; }