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;
 }