a155f3262aa051b6b97e8c3ef0caba8304b992a0 max Sat Jul 11 10:13:44 2026 -0700 Comment: simpleFeature qStart/qEnd are only meaningful for alignment tracks They carry query-sequence coordinates for PSL/BAM/chain/snake features and are left 0 for gene models (genePred), where there is no query sequence. Noting this at the field so nobody assumes they are populated everywhere. diff --git src/hg/hgTracks/hgTracks.h src/hg/hgTracks/hgTracks.h index d6325d24634..78db044769a 100644 --- src/hg/hgTracks/hgTracks.h +++ src/hg/hgTracks/hgTracks.h @@ -368,31 +368,32 @@ struct group *next; /* Next group in list. */ char *name; /* Symbolic name. */ char *label; /* User visible name. */ float priority; /* Display order, 0 is on top. */ float defaultPriority; /* original priority before reordering */ struct trackRef *trackList; /* List of tracks. */ boolean defaultIsClosed; /* close the track group by default. */ char *errMessage; /* any error messages that came up during trackDb parsing. */ }; struct simpleFeature /* Minimal feature - just stores position in browser coordinates. */ { struct simpleFeature *next; int start, end; /* Start/end in browser coordinates. */ - int qStart, qEnd; /* query start/end */ + int qStart, qEnd; /* query start/end; only used for alignment tracks + * (PSL, BAM, chain, snake); 0 for gene models (genePred). */ int grayIx; /* Level of gray usually. */ int codonIndex; /* 1-based codon index (ignored if 0) */ char codonAa; /* For a codon, its display amino-acid letter: * AA letter, '*' stop, 'M' start, 'X' error/partial, * 0 if not a codon. Set when grayIx is. */ }; /* Some details of how to draw linked features. */ enum {lfSubXeno = 1}; enum {lfSubSample = 2}; enum {lfWithBarbs = 3}; /* Turn on barbs to show direction based on * strand field */ enum {lfSubChain = 4}; enum {lfNoIntronLines = 5}; /* Draw no lines between exon blocks */